简短教程:如何使用 Python 调用 OpenAI 接口


前言

本呆在调用 OpenAI 的 API 时,发现除开官方文档之外,CSDN 上的很多教程良莠不齐,这可能会让不喜欢看英文文档的小伙伴感到苦恼,因为很多版本的教程其实都是以前版本的接口,在当前版本下使用这些代码,只会噼里啪啦一顿报错,所以本呆就写个简短的教程记录下。


当前版本的 OpenAI 接口调用:client.chat.completions.create

当前版本的 OpenAI 接口,按照官档所说,1.0 以后的版本都可以使用。即使不是最新版的 open ai 库也可以用。

代码如下:

from openai import OpenAI

# 正确设置 API 密钥
api_key="呆河马的API"

# 定义模型名称和其他参数
model_name = 'gpt-4o'  
temperature = 0.7
prompt = "你好,我有一只呆河马"


client = OpenAI(api_key=api_key)

completion = client.chat.completions.create(
    model=model_name,
    temperature=temperature,
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {
            "role": "user",
            "content": prompt
        }
    ]
)

print(completion.choices[0].message.content)

以上代码来自于官方文档。

在这里说一下,本呆使用的 open ai 库版本是 1.47,并不是最新版,但是依然可以使用这个版本的调用方式。

已经弃用的接口调用

大家一定要看好,下面这里的调用方式,都是旧版本的,特指 1.0 以前,除非安装旧版本的 open ai 库,否则不可用。而且也不太建议安装古早版本的库,建议使用以上的代码。

版本 1:openai.ChatCompletion.create

import openai

# 设置你的 OpenAI API 密钥
openai.api_key = "sk-你的新API密钥"

# 定义消息
messages = [
    {"role": "system", "content": "你是一个有帮助的助手。"},
    {"role": "user", "content": "你好,我有一只呆河马。"}
]

# 调用 ChatCompletion API
response = openai.ChatCompletion.create(
    model="gpt-4",  # 或者 "gpt-3.5-turbo"
    messages=messages,
    max_tokens=100,
    temperature=0.7
)

# 打印响应文本
print(response.choices[0].message['content'].strip())

版本 2:openai.Completion.create

import openai

# 设置你的 OpenAI API 密钥
openai.api_key = "sk-你的新API密钥"

# 调用 Completion API
response = openai.Completion.create(
    model="text-davinci-003",
    prompt="你好,我有一只呆河马",
    max_tokens=100,
    temperature=0.7
)

# 打印响应文本
print(response.choices[0].text.strip())

总结

openai 库的不同版本在 API 调用方式上存在显著差异。如果使用了不匹配的版本,代码将无法正常运行,甚至可能报出诸如 'OpenAI' object has no attribute 'Completion' 这样的错误。

所以本呆提醒大家,务必要确认所使用的 openai 库版本 与参考的教程或文档相匹配。通过定期检查和更新库版本,参考官方文档,并采用安全的方式管理 API 密钥,可以更顺利地进行开发,避免不必要的错误和安全隐患。

OpenAI官方文档

