一个Key调用多个大模型

📅 2026-08-01 · 分类:教程

最近做AI应用,经常要对比DeepSeek和通义千问的输出。按通常流程,得去两家平台分别注册、拿两个Key,然后写两套HTTP调用,处理两种返回格式。代码里充斥着if else,看着就烦。后来我改用了一个统一网关,一个Key搞定所有模型,代码只有一份,想切换模型就改个字段名。

准备工作很简单。你需要一个支持多模型接入的网关服务——可以自己用开源项目部署一个,比如one-api,也可以用现成的中转服务。核心都是给你一条统一的API地址和一个Key。下面我以兼容OpenAI格式的网关为例,具体说下怎么配。

第一步,把各家的原始Key填进网关。在网关后台添加渠道,分别填入DeepSeek的API Key、通义千问的API Key,网关会自动管理这些凭证。之后你对外的请求只需要用网关分配的那个统一Key,原始Key可以收起来了。

第二步,改代码里的API地址。原来调用DeepSeek时,base_url是https://api.deepseek.com/v1,通义千问可能是https://dashscope.aliyuncs.com/compatible-mode/v1。现在统一改成你的网关地址,比如https://your-gateway.com/v1,加上网关Key就行:

client = OpenAI( api_key="your-gateway-key", base_url="https://your-gateway.com/v1" ) `

切换模型时,只需要改model字段。比如从DeepSeek切到通义千问:

其他代码一概不用动。网关会根据模型名自动路由到对应的厂商,并完成鉴权和计费。我习惯把模型名做成环境变量,这样切换只改配置,不用重发代码,做A/B测试也方便。

用下来的最大好处是不用再逐个平台维护Key了。之前有两套环境变量、两套签名逻辑,现在全部透明化。另外,计费也统一了——往网关账户里充一次钱,所有模型都能用,余额在哪花的一目了然,比在几家平台分别充值好管多了。

如果你的项目刚起步,或者只是偶尔做做模型对比,强烈建议先这么干。省去繁琐的账号管理,把精力花在业务逻辑上。等到规模大了,再把网关的负载均衡、缓存这些策略慢慢调起来,基础设施始终是透明的。

← 返回文章列表
充站 · 一个Key · 自由充 · 额度不过期