
先确认你调用的是 Gemini 路径
AIGoCode 第一次请求文档把 OpenAI Compatible、Claude Messages 和 Gemini generateContent 分成三种接口。准备使用 Gemini 时,先选择文档中的“Gemini generateContent”示例,不要把其他协议的请求体或认证头直接拼过来。
URL 和 Key 放置位置先记清
文档示例把请求发往 https://api.aigocode.dev/v1beta/models/gemini-3.8-flash:generateContent,并把 API Key 放在 URL 的 key 查询参数中。Key 仍然只保存在本地环境变量,再由脚本读取后拼接请求;不要把真实 Key 写进仓库、截图或工单。
请求体只保留最小字段
最小示例包含 contents 数组,数组中的 parts 再放入一段 text。文档还给出 generationConfig.thinkingConfig,可以明确设置 thinkingBudget 和 includeThoughts。第一次验证时先保持示例结构,只替换模型或提示词,避免同时改动多个层级。
成功响应先找 candidates
Gemini 示例的成功响应以 candidates 数组开始,候选内容位于 content.parts,文字位于其中的 text 字段。解析代码应先判断响应是否包含候选,再读取文字;如果只按 OpenAI 的 choices[0].message.content 取值,页面可能会显示空结果。
用一次最小请求定位问题
按地址、Key、请求体、响应四步记录:请求是否到达 v1beta 路径,Key 是否来自本地环境变量,contents.parts 是否存在,响应是否出现 candidates。四项都通过后,再加入业务字段或更长的内容;这样能把认证、请求体和解析问题分开。
结语
Gemini generateContent 的第一条请求,关键是沿用官方示例的协议边界:地址带模型和方法,Key 放在查询参数,请求体使用 contents/parts,响应从 candidates/content/parts/text 读取。先跑通最小结构,再接入业务代码,排错会更快。