当前位置:   article > 正文

chatgpt api极简入门(参考官网教程)

chatgpt api

写在前面

心血来潮,复试完结束很摆,研究点东西玩玩,之前之知道nonebot搭建qq机器人的方法和步骤,这次记录下自己使用openai,gpt3.5的api的代码,参考自openai的官网。

环境

要求 python 版本 >=3.8 && <4
安装openai的库

pip install openai
  • 1

注意记得设置代理,可以使用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())
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

效果预览
在这里插入图片描述
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})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

这部分就不写注释了,具体是操作方法是,把新的问题append到上次对话的结尾以带入情境。
后续会补写搭建nonebot机器人的文章,但不涉及开发,等我学习完再进行记录(#`O’)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/513714
推荐阅读
相关标签
  

闽ICP备14008679号