<think>嗯,用户想了解Python使用方法。首先,我需要确定用户的背景。可能是一个编程新手,或者有其他语言经验想转Python。需要从基础开始介绍,但也要保持结构清晰。 首先,Python的安装和开发环境。应该提到官网下载,以及常用的IDE,比如PyCharm、VS Code,还有Jupyter Notebook。可能用户对配置环境不太熟悉,所以简单说明步骤。 接下来是基础语法。变量和数据类型是入门的关键,要列举常见的数据类型,比如整数、浮点数、字符串、列表、元组、字典等。然后,控制流程,包括条件语句和循环,这些是编程的基本结构。函数和模块的部分需要说明如何定义函数和导入模块,比如使用import。 然后是常用库的介绍。根据不同的应用领域,比如数据分析的pandas、numpy,机器学习的TensorFlow、PyTorch,可视化的matplotlib、seaborn。用户可能对库的作用不太清楚,需要简要说明每个库的用途。 文件操作也是必须的,读写文件是常见任务,要说明如何用open函数处理文本文件,以及用pandas处理CSV、Excel。 面向对象编程部分可能需要稍微深入一点,但作为入门,简单解释类和对象的概念即可。 最后,学习资源推荐,官方文档、菜鸟教程、LeetCode练习,这些资源对新用户很有帮助。 需要检查是否符合系统级指令,比如数学表达式是否正确使用$...$,独立公式用$$...$$。不过Python使用方法可能涉及代码,代码块应该用反引号包裹,但用户没有特别提到代码格式,可能不需要。但用户问题中没涉及数学公式,所以这部分可能用不上,但需要留意。保持回答结构清晰,分步骤,用标题和列表,方便阅读。确保用中文,语言口语化,避免专业术语过多,或者适当解释术语。可能用户需要实际例子,比如打印“Hello World”,变量赋值示例,条件语句的例子,循环的例子,定义函数等,这些能帮助理解。不过用户的问题比较广泛,介绍使用方法可能需要概述,而不是详细例子。需要平衡概念和示例,避免过于冗长。 总结,结构大致分为安装、基础语法、常用库、文件操作、面向对象、学习资源。每个部分用简短的说明,突出重点。确保信息准确,比如Python是动态类型,解释型语言,这些特点可以提及。可能用户关心应用场景,比如Web开发、数据分析、AI等,可以简单提到,但重点在如何使用上。总之,回答要层次分明,逐步引导,帮助用户建立Python使用的整体认识。</think>以下是对Python使用方法的逐步介绍,适合编程新手入门: ### 一、环境搭建 1. **安装Python** 访问[Python官网](https://www.python.org/)下载对应操作系统的安装包,安装时需勾选`Add Python to PATH`(环境变量配置) 2. **开发工具选择** - 编辑器:VS Code、PyCharm、Sublime Text - 交互环境:Jupyter Notebook(适合数据分析) - 终端:直接输入`python`启动解释器 --- ### 二、基础语法 #### 1. 变量与数据类型 ```python # 变量赋值(动态类型) a = 10 # 整数 b = 3.14 # 浮点数 c = "Hello" # 字符串 d = [1, 2, 3] # 列表(可变) e = (4, 5, 6) # 元组(不可变) f = {"name": "Alice"} # 字典(键值对) ``` #### 2. 控制流程 - **条件语句** ```python if score >= 90: print("优秀") elif score >= 60: print("及格") else: print("不及格") ``` - **循环结构** ```python # for循环遍历列表 for num in [1, 2, 3]: print(num * 2) # while循环 count = 0 while count < 5: print(count) count += 1 ``` #### 3. 函数与模块 ```python # 定义函数 def add(a, b): return a + b # 调用函数 result = add(3, 5) # 导入模块 import math print(math.sqrt(16)) # 输出4.0 ``` --- ### 三、常用库与应用场景 | 库名称 | 用途 | 示例 | |----------------|------------------------|-----------------------| | `numpy` | 数值计算 | 矩阵运算、数组操作 | | `pandas` | 数据分析 | 数据清洗、CSV读写 | | `matplotlib` | 数据可视化 | 绘制折线图/柱状图 | | `requests` | HTTP请求 | 调用API接口 | | `tensorflow` | 机器学习 | 构建神经网络模型 | --- ### 四、文件操作 ```python # 写入文件 with open("test.txt", "w") as f: f.write("Hello Python") # 读取文件 with open("test.txt", "r") as f: content = f.read() print(content) ``` --- ### 五、面向对象编程(OOP) ```python # 定义类 class Dog: def __init__(self, name): self.name = name def bark(self): print(f"{self.name}:汪汪!") # 创建对象 my_dog = Dog("Buddy") my_dog.bark() # 输出:Buddy:汪汪! ``` --- ### 六、学习资源推荐 1. **官方文档**:[Python 3 Documentation](https://docs.python.org/3/) 2. **入门教程**:菜鸟教程、廖雪峰Python教程 3. **实践平台**:LeetCode、Codewars(刷题练习) --- ### 七、典型应用场景 - Web开发:Django/Flask框架 - 自动化脚本:文件批量处理 - 数据分析:Jupyter + Pandas - 人工智能:TensorFlow/PyTorch 通过以上步骤,您可逐步掌握Python的核心用法。建议从编写简单脚本开始,逐步尝试实际项目开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值