Skip to content

POST /v1beta/models/*modelAction

接口用途

Gemini 原生模型动作接口,主要用于:

  • generateContent
  • streamGenerateContent

对应路径示例:

  • POST /v1beta/models/gemini-2.5-pro:generateContent
  • POST /v1beta/models/gemini-2.5-pro:streamGenerateContent

请求路径

text
POST /v1beta/models/*modelAction

认证方式

  • Authorization: Bearer <API_KEY>
  • x-api-key: <API_KEY>
  • x-goog-api-key: <API_KEY>

路由别名

无根路径别名。

Antigravity 对应专用前缀:

text
POST /antigravity/v1beta/models/*modelAction

适用平台

  • Gemini 分组
  • 或 Antigravity 专用强制平台

上游官方规范

本项目支持说明

  • 按 URL 中的 model:action 解析目标模型和动作
  • streamGenerateContent 会启用流式并发控制
  • 会做内容审核、余额 / 订阅校验和账号调度
  • 会识别 Gemini CLI 的专属会话粘性头

参数说明

常用上游标准字段

参数类型必填说明
contentsarrayGemini 内容数组
toolsarray工具定义
generationConfigobject生成参数
safetySettingsarray安全设置

完整字段请参考 Gemini 官方规范。

KToken 差异与限制

字段 / 行为说明
URL 中的 model:action由服务端解析;不符合格式会返回 404
请求体为空返回 400 Request body is empty
分组平台默认必须是 Gemini
x-gemini-api-privileged-user-idGemini CLI 场景下会和请求体中的 tmp 目录哈希一起参与会话粘性计算
streamGenerateContent视为流式请求,参与流式并发与上游转发链路

响应说明

成功时返回标准 Gemini REST 响应;流式动作返回 SSE 风格流。

示例响应

json
{
  "candidates": [
    {
      "content": {
        "parts": [
          { "text": "你好" }
        ]
      }
    }
  ]
}

错误响应

平台不匹配

json
{
  "error": {
    "code": 400,
    "message": "API key group platform is not gemini",
    "status": "INVALID_ARGUMENT"
  }
}

请求体为空

json
{
  "error": {
    "code": 400,
    "message": "Request body is empty",
    "status": "INVALID_ARGUMENT"
  }
}

示例请求

bash
curl "https://your-domain/api/v1/v1beta/models/gemini-2.5-pro:generateContent" \
  -H "x-goog-api-key: sk-xxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "parts": [{ "text": "给我一句问候" }]
      }
    ]
  }'

注意事项

  • 如果客户端是 Gemini CLI,建议优先保留其标准头和请求体形态
  • /v1/* 不同,这组接口不会做 OpenAI / Anthropic 平台自动分流