Skip to content

Gemini Generate Content

Google Gemini 原生对话格式接口,适合已经按 contents / parts 组织请求的项目。

重要提示 (关于 New API / One API 兼容性)

New API / One API 平台不支持 /v1beta/models/... 原生协议接口。 如果你使用的是 New API / One API 等中转分发平台,请勿调用此原生格式接口(中转平台无法解析 Google Gemini 的原生 JSON 结构及路由,会引发请求报错)。

迁移建议: 对于通过中转平台调用的用户,请直接使用标准的 OpenAI 兼容接口Chat Completions (/v1/chat/completions),并在请求中将 model 指定为相关的 Gemini 模型(如 [官]gemini-2.5-pro)。本站后端会自动将 OpenAI 格式无缝转换为 Gemini 格式,完全不影响您的使用。

接口信息

项目
方法POST
路径/v1beta/models/gemini-2.0-flash:generateContent
完整地址https://api.gemai.cc/v1beta/models/gemini-2.0-flash:generateContent
鉴权Authorization: Bearer sk-你的令牌

请求体示例

json
{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "请用三句话介绍 Gemini 接口格式。" }
      ]
    }
  ]
}

代码示例

bash
curl --location 'https://api.gemai.cc/v1beta/models/gemini-2.0-flash:generateContent' \
  --header "Authorization: Bearer $GEMAI_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
    "contents": [
      {
        "role": "user",
        "parts": [{ "text": "请用三句话介绍 Gemini 接口格式。" }]
      }
    ]
  }'
javascript
const response = await fetch('https://api.gemai.cc/v1beta/models/gemini-2.0-flash:generateContent', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.GEMAI_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    contents: [
      {
        role: 'user',
        parts: [{ text: '请用三句话介绍 Gemini 接口格式。' }],
      },
    ],
  }),
})

console.log(await response.json())
python
import os
import requests

response = requests.post(
    'https://api.gemai.cc/v1beta/models/gemini-2.0-flash:generateContent',
    headers={
        'Authorization': f"Bearer {os.environ['GEMAI_API_KEY']}",
        'Content-Type': 'application/json',
    },
    json={
        'contents': [
            {
                'role': 'user',
                'parts': [{'text': '请用三句话介绍 Gemini 接口格式。'}],
            },
        ],
    },
    timeout=120,
)

response.raise_for_status()
print(response.json())

返回示例

json
{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          { "text": "这是模型返回的内容。" }
        ]
      },
      "finishReason": "STOP"
    }
  ]
}

注意事项

  • URL 中的模型名可以按实际可用模型替换。
  • 多轮对话需要按时间顺序传入多条 contents