php使用chatGPT生成东西做记录
好久没写了,这么长时间都去坐一些自己感兴趣的事情去了。
之前使用chatgpt-3,效果一直不咋好,这里我们来说说各个版本区别
gpt-3收费成本可以接受,生成的内容对话有点不太聪明的样子
git-3.5-turbo收费相对来说低,生成文本质量还是蛮高的,虽然有可能存在一点废话,但是不影响
git-4对不起用不起哈,等模型训练会不会下带升级之后这个收费较低我在说吧
php调用对话接口
https://api.openai.com/v1/chat/completions
各种三个demo测试
$msg是你需要传入的对话
第二段是屏蔽部分首次进入加入
-
$data = array(
-
'model' => 'gpt-3.5-turbo',
-
'messages' => [
-
['role' => 'user', 'content' => $msg],
-
],
-
// 'messages' => array(
-
// array('role' => 'system', 'content' => '你好,有什么可以帮助您'),
-
// array('role' => 'user', 'content' => '生成介绍API文章')
-
// ),
-
//'max_tokens' => 1000,
-
// 'model' => 'gpt-3.5-turbo',
-
//'prompt' => '生成关于ai绘画介绍的详细文章,讲述所涉及到知识点',
-
);
再就是curl
请求了这种直接使用chatGPT生成的代码改动一下就可以
-
$ch = curl_init($url);
-
curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_BASIC); //代理认证模式
-
-
curl_setopt($ch, CURLOPT_PROXY, env('gpt.proxy')); //代理服务器地址
-
-
curl_setopt($ch, CURLOPT_PROXYPORT, env('gpt.proxyport')); //代理服务器端口
-
if(!empty(env('gpt.proxyuserpwd'))){
-
curl_setopt($ch, CURLOPT_PROXYUSERPWD, env('gpt.proxyuserpwd')); //http代理认证帐号,username:password的格式
-
}
-
-
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); //使用http代理模式
-
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
-
curl_setopt($ch, CURLOPT_POST, true);
-
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
-
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
-
'Content-Type: application/json',
-
'Authorization: Bearer ' . $apiKey
-
));
-
-
$result = curl_exec($ch);
-
-
$responseCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
-
-
-
curl_close($ch);
-
if ($responseCode == 200 || $result === false) {
-
$response = json_decode($result, true);
-
// dd($response);
-
Log::info("chat GPT:---------------------------");
-
Log::info("内容:".$result);
-
// Log::info("status:".$response['choices'][0]['finish_reason']);
-
// print_r($response['choices']);
-
-
//Log::info(htmlspecialchars($html));
-
return $response;
-
//$generatedText = $response['choices'][0]['text'];
-
// print_r($generatedText);
-
} else {
-
$response = json_decode($result, true);
-
if(is_array($response)){
-
return "Error sending request: " . $result;
-
return $response['error']['type'].":".$response['error']['message'];
-
}else{
-
return "Error sending request: " . curl_error($ch);
-
}
-
// 处理请求错误
-
-
}
当然各种不同接口类型返回数据格式不一样看自己需求
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbhegc
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01