admin管理员组文章数量:1632061
写在前面
心血来潮,复试完结束很摆,研究点东西玩玩,之前之知道nonebot搭建qq机器人的方法和步骤,这次记录下自己使用openai,gpt3.5的api的代码,参考自openai的官网。
环境
要求 python
版本 >=3.8 && <4
安装openai的库
pip install openai
注意记得设置代理,可以使用api即可,通常来说,api比登录chatgpt的审核要求更加严格。
编写脚本
以下提供了两个版本,一个是没有上下文情境的版本,一个是加入情境的版本,一般来说,加入上下文情境会消耗更多的tokens
,因为把历史对话导入了prompt
中。
版本
helper.py
# 导入openai库
import openai
# 设置api-key
openai.api_key = "sk-xxx"
# 将openai chat封装成函数
def chat(prompt):
# 核心的请求语句,prompt为问题内容
# model可选{'gpt-3.5-turbo', 'gpt-3.5-turbo-0301', 'text-davinci-003', 'text-davinci-002', 'code-davinci-002'},model特色参考官方文档
# role可选{'system', 'assistance', 'user'}
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "assistant", "content": prompt}
]
)
str = completion.choices[0].message.content
print("@bot:" + str)
# 主函数,使用读入控制台输入的方式对话
if __name__=="__main__":
print('使用"CTRL + C"退出')
print('=========开始聊天=========')
while True:
print('@您:', end = '')
chat(input())
效果预览
helper_plus.py
import os
import openai
openai.api_key = "sk-xxx"
messages = []
print('使用"CTRL + C"退出')
print('=========开始聊天=========')
while True:
content = input("@您: ")
messages.append({"role": "user", "content": content})
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo-0301",
messages=messages
)
chat_response = completion
answer = chat_response.choices[0].message.content
print(f'@bot: {answer}')
messages.append({"role": "assistant", "content": answer})
这部分就不写注释了,具体是操作方法是,把新的问题append
到上次对话的结尾以带入情境。
后续会补写搭建nonebot
机器人的文章,但不涉及开发,等我学习完再进行记录(#`O’)
版权声明:本文标题:chatgpt api极简入门(参考官网教程) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1729101174a1186624.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论