2026年【课件】Python调用OpenAI API实现ChatGPT对话

【课件】Python调用OpenAI API实现ChatGPT对话本地示例代码路径 cd D Workspace Python openai api test 首先 你需要有一个 openai 账号 如何注册我就不多说了 网上教程很多 而且很详细 添加通过后请直接描述你的问题 问题截图 访问下面页面 登录 openai 账号后 创建一个 api keys api keys 创建页面 https platform openai

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



本地示例代码路径:

cd /D/Workspace/Python/openai-api-test

首先你需要有一个 openai 账号,如何注册我就不多说了,网上教程很多,而且很详细,添加通过后请直接描述你的问题+问题截图

访问下面页面,登录 openai 账号后,创建一个 api keys。

# api keys 创建页面 https://platform.openai.com/account/api-keys

接下来很简单了,安装 openai 官方的 Python SDK,这里需要注意的是得安装最新版本 openai,官方推荐的是 0.27.0 版本。

pip install openai==0.27.0

直接上请求代码:

import openai import json

目前需要设置代理才可以访问 api

os.environ[“HTTP_PROXY”] = “自己的代理地址” os.environ[“HTTPS_PROXY”] = “自己的代理地址”

def get_api_key():

# 可以自己根据自己实际情况实现 # 以我为例子,我是存在一个 openai_key 文件里,json 格式 ''' {"api": "你的 api keys"} ''' openai_key_file = './envs/openai_key' with open(openai_key_file, 'r', encoding='utf-8') as f: openai_key = json.loads(f.read()) return openai_key['api'] 

openai.api_key = get_api_key()

q = “用python实现:提示手动输入3个不同的3位数区间,输入结束后计算这3个区间的交集,并输出结果区间” rsp = openai.ChatCompletion.create( model=“gpt-3.5-turbo”, messages=[

 {"role": "system", "content": "一个有10年Python开发经验的资深算法工程师"}, {"role": "user", "content": q} ] 

) 复制代码

代码解析:

  • get_api_key() 函数是我自己写的一个从文件读取 api keys 的方法,我是存在一个 openai_key 文件里,json 格式,你可以改成你自己的获取方法,甚至可以直接写到代码里(虽然不推荐,但确实最简单)。
  • q 是请求的问题
  • rsp 是发送请求后返回结果
  • openai.ChatCompletion.create 中参数
  • model 是使用的模型名称,是一个字符串,用最新模型直接设置成gpt-3.5-turbo 即可
  • messages 是请求的文本内容,是一个列表,列表里每个元素类型是字典,具体含义如下表:
  • 程序运行返回内容,从响应回复内容我们可以看到,回复内容是一个 json 字符串, 我们可以通过以下方法直接获取相关信息:
print(rsp.get(‘choices’)[0][‘message’][‘content’]) print(rsp.get(‘choices’)[0][‘message’][‘role’]) print(rsp.get(‘usage’)[‘total_tokens’])

返回消息内容

rsp.get(“choices”)[0][“message”][“content”]

角色

rsp.get(“choices”)[0][“message”][“role”]

问题+回答总长度

rsp.get(“usage”)[“total_tokens”]

其他信息也可以通过类似方法获取。

小讯
上一篇 2026-04-20 23:42
下一篇 2026-04-20 23:40

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/264959.html