自从人工AI发布以来,在国内也是掀起了一阵浪潮,各大企业纷纷推出了自己的AI模型和产品,可以说,国内的AI公司如雨后春笋,争先恐后想要分得这杯羹,而小编作为一个对AI有着浓厚兴趣的业余爱好者,在业余时间也会鼓捣鼓捣人工智能,特别是chatgpt这种聊天模型。
那么今天给大家带来的是,利用一段代码就可以获取chatgpt的回答并输出到你的浏览器窗口,是不是很神奇,其实原理也是非常简单,就是通过请求api来获取JSON数据并转化为普通内容,最终echo到浏览器窗口。
在体验这个小功能之前,你需要准备一个openai的秘钥key和一个代理地址,这样就可以正常获取,下来一起来看看这段代码是怎么写的:
<?php
// 定义 OpenAI API 的访问密钥和模型名称
$openai_api_key = 'sk-xxxxxxxx'; // 将此处替换为您自己的密钥
$model_name = 'gpt-3.5-turbo';// 这里的模型你可以按照意愿填写
// 获取浏览器传递过来的问题参数
if(isset($_GET['text'])) {
$text = $_GET['text'];
} else {
die('Error: 拒绝访问!');
}
// 添加上下文信息到 prompt 中
$context = '你是一个专家级别的作者,请以标题为中心,写一篇2000字的文章。
';
// 设置 OpenAI API 请求的参数
$data = array(
'model' => $model_name,
'messages' => [
[
"role" => "user",
"content" => $text . ' ' . $context
]
],
'temperature' => 0.8, // 增加温度以增加随机性
'max_tokens' => 5000, // 增加生成的最大令牌数以增加输出长度
);
// 将参数转换为 JSON 格式
$data_string = json_encode($data);
// 设置 cURL 请求参数javascript:;
$ch = curl_init('https://代理地址域名/v1/chat/completions');// 将此处替换为中转代理地址
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string),
'Authorization: Bearer ' . $openai_api_key
));
// 执行 cURL 请求
$response = curl_exec($ch);
// 将 API 返回结果转换为 PHP 数组
$response_array = json_decode($response, true);
// 检查 API 返回结果中是否有错误信息
if(isset($response_array['error'])) {
// 输出错误信息
echo '请求出错';
}
else {
// 输出 API 返回结果中的答案
echo $response_array['choices'][0]['message']['content'];
}
// 关闭 cURL 请求
curl_close($ch);
?>
把上面这段代码保存为一个php文件,比如chatgpt.php,并且替换key和代理地址,然后上传到你的网站根目录或者其他目录,最后在浏览器输入:
http://你的域名/chatgpt.php?text=手机蓝牙搜索不到怎么回事?
访问后等待片刻即可获取chatgpt的答案并显示在浏览器上,虽然这个功能没有什么实际用处,也算是小编鼓捣出来记录一下,感兴趣的可以体验一下,也许可以为你增加一些灵感。
目前访问openai在国内是受限的,如果大家对人工智能回答比较感兴趣,比如想要创建自己的一个内容网站,采集AI生成内容并发布到网站上,推荐大家看看这篇文章《火车头采集器搭配moonshot api集成python插件实现批量采集原创文章》,采用的是国内比较出名的moonshot人工智能集成的,经小编测试生成内容非常好。
以上就是今天给大家分享的内容,也是自己在摸索人工智能的时候,简简单单记录一下,不喜勿喷哦~
本内容由作者【无涯探索】自发贡献,版权归原作者所有,秒鲨号仅提供存储服务,不承担相应的法律责任。如您发现有涉嫌抄袭侵权的内容,请发送举报信息至邮箱:ddzpay@hsrjtk.com,我们将尽快核实处理。
更多精彩内容请点击→最新资讯