使用OpenAI Python库调用GPT-4时如何解决APIRemovedInV1错误?
解决OpenAI
APIRemovedInV1 错误 问题代码
def generate_response(prompt): response = openai.chatcompletion.create( model="gpt-4", # 如果"gpt-4o"已废弃,使用"gpt-4"作为模型标识 messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": prompt} ], max_tokens=150 ) return response.choices[0].message['content'].strip()
问题描述
运行上述代码触发APIRemovedInV1错误,已尝试以下方案但未解决:
- 降级OpenAI Python库版本
- 查阅官方文档并尝试异步调用方法
修复方案
这个错误的核心是代码沿用了OpenAI v0.x版本的API调用逻辑,而当前环境安装的是v1.x版本的库,两者API结构差异显著。无需降级,直接修改代码适配v1.x版本即可:
from openai import OpenAI client = OpenAI() def generate_response(prompt): response = client.chat.completions.create( model="gpt-4", # 若"gpt-4o"可用,建议优先使用 messages=[ {"role": "system", "content": "你是一个乐于助人的助手。"}, {"role": "user", "content": prompt} ], max_tokens=150 ) return response.choices[0].message.content.strip()
关键修改说明:
- 导入
OpenAI类并初始化客户端实例,替代原直接调用openai.chatcompletion的方式 - API调用路径调整为
client.chat.completions.create(注意大小写和复数形式) - 返回值获取路径从
response.choices[0].message['content']改为response.choices[0].message.content
内容的提问来源于stack exchange,提问作者1DS20EC065_Ravikiran H
相关产品推荐
相关产品推荐

