跳转到主要内容

Gemini 原生格式

本文页只写入 2026-03-22 已在 Crazyrouter 生产环境复核过的 Gemini Native 用法。 当前主示例模型:
  • gemini-3-pro-preview
已按成功请求经验单独整理的多模态页面:

端点

POST /v1beta/models/{model}:generateContent
POST /v1beta/models/{model}:streamGenerateContent

认证

通过 URL 参数传入 API Key:
?key=YOUR_API_KEY

基本文本生成

cURL
curl "https://crazyrouter.com/v1beta/models/gemini-3-pro-preview:generateContent?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "Explain machine learning in one sentence."
          }
        ]
      }
    ],
    "generationConfig": {
      "maxOutputTokens": 128
    }
  }'
当前生产返回的关键结构:
{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "...",
            "thoughtSignature": "..."
          }
        ]
      }
    }
  ]
}

流式生成

本轮已复核 streamGenerateContent 可以通过 SSE 返回增量内容。
cURL
curl "https://crazyrouter.com/v1beta/models/gemini-3-pro-preview:streamGenerateContent?key=YOUR_API_KEY&alt=sse" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "Write one short sentence about AI."
          }
        ]
      }
    ]
  }'
当前生产收到的 SSE 片段形态类似:
data: {"candidates":[{"content":{"parts":[{"text":"...","thoughtSignature":"..."}]}}]}

结构化输出

当前生产已复核 responseMimeType + responseSchema 可用:
cURL
curl "https://crazyrouter.com/v1beta/models/gemini-3-pro-preview:generateContent?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "Return a JSON object with keys city and country for Tokyo."
          }
        ]
      }
    ],
    "generationConfig": {
      "responseMimeType": "application/json",
      "responseSchema": {
        "type": "object",
        "properties": {
          "city": {"type": "string"},
          "country": {"type": "string"}
        },
        "required": ["city", "country"]
      }
    }
  }'
当前生产验证返回:
{"city":"Tokyo","country":"Japan"}

当前生产已复核 googleSearch 工具可用:
cURL
curl "https://crazyrouter.com/v1beta/models/gemini-3-pro-preview:generateContent?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "Use Google Search to find one recent headline from a major technology news site."
          }
        ]
      }
    ],
    "tools": [
      {
        "googleSearch": {}
      }
    ]
  }'
当前生产返回的关键字段包括:
  • groundingMetadata.webSearchQueries
  • groundingMetadata.groundingChunks
  • groundingMetadata.groundingSupports

Thinking

当前生产已复核 thinkingConfig 可用:
cURL
curl "https://crazyrouter.com/v1beta/models/gemini-3-pro-preview:generateContent?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "Which is larger, 9.11 or 9.9? Explain briefly."
          }
        ]
      }
    ],
    "generationConfig": {
      "thinkingConfig": {
        "thinkingBudget": 256
      },
      "maxOutputTokens": 512
    }
  }'
当前生产验证的关键标志:
{
  "usageMetadata": {
    "thoughtsTokenCount": 120
  }
}

generationConfig 常用字段

字段类型说明
maxOutputTokensinteger最大输出 Token 数
temperaturenumber采样温度
responseMimeTypestring结构化输出时的 MIME 类型
responseSchemaobject结构化输出约束
thinkingConfigobject思考模式配置
Gemini Native 使用 contents[].parts[] 结构,而不是 OpenAI 的 messages 结构。如果你想走 OpenAI 风格,请改用 Gemini OpenAI 兼容格式