值班交接:把 Python 的两家模型调用接进同一条排障路径
接班先确认:统一入口不等于统一能力
一个 Python 项目接入几家模型服务后,最容易乱的不是请求代码,而是密钥、模型标识、超时和账单各有一套。新手可以先用同一入口跑通两个模型,再逐步处理差异,不必一开始就搭建复杂的调度层。
Relay365 是按量付费的多模型中转服务,适合希望集中管理调用入口的项目。它支持 OpenAI SDK,也可用于 Claude Code、Codex 和 Gemini CLI。不过,入口统一不代表所有模型都支持同样的参数、工具调用或输出格式;接入前仍要核实当前可用能力。
先让项目解释器和密钥各归其位
第一步,在项目目录执行下面两条命令,创建独立环境并安装客户端。随后按操作系统激活虚拟环境,确认程序使用的是该环境中的解释器。
python -m venv .venv
python -m pip install openai
第二步,通过终端或部署平台设置环境变量。将密钥放入 RELAY365_API_KEY,将入口放入 RELAY365_BASE_URL。使用 OpenAI 客户端时,入口应为 https://api.api365relay.com/v1。不要把真实密钥写进源码、截图或版本库,也不要在日志中打印它。
先登记两个可用标识,再发第一条请求
第三步,在服务控制台核实模型可用性,并复制准确的接口标识。可以选 Claude Haiku 4.5 和 Gemini 2.5 Flash 作为两次验证的对象,但不要把展示名称直接当成接口标识。将核实后的值分别存入 MODEL_PRIMARY 和 MODEL_SECONDARY。
第四步,先验证主模型。确认该模型支持聊天补全接口后,在已经配置好环境变量的终端执行下面的命令。请求只要求一句简短中文回复,方便观察连接、认证和返回结构是否正常。
python -c "import os; from openai import OpenAI; c=OpenAI(api_key=os.environ['RELAY365_API_KEY'], base_url=os.environ['RELAY365_BASE_URL'], timeout=30.0, max_retries=0); r=c.chat.completions.create(model=os.environ['MODEL_PRIMARY'], messages=[{'role':'user','content':'请用一句中文确认收到请求。'}]); print(r.choices[0].message.content)"
这里的三十秒是客户端超时设置,不是服务响应承诺。初次验证关闭自动重试,是为了更容易看清原始错误。
第二家模型沿用输入,不沿用能力假设
第五步,把命令中的 MODEL_PRIMARY 改成 MODEL_SECONDARY,再运行一次。两次都成功后,将客户端初始化和请求逻辑移入项目函数,让业务代码只传入模型标识与消息。
先保留最少参数,再逐项测试流式输出、结构化输出或工具调用。不要因为一个模型接受某项参数,就给另一个模型原样添加。发现差异时,在适配层记录限制,避免业务代码到处判断模型名称。
失败请求先分类,再决定是否换路
第六步,在调用外围补上异常处理和脱敏日志。至少记录模型标识、耗时、错误类型,以及响应中确实存在的请求标识;不要默认保存完整提示词和回复。
- 遇到认证失败或模型不存在时,应先检查密钥、权限和标识,不要反复重试。
- 遇到限流、超时或部分服务端错误时,可以设置有限次数的退避重试,并给整项任务设置总时限。
- 只有业务允许将内容发送给另一家模型服务时,才启用跨模型回退,同时确认数据处理要求和费用范围。
交班前核对费用和真实业务样本
用几条脱敏的真实任务检查回复质量、延迟和用量,再决定默认模型。不要只凭一句测试回复判断生产适用性,也不要让重试与回退无上限叠加。
如果项目确实需要集中接入多个模型,可以创建一个 Relay365 账户,从小额调用开始核验当前价格、模型支持和账单记录。交班记录最终应留下入口配置、模型标识、超时、重试上限及回退条件,而不是只写“已经跑通”。
延伸阅读公告
| 日期 | 公告标题 | 所属频道 | 语言 |
|---|---|---|---|
| 2026-10-26 | 值班记录:把人工智能审查接进拉取请求的六步交接 | 实战手记 | ZH |
| 2026-10-26 | 值班交接记录:首次接入前核清会话日志与保留期限 | 实战手记 | ZH |
| 2026-10-26 | 值班交接:把模型审查接入持续集成,先跑通七个检查点 | 实战手记 | ZH |
| 2026-10-26 | 值班记录:同一提示词连跑三次,先记差异再改参数 | 实战手记 | ZH |
| 2026-10-26 | 值班交接记录:系统提示词上线前的七项整理 | 实战手记 | ZH |
| 2026-10-25 | 团队共用模型中转时,推荐奖励如何运作 | 实战手记 | ZH |
想在自己的代码上试试? 免费注册 →