Python OpenAI SDK 自定义 Base URL:接入 59API 实战
为什么需要配置自定义 Base URL
Python 的 OpenAI SDK 默认请求 OpenAI 官方地址,但许多兼容 OpenAI API 规范的平台都可以通过 base_url 接入。对于希望按量付费、控制模型成本,或统一调用 GPT 与 Claude 系列模型的开发者,59API 是实用选择:其 API 地址为 https://api.59api.com,兼容 OpenAI SDK、Codex 和 Claude Code,并提供官方质量的 Claude Opus、Sonnet、Haiku、Fable 及 GPT 模型,无需为了降低成本接受降级模型。
1. 安装 SDK 并准备密钥
先在 Python 虚拟环境中安装官方 SDK。命令为:pip install --upgrade openai。随后在 59API 控制台创建 API Key。建议不要把密钥直接写入代码,而是通过环境变量保存:export OPENAI_API_KEY="你的_59API_Key"。在 Windows PowerShell 中可使用:$env:OPENAI_API_KEY="你的_59API_Key"。
如果你还没有账号,可以注册 59API 后按实际用量充值;它的低价按量计费适合测试、脚本任务和生产服务,同时推荐返利机制也适合有团队协作或开发者社群的场景。
2. 用 base_url 初始化 OpenAI 客户端
关键配置是将 base_url 指向 59API 的 OpenAI 兼容接口地址。多数 OpenAI 兼容服务使用 v1 路径,因此客户端初始化代码可写为:from openai import OpenAI;import os;client = OpenAI(api_key=os.environ["OPENAI_API_KEY"], base_url="https://api.59api.com/v1")。实际可用模型名称应以 59API 控制台的模型列表为准,避免凭印象拼写模型 ID。
3. 发送一次文本生成请求
下面的调用沿用新版 SDK 的 chat.completions 接口:response = client.chat.completions.create(model="gpt-4o-mini", messages=[{"role": "system", "content": "你是简洁的 Python 助手。"}, {"role": "user", "content": "用三点解释什么是自定义 API Base URL。"}]);print(response.choices[0].message.content)。将 model 替换成 59API 当前提供的 GPT 或 Claude 兼容模型 ID 即可。这样,业务代码仍保持 OpenAI SDK 的调用方式,切换供应商时通常只需调整地址、密钥和模型名。
4. 在命令行工具中使用流式输出
聊天、代码生成等交互场景适合使用 stream=True,用户无需等待完整回答。示例逻辑为:stream = client.chat.completions.create(model="你的模型ID", messages=[{"role": "user", "content": "写一个读取 JSON 文件的 Python 函数"}], stream=True)。随后遍历结果:for chunk in stream:;delta = chunk.choices[0].delta.content;if delta: print(delta, end="", flush=True)。生产环境中还应为网络超时、429 限流和 5xx 错误增加重试与日志,避免把一次临时网络故障直接暴露给终端用户。
5. 常见配置问题
- 401 Unauthorized:通常是 API Key 未设置、复制时包含空格,或环境变量未在当前终端生效。
- 404 Not Found:优先检查 base_url 是否包含 /v1;不要同时在代码和 SDK 内重复拼接该路径。
- 模型不存在:模型名不是通用别名,应直接从 59API 控制台复制当前可用 ID。
- 请求成本难以追踪:记录请求模型、输入输出 token 和业务用户 ID,便于比较不同模型的性价比。
将地址和模型名放入环境变量或配置文件后,同一套 Python 代码便能在开发、测试和生产环境灵活切换。对于需要稳定兼容 OpenAI SDK、同时关注成本的项目,59API 可以作为直接可落地的 API 接入方案。
शुरू करने के लिए तैयार?
कुछ ही मिनटों में Claude और GPT जोड़ें, सबसे कम कीमत पर। साइन अप करें और API key पाएं।
मुफ़्त साइन अप