ChatGPT 整合到Laravel项目中使用

之前写的《ChatApI 本地如何调用》是直接下载ChatGPT SDK当做单独项目开发使用的,这次写的是整合到当前项目中使用ChatGPT 合并为一个项目去使用;具体操作方法也有一定区别。

目录

1.安装ChatGPT SDK

2.加载ChatGPT类库

3.安装guzzlehttp

4.代码实操

总结


1.安装ChatGPT SDK

安装命令:

composer require tectalic/openai

 

2.加载ChatGPT类库

 

查看ChatGPT类库配置

tectalic/openai - Packagist

 

 

添加ChatGPT类库配置到composer.json相应位置

即:

require

require-dev

 

在require、require-dev原来信息的基础上添加这些类库

我使用的是laravel框架,默认是有phpunit类库的,所以不需要在加上去。

如果没有请安装。

命令:

composer require phpunit/phpunit

也可以直接添加到require属性的最后一个

"phpunit/phpunit": "^8.5.14 || ^9.5"

然后执行composer update

3.安装guzzlehttp

按理说不用安装的,不过发现vendor/guzzlehttp中没有guzzle/promises,

只有psr7,所以需要安装

命令

composer require guzzlehttp/guzzle

安装完成,vendor/guzzlehttp下多出两个文件夹 

4.代码实操

设置路由

// 测试chatGPT
Route::post('productGPT', 'ApiProductOrderController@index');

控制器方法

public function index()
{
    require '../vendor/autoload.php';

    $text = request()->input('text');
    $open_api_key = '你的Open Ai key';
    $openaiClient = \Tectalic\OpenAi\Manager::build(
        new \GuzzleHttp\Client(),
        new \Tectalic\OpenAi\Authentication($open_api_key)
    );

    /** @var \Tectalic\OpenAi\Models\Completions\CreateResponse $response */
    $response = $openaiClient->completions()->create(
        new \Tectalic\OpenAi\Models\Completions\CreateRequest([
            'model' => 'text-davinci-003',
            'prompt' => $text,     // 设置问题
            'max_tokens' => 500,   // 设置答案长度 不设置只显示部分字符
        ])
    )->toModel();

    print_r($response->choices[0]->text);die;
}

测试请求

 

总结

基本上完成了,实际使用中,还需要对用户提交的文本进行验证和敏感词处理。

并对输出数据进行业务处理后,设置好相应的格式输出。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JSON_L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值