API 参考

Gemini API

通过 Gemini 原生 generateContent 接口发送内容并读取模型回复。

POST https://api.aigocode.dev/v1beta/models/{model}:generateContent

模型 ID 写在请求路径中,消息内容放在请求体的 contents 字段,鉴权使用 x-goog-api-key: YOUR_API_KEY。

选择支持 Gemini 原生接口、包含目标模型的分组后,即可通过 HTTP 或原生 Gemini 客户端接入。

请求参数

字段类型必填说明
路径中的 {model}string是当前分组中的 Gemini 模型 ID
contentsarray是输入内容列表
contents[].rolestring否角色;多轮对话使用 user 和 model
contents[].partsarray是内容块列表,文本放在 text 中
systemInstructionobject否系统指令

请求示例

下面调用 gemini-4-argon:

export AIGOCODE_API_KEY="填写 Gemini 分组的 API Key"

curl "https://api.aigocode.dev/v1beta/models/gemini-4-argon:generateContent" \
  -H "x-goog-api-key: $AIGOCODE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "contents": [
    {
      "parts": [
        {
          "text": "Reply with exactly: Hello from AIGoCode!"
        }
      ]
    }
  ]
}'
$env:AIGOCODE_API_KEY = "填写 Gemini 分组的 API Key"

$body = @{
  contents = @(
    @{
      parts = @(
        @{ text = "Reply with exactly: Hello from AIGoCode!" }
      )
    }
  )
} | ConvertTo-Json -Depth 6

$response = Invoke-RestMethod `
  -Method Post `
  -Uri "https://api.aigocode.dev/v1beta/models/gemini-4-argon:generateContent" `
  -Headers @{ "x-goog-api-key" = $env:AIGOCODE_API_KEY } `
  -ContentType "application/json; charset=utf-8" `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))

$response | ConvertTo-Json -Depth 20
set "AIGOCODE_API_KEY=填写 Gemini 分组的 API Key"

curl.exe "https://api.aigocode.dev/v1beta/models/gemini-4-argon:generateContent" ^
  -H "x-goog-api-key: %AIGOCODE_API_KEY%" ^
  -H "Content-Type: application/json" ^
  -d "{\"contents\":[{\"parts\":[{\"text\":\"Reply with exactly: Hello from AIGoCode!\"}]}]}"

响应

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "text": "Hello from AIGoCode!"
          }
        ]
      },
      "finishReason": "STOP"
    }
  ],
  "modelVersion": "gemini-4-argon"
}

从 candidates[].content.parts[] 中读取正文文本,finishReason 表示生成结束原因。用量信息位于 usageMetadata,常见字段包括 promptTokenCount、candidatesTokenCount 和 totalTokenCount。

多轮对话

将历史内容依次放入 contents,用户消息使用 user,模型回复使用 model。返回内容中的 thoughtSignature 等字段随对应内容原样保留,再传回后续请求。

控制台的「使用统计」可查看模型调用、输入输出与缓存记录,以及实际额度消耗。

相关入口

本页目录