Gemini 原生协议
使用 contents 与 generationConfig 发起原生或兼容生成。
POST
/v1beta/models/:model:generateContentscope · chat 或 responses请求示例#
curl "https://www.ackddos.store/v1beta/models/your-public-model:generateContent" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "介绍一下向量检索。"
}
]
}
],
"generationConfig": {
"maxOutputTokens": 256
}
}'| 方法 | 端点 |
|---|---|
| 同步生成 | /v1beta/models/:model:generateContent |
| SSE 生成 | /v1beta/models/:model:streamGenerateContent?alt=sse |
| 本地 Token 估算 | /v1beta/models/:model:countTokens |
原生字段与转换#
Gemini 原生上游保留 inline 图像/音频/视频、文件 URI、thought signatures、generationConfig、安全设置与工具定义。兼容转换支持文本、system、图像/PDF、函数调用/结果和 JSON schema 等字段。
- 原生 thinking、缓存和视频配置会要求匹配原生路由,避免跨协议降级丢失功能。
candidateCount必须为 1;不支持多候选生成。- 文件 URI 限于受支持的 Google 上传文件 URL 或
gs://;权限仍由上游决定。 - countTokens 是本地估算,响应头为
x-token-count-source: estimated,不代表供应商 tokenizer 的精确结果。
鉴权可用 x-goog-api-key 或 Bearer;不接受查询参数密钥。按模型生成端点也支持 /v1 前缀,OpenAI 模型目录仍为 /v1/models。