使用 Google Gemini API 进行文本生成
POST /v1beta/models/gemini-2.5-pro:generateContent{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "I am Gemini, a large language model developed by Google...",
"thoughtSignature": "Cv0oAY89a19fZ/pV0io*****"
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 1097,
"candidatesTokenCount": 403,
"totalTokenCount": 2779,
"trafficType": "ON_DEMAND",
"promptTokensDetails": [
{
"modality": "IMAGE",
"tokenCount": 1089
},
{
"modality": "TEXT",
"tokenCount": 8
}
],
"candidatesTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 403
}
],
"thoughtsTokenCount": 1279
},
"modelVersion": "gemini-2.5-pro",
"createTime": "2025-12-22T13:20:13.753813Z",
"responseId": "jUVJaZWBLvzN998P1tDo4Q0"
}https://surgeai.one/v1beta/models/{model}:{method}| Method | Example | Description |
|---|---|---|
generateContent | https://surgeai.one/v1beta/models/gemini-2.5-pro:generateContent | 一次性生成完整响应。适用于需要在处理前获取完整响应的应用程序。 |
streamGenerateContent | https://surgeai.one/v1beta/models/gemini-2.5-pro:streamGenerateContent | 增量流式生成响应。非常适合聊天界面和需要低延迟的实时应用程序。 |
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
contents | array | Yes | - | - | 与模型当前对话的内容。对于单轮查询,包含一个实例。对于多轮查询(如聊天),包含对话历史和最新请求。 |
contents.role | string | Yes | - | user, model | 消息发送者的角色。 |
contents.parts | array | Yes | - | - | 消息的内容部分,可以包含不同类型的内容(text、inlineData 等)。 |
contents.parts.text | string | Yes | - | - | 该部分的文本内容。 |
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
tools | array | No | - | - | 模型可用于生成下一个响应的工具列表。支持的工具包括 Function 和 codeExecution。 |
toolConfig | object | No | - | - | 请求中指定的任何工具的配置。 |
safetySettings | array | No | - | - | 用于过滤不安全内容的唯一 SafetySetting 实例列表。 |
generationConfig | object | No | - | - | 内容生成的配置选项。 |
generationConfig.temperature | number | No | - | 0.0-1.0 | 控制输出的随机性。较低的值产生更确定性的结果。 |
generationConfig.topP | number | No | - | 0.0-1.0 | 核采样概率阈值。 |
generationConfig.topK | integer | No | - | - | Top-k 采样参数。 |
generationConfig.maxOutputTokens | integer | No | - | - | 要生成的最大 token 数量。 |
generationConfig.thinkingConfig | object | No | - | - | 思考功能的配置。 |
generationConfig.imageConfig | object | No | - | - | 图像生成的配置。 |
generationConfig.mediaResolution | enum | No | - | MEDIA_RESOLUTION_UNSPECIFIED, MEDIA_RESOLUTION_LOW, MEDIA_RESOLUTION_MEDIUM, MEDIA_RESOLUTION_HIGH | 指定输入媒体的分辨率。 |
| Error Code | Error Name | Description |
|---|---|---|
| 401 | Unauthorized | API 密钥缺失或无效 |
| 403 | Forbidden | 您的 API 密钥没有访问此资源的权限,或余额不足以执行请求的操作 |
| 429 | Too Many Requests | 您已超出速率限制 |
| 500 | Internal server error | 发生内部服务器错误 |
| 503 | Content policy violation | 内容因安全问题被阻止(实际状态码为 400) |