
模型名不是全局唯一,先对上你用的协议
在 AIGoCode 里换协议,往往也要换模型名。快速开始把三种接口并排展示,每种接口各配一个示例模型:OpenAI Compatible 的例子用 gpt-6-astra,Claude Messages 的例子调用 Claude Sonnet 5.5,Gemini generateContent 的例子调用 Gemini 3.8 Flash。官方用一句“下面分别用 OpenAI Compatible、Claude Messages 和 Gemini generateContent 接口完成一次最小请求。”说明这是三种并列的入口,而不是同一套请求换不同域名。
把某一种协议示例里的模型名直接搬到另一种协议上,是常见的 model not found 来源。先确认你调用的是哪条路径,再从对应文档里抄它给的示例模型名,能少走很多弯路。
每个协议示例自带一个模型名
三个示例的请求体里各写了一个模型字段。OpenAI Compatible 的请求体用的是 "model": "gpt-6-astra";Claude Messages 的请求体用的是 "model": "claude-sonnet-5-5",此时请求发往 /v1/messages;Gemini 的示例没有走 JSON 的 model 字段,而是把模型名写进 URL,形如 https://api.aigocode.dev/v1beta/models/gemini-3.8-flash:generateContent?key=。注意最后这条把模型名和 key 查询参数放在同一个地址里,跟另外两种放进请求体的方式不同。
实践上的做法很简单:你选了哪条路径,就用那份示例里的模型名先跑通一次。跑通之后,再按你自己的需要去替换模型。
换模型前先查模型名称列表
示例里的模型名只是用来完成“第一次请求”,不代表你能用的全部模型。想换成别的模型时,官方给的分流办法是:如果模型不可用,先确认模型名称列表里是否支持该模型,再检查 API Key 和 Base URL。也就是说,报错时先分清是“你写的模型名根本不在列表里”,还是“模型存在但 Key / 地址不对”。这两类问题的处理方向完全不同。
同一个模型名能不能在多个协议下用、具体支持哪些,都要以模型名称列表为准,不要根据别的服务商经验推断。把协议、模型名、报错原文三样放在一起记录,排查会快很多。
跑通后怎么读回复
模型名对上了、请求发出去了,还要确认你能取到回复。OpenAI Compatible 成功后会返回对应格式的响应,其中 choices[0].message.content 是模型回复内容。三种协议的响应结构并不一致,如果你拿到 JSON 却拼不出文字,可以先对照本站的三种响应结构怎么读,把那一段单独理清。
到这里,一次“选协议、抄对模型名、查列表、读回复”的最小闭环就走完了。把它固化成一条可复用的检查顺序:协议决定路径和认证,模型名决定你调的是哪个模型,模型名称列表决定这个名字合不合法。三者对齐,剩下的才是业务逻辑。