chatgpt之api的调用问题

1.调用api过程中,出现如下报错内容

先写一个测试样例

python 复制代码
import openai


openai.api_key = "OPEN_AI_KEY"
openai.api_base="OPEN_AI_BASE_URL" # 是否需要base根据自己所在地区和key情况进行

completion = openai.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[
        {
            "role": "user",
            "content": "帮我用python写topk算法"
        },
    ]
)

print(completion.choices[0].message)

运行后,出现如下报错。

python 复制代码
You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

2. 解决问题

根据提示可知道,是API更新的缘故,查阅文档对代码进行修改即可。

python 复制代码
import openai


openai.api_key = "OPEN_AI_KEY"
openai.api_base="OPEN_AI_BASE_URL" # 是否需要base根据自己所在地区和key情况进行

# 区别主要是将openai.ChatCompletion.create换成openai.chat.completions.create
completion = openai.chat.completions.create(
    model="gpt-3.5-turbo",
    messages=[
        {
            "role": "user",
            "content": "帮我用python写topk算法"
        },
    ],
)
print(completion.choices[0].message.content)

正常运行即可,结果如下:

3.思考

api_base是干嘛的?其实他就是调用api过程中的镜像网站,避免连接不上或者被block。

相关推荐
星爷AG I15 分钟前
14-12 动作序列学习(AGI基础理论)
人工智能·学习·agi
无限大616 分钟前
数字生存01:AI越强大,越要守住这3种"做人的底气"
人工智能
无限大631 分钟前
职场逻辑01:别再瞎努力!AI时代,职场核心竞争力排序
人工智能
带娃的IT创业者37 分钟前
WeClaw 离线消息队列实战:异步任务队列如何保证在服务器宕机时不丢失任何一条 AI 回复?
运维·服务器·人工智能·python·websocket·fastapi·实时通信
最新快讯1 小时前
AI前沿技术日更简报 - 2026-03-17
人工智能
wal13145201 小时前
OpenClaw教程(九)—— 彻底告别!OpenClaw 卸载不残留指南
前端·网络·人工智能·chrome·安全·openclaw
老鱼说AI1 小时前
CUDA架构与高性能程序设计:异构数据并行计算
开发语言·c++·人工智能·算法·架构·cuda
牛奶1 小时前
分享一个开源项目,让 AI 辅助开发真正高效起来
前端·人工智能·全栈
GIS数据转换器2 小时前
延凡城市生命线系统
大数据·人工智能·信息可视化·数据挖掘·无人机
Baihai_IDP2 小时前
OpenClaw 架构详解 · 第一部分:控制平面、会话管理与事件循环
人工智能·面试·llm