项目介绍: Tectalic OpenAI REST API Client
简介
Tectalic OpenAI REST API Client 是一个供 PHP 应用程序与 OpenAI API 交互的工具包。通过它,开发者可以更加便捷地使用诸如 ChatGPT、GPT-4、GPT-3.5、GPT-3、Codex、DALL·E、Whisper 以及其他一系列强大模型。这套包包含了全面的类型化数据传输对象(DTOs)支持,使得请求和响应的管理变得更加规范,同时提供了 IDE 的自动补全功能。
虽然这个包并不是官方的产品,且与 OpenAI 没有任何商业关系,但它在简化与 OpenAI API 的互动方面提供了极大的便利。
需要注意的是,目前该软件包已不再维护和支持。
功能示例
项目的主要任务是通过简单的 PHP 代码示例,让用户体验到利用 OpenAI API 创建对话、生成图像、代码补全等功能的便利。
聊天生成(ChatGPT)
通过调用 GPT-4 或 GPT-3.5,用户可以快速创建一个聊天生成模型。这使得机器人可以模仿人类对话,例如在用户询问某项技术决策是否合理时,给出解释性的回答。
$openaiClient = \Tectalic\OpenAi\Manager::build(
new \GuzzleHttp\Client(),
new \Tectalic\OpenAi\Authentication(getenv('OPENAI_API_KEY'))
);
$response = $openaiClient->chatCompletions()->create(
new \Tectalic\OpenAi\Models\ChatCompletions\CreateRequest([
'model' => 'gpt-4',
'messages' => [
['role' => 'user', 'content' => 'Will using a well designed and supported third party package save time?'],
],
])
)->toModel();
echo $response->choices[0]->message->content;
图像生成(DALL·E)
通过输入描述性文本,项目可以生成对应的图像,极大地方便了用户将文字转化为视觉内容的需求。
$response = $openaiClient->imagesGenerations()->create(
new \Tectalic\OpenAi\Models\ImagesGenerations\CreateRequest([
'prompt' => 'A cute baby sea otter wearing a hat',
'size' => '256x256',
'n' => 5
])
)->toModel();
foreach ($response->data as $item) {
var_dump($item->url);
}
语音转文字(Whisper)
通过 Whisper 模型,用户可以将音频文件中的内容转换为文本。支持多种语言的转换,极大地方便了音频信息的处理。
$response = $openaiClient->audioTranscriptions()->create(
new \Tectalic\OpenAi\Models\AudioTranscriptions\CreateRequest([
'file' => '/full/path/to/audio/file.mp3',
'model' => 'whisper-1',
])
)->toModel();
echo $response->text;
安装和使用
要使用该工具包,首先需要在项目中安装它:
composer require tectalic/openai
安装完成后,可以通过 PHP 代码来加载并使用各种 API 接口。特别需要注意的是,使用过程中须配置好认证信息,比如设置 OPENAI_API_KEY
环境变量,以通过身份验证。
测试
为了保证项目的可靠性,工具包中包含了多种自动化测试,包括单元测试和集成测试。这些测试可以帮助开发者验证功能是否符合预期,并持续监控项目的运行状态。
结论
虽然 Tectalic OpenAI REST API Client 已经停止维护和支持,它依然为 PHP 开发者提供了简化与 OpenAI API 交互的强大工具。通过简单的配置与调用,用户可以轻松实现复杂的人工智能功能,从而大大提升应用程序的开发效率和功能深度。尽管如此,使用者仍然需要注意该工具的停止维护状态,在必要时寻找其他更活跃的替代方案。