如果用ChatGPT API做个游戏:你说我猜问答游戏开发记录
这段时间,生活一如既往地魔幻,好多想法和判断依据都发生了微妙的变化,技术人也被各种客观因素束缚,共勉吧!
很迷恋chatGPT,它实现的是AI对话,我最近在想如果结合游戏能用来做什么,游戏NPC?智能客服?好像都可以,但太常规,我还是想玩点不一样的。
既然是对话功能,那要不就实现综艺里的那种“你说我猜”玩法吧,于是花了两个晚上实现了:
昨天,微信版小游戏的上架了,官方审核速度是真的慢,足足审核了两周。
简单说说实现逻辑吧:
1. 去OpenAI官网注册个账号(要访问国外网站),获取API用的Key:
2. 用cocos creator做个游戏,我素材用的是官方商城的免费模型和UI,这里就不细说游戏创作过程了。
3. 配置一个远程PHP环境,然后用curl去请求OpenAI的API:
$api_url = 'https://api.openai.com/v1/completions';$access_token = 'openAI的API KEY';// 设置请求的参数$data = [ //'prompt' => '写一段php调用chatGPT', // 要向chatGPT发送的问题 'prompt' => $rq['prompt'], // 要向chatGPT发送的问题 'model' => 'text-davinci-003', // 使用的模型名称 'max_tokens' => 150, // chatGPT返回的最大文本长度];// 使用curl发送请求$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $api_url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json', 'Authorization: Bearer ' . $access_token,]);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //不验证证书// 处理响应结果$response = curl_exec($ch);$re = json_decode($response);if (isset($re->choices) && isset($re->choices[0])) { //获取回答文本 echo $re->choices[0]->text;}else if(isset($re->error) && $re->error->type == 'insufficient_quota'){ //如果api key限额满了 //目前openAI免费注册的账号,有18美元的api请求限额(23年4月前可用)}
整个研发过程还是很简单的,关键代码就在上面。
好了,说完了。
闪电发卡ChatGPT产品推荐:
ChatGPT Plus共享账号:https://www.chatgptzh.com/post/319.html
ChatGPT Plus独享账号(购买充值代充订阅):https://www.chatgptzh.com/post/306.html
ChatGPT APIKey购买充值(直连+转发):https://www.chatgptzh.com/post/305.html
ChatGPT Plus国内镜像逆向版:https://www.chatgptzh.com/post/312.html
ChatGPT国内版(AIChat):https://www.chatgptzh.com/post/318.html