前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python使用API调用ChatGPT

python使用API调用ChatGPT

作者头像
matinal
发布2024-04-18 08:59:01
2460
发布2024-04-18 08:59:01
举报
文章被收录于专栏:SAP TechnicalSAP Technical

python实现调用

使用python调用ChatGPT的API,依赖于python中的openai库,如果没有安装该库,可以使用下面的命令安装:

代码语言:javascript
复制
pip install openai

安装完必须的库后,我们就可以使用openai库中的函数正式开始调用了。

import openai openai.api_key = 'your_api_key' response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=prompt_text, max_tokens=2000, n=1, stop=None, temperature=0.5, ) response_content = response.choices[0].message.content

openai.api_key = 'your_api_key': 在这里我们需要设定自己在OpenAI平台上获取的API密钥,这个密钥是用于身份验证,确保你有权利访问OpenAI的服务。 response = openai.ChatCompletion.create(...): 从这里开始发起对ChatGPT API的请求。使用openai.ChatCompletion.create方法,我们向ChatGPT模型提交一个对话生成的请求。 model="gpt-3.5-turbo": 指定要使用的模型。 messages=prompt_text: 提供对话的信息,其中prompt_text是一个包含对话角色和内容的列表。系统提示、用户输入和助手ChatGPT的回复都在这个列表中,等一下我们再具体讲解一下这一部分。 max_tokens=2000: 限制生成的文本长度。 n=1: 请求的响应数,这里设置为1,表示我们只需要一个ChatGPT的回复。 stop=None: 指定停止标志,如果想要在生成的文本中指定位置停止,可以在这里设置。 temperature=0.5: 控制生成文本的多样性,较低的值会产生更加确定性的输出,而较高的值则会产生更加多样化的输出。 response_content = response.choices[0].message.content: 从API的响应中提取ChatGPT生成的回复内容。API的响应是一个JSON格式的对象,其中response.choices包含了生成的文本,我们通过[0].message.content获取了其中的内容。

上面展示的版本是老版本的openai库的使用,新版本有了一些细节上的改变,如下:

代码语言:javascript
复制
response = openai.chat.completions.create(
	model="gpt-3.5-turbo",
    messages=prompt_text,
    max_tokens=2000,
    n=1,
    stop=None,
    temperature=0.5,
)

接下来我重点讲解一下messages的设定,messages是一个包含对话角色和内容的列表,openai允许设定三种角色:

system系统消息:可以理解为对GPT角色的设定,你希望它在本次会话中扮演什么角色。 user用户消息:对话(你和GPT交流的内容),相当于你在网页端的输入框中输入并发送的消息。 assistant助理消息:你希望GPT回复的内容,通常用于限定它的回复格式。

代码语言:javascript
复制
prompt_text = [{"role": "system", "content": "You are an expert in Python."},
                {"role": "user", "content": "Please tell me the basics of Python."},
                {"role": "assistant", "content": "1. Installation:...2. Hello, World!:...3. ..."}
                 ]

完整的代码如下:

代码语言:javascript
复制
import openai

def get_chat_messages(prompt_text):
    openai.api_key = 'your_api_key'
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",  
        messages=prompt_text,
        max_tokens=2000,
        n=1,
        stop=None,
        temperature=0.5,
    )
    return response.choices[0].message.content

# 定义对话信息
prompt_text = [{"role": "system", "content": "You are an expert in Python."},
                {"role": "user", "content": "Please tell me the basics of Python."},
                {"role": "assistant", "content": "1. Installation:...2. Hello, World!:...3. ..."}
                 ]

# 调用ChatGPT API生成回复
response_content = get_chat_messages(prompt_text)

# 打印生成的回复
print("ChatGPT回复:", response_content)

ChatGPT 各种模型token一览表

gpt-3.5

gpt-4

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • python实现调用
  • ChatGPT 各种模型token一览表
    • gpt-3.5
    相关产品与服务
    多因子身份认证
    多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档