适合已经用 OpenAI 官方 SDK 或兼容格式写好应用、准备换用另一个接口的开发者,也适合需要同时接多个模型来源的团队。如果应用依赖某家厂商的专有功能(比如特定的文件接口或助手接口),需要单独评估。

代码里要改的三处

以 Python 官方 SDK 为例,改动集中在创建客户端的地方:

import os
from openai import OpenAI

client = OpenAI(
 base_url="https://api.example.com/v1", # 换成新接口的地址
 api_key=os.environ["MODEL_API_KEY"], # 密钥从环境变量读取
)

resp = client.chat.completions.create(
 model="<模型名>", # 换成新接口里的模型标识
 messages=[{"role": "user", "content": "你好"}],
)
print(resp.choices[0].message.content)
print(resp.usage) # 记录用量,用于对账

上面的地址只是示例,接口地址和模型名以接口方提供的为准。三条原则:

  • 地址和密钥放在配置里,不写死在代码中,方便切换和回退。
  • 密钥只放环境变量或密钥管理系统,不提交到代码仓库,不发在聊天里。
  • 模型名做成映射表,业务代码里用自己的别名,换来源时只改映射。

逐项核对的功能清单

对照应用实际用到的功能,每一项都用真实请求测一次:

功能 要核对什么
基本对话 多轮消息、系统提示是否按预期生效
生成参数 temperature、top_p 的取值范围;输出上限参数名是 max_tokens 还是 max_completion_tokens
流式输出 分片格式、结束标记;流式时是否返回用量
函数调用 tools 定义格式、并行调用、tool_choice 是否支持
结构化输出 JSON 模式或 JSON Schema 是否支持,失败时的表现
多模态输入 图片等输入的格式与大小限制
向量接口 embeddings 是否提供,维度是否与现有索引一致
用量字段 usage 里的各项是否齐全,缓存 Token 是否单独列出
错误码 限流、超时、内容拦截分别返回什么状态码和消息

不支持的参数,有的接口会报错,有的会静默忽略。静默忽略更危险,测试时要确认参数确实生效。

错误处理与重试

迁移后最容易出问题的是异常路径,而不是正常请求:

  1. 限流(429):按指数退避重试,并设置最大重试次数;不要立即无限重试。
  2. 服务端错误(5xx):可以重试,但要确认请求是否已经计费。
  3. 超时:区分连接超时和读取超时;长输出请求的读取超时要放宽。
  4. 内容拦截:不同接口的拦截规则和返回格式不同,应用要能给用户一个明确提示。
  5. 记录请求标识:每次请求记录时间、模型名、用量和接口返回的请求编号,出问题时便于对账和排查。

上线怎么切

  1. 影子测试:生产请求复制一份发到新接口,只记录不返回给用户,对比结果和延迟。
  2. 小比例切流:先切 5% 到 10% 的流量,观察错误率、延迟和用户反馈。
  3. 保留回退开关:配置里随时可以切回原接口,回退不需要重新发布代码。
  4. 逐步扩大:每次扩大前确认前一阶段的指标正常。
  5. 对账:切换后第一个结算周期,核对自己记录的用量与账单。

迁移时常见的四个疏忽

  • 只测一条请求就上线:正常请求通过不代表流式、函数调用和异常都正常。
  • 模型名直接写在业务代码里:每次换模型都要改代码、重新发布。
  • 忽略静默忽略的参数:比如设置了输出上限却没生效,费用会超出预期。
  • 没有回退方案:新接口出问题时,只能临时改代码。

常见问题

兼容接口能用官方 SDK 吗?

通常可以,把 SDK 的接口地址改成新地址即可。但 SDK 新版本加入的功能,兼容接口不一定同步支持,升级 SDK 后要回归测试。

同一个模型在不同接口上效果一样吗?

不一定。部署方式、默认参数、上下文限制都可能不同。用同一批样本对比结果,不要假定相同。

迁移需要多长时间?

代码改动通常很小,时间主要花在测试和逐步切流上。功能用得越多,需要核对的项目越多。

易AI能提供哪些模型?

可用模型以模型服务页列出的产品入口和实际沟通为准。企业用量、结算方式需要单独确认。

参考资料

  1. Google Gemini API:OpenAI 兼容说明(新窗口)
  2. Anthropic:OpenAI SDK 兼容说明(新窗口)
  3. vLLM:OpenAI 兼容服务(新窗口)

官方资料用于核对产品或通用概念,不构成对易AI的授权、认证或背书。具体合作以双方确认的方案为准。

对应业务

模型服务与供应合作

聚合 Claude、GPT、Gemini、DeepSeek、通义千问等主流模型,一个 Key 即可调用。开发者自助接入,企业用量与分销合作单独洽谈。

咨询合作了解这项服务