定制 ceytek-labs/openai 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ceytek-labs/openai

Composer 安装命令:

composer require ceytek-labs/openai

包简介

A lightweight library for seamless integration with the OpenAI API in PHP.

README 文档

README

OpenAI - ChatGPT API Library

Total Downloads Latest Version Size License

OpenAI - ChatGPT API Library

OpenAI - ChatGPT API Library is a lightweight and extensible library designed to simplify your interaction with OpenAI APIs in PHP. With this library, you can create speech, transcriptions, chat completions, and more.

Disclaimer: This package is not an official product of OpenAI. The developers accept no responsibility for any issues, discrepancies, or damages that may arise from its use.

Requirements

  • PHP 8.1 or higher

Installation

You can add this package to your project via Composer:

composer require ceytek-labs/openai

Services

Audio Processing

This function provides easy integration with OpenAI’s TTS and transcription services.

Example Usage

The following example demonstrates how to update data in a Audio Processing document:

⬆ Back to services

Audio Processing: Create Speech

This feature allows you to convert text to speech using a specified TTS model and voice.

use CeytekLabs\OpenAI\OpenAI;
use CeytekLabs\OpenAI\Enums\TTSModel;
use CeytekLabs\OpenAI\Enums\Voice;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->audio()
        ->createSpeech()
        ->setModel(TTSModel::TTS_1)
        ->setInput('The quick brown fox jumped over the lazy dog.')
        ->setVoice(Voice::Shimmer)
        ->ask();

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

⬆ Back to services

Audio Processing: Create Transcription

This function transcribes audio files into text, accepting various audio formats.

use CeytekLabs\OpenAI\OpenAI;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->audio()
        ->createTranscription()
        ->setFile(__DIR__.'/speeches/speech1.mp3')
        ->ask();

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

⬆ Back to services

Chat Completion

Chat completion features provide flexible options for text and image-based conversations.

Example Usage

The following example demonstrates how to update data in a Chat Completion document:

⬆ Back to services

Chat Completion: Text Completion

Generates a text-based response based on a given prompt.

use CeytekLabs\OpenAI\OpenAI;
use CeytekLabs\OpenAI\Enums\Model;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->chat()
        ->createCompletion()
        ->setModel(Model::GPT_3_5_TURBO_0125)
        ->setPrompt('give your answer as json and keep it simple')
        ->ask('What is your name');

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

⬆ Back to services

Chat Completion: Image Recognition

This feature enables the library to analyze and interpret images.

use CeytekLabs\OpenAI\OpenAI;
use CeytekLabs\OpenAI\Enums\Model;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->chat()
        ->createImageCompletion()
        ->setModel(Model::GPT_4_TURBO)
        ->ask('What is in this image', 'https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg');

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

⬆ Back to services

Model Management

Easily manage models to get information about available or specific models.

Example Usage

The following example demonstrates how to update data in a Model Management document:

⬆ Back to services

Model Management: Available Models List

Retrieve a list of all available models.

use CeytekLabs\OpenAI\OpenAI;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->model()
        ->availableList()
        ->ask();

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

⬆ Back to services

Model Management: Retrieve Model Information

Get details about a specific model.

use CeytekLabs\OpenAI\OpenAI;
use CeytekLabs\OpenAI\Enums\Model;

try {
    $openai = OpenAI::make('<your-key-here>')
        ->model()
        ->retrieve()
        ->ask(Model::GPT_4O_MINI);

    print_r($openai->getResponse());
} catch (\Exception $exception) {
    echo $exception->getMessage();
}

Contributing

Feel free to submit a pull request or report an issue. Any contributions and feedback are highly appreciated!

License

This project is licensed under the MIT License.

ceytek-labs/openai 适用场景与选型建议

ceytek-labs/openai 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 6 次下载、GitHub Stars 达 1, 最近一次更新时间为 2024 年 10 月 22 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「php」 「api」 「Transcription」 「ai」 「image recognition」 「text to speech」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 ceytek-labs/openai 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 ceytek-labs/openai 我们能提供哪些服务?
定制开发 / 二次开发

基于 ceytek-labs/openai 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 6
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 14
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-10-22