<string>{}API 参考
Gemini streamGenerateContent
原生 SSE 文本与函数工具调用。
<string>{}POST /v1beta/models/{model}:streamGenerateContent?alt=sse
使用 x-goog-api-key 发送网关令牌,查询参数 alt=sse 选择 SSE。请求结构与非流式 generateContent 相同,路径动作不同;不要在请求体中添加 Chat 的 stream 代替它。
每个 SSE data 包含 Gemini 响应。文本和 functionCall 位于 candidates[].content.parts;检查 promptFeedback、候选索引和最终 finishReason,不能将 EOF 单独视为成功。工具定义见 tools[].functionDeclarations,结果通过 functionResponse 回传。
完整 Python SSE 与工具闭环示例包含两个运行模式、签名保留、可选 ID 关联与错误处理。规范只展开常用字段;不承诺 Live API、细粒度参数扩展或所有渠道均可用。
Read in English
媒体内容项
原生contents[].parts[] 可以包含 inlineData: {mimeType, data} 或 fileData: {mimeType, fileUri},前者使用纯 Base64;内容格式和来源必须受目标上游支持。videoMetadata、mediaResolution 是条件支持的原生扩展,不是网关统一转码或抽帧服务。
媒体输入不改变响应协议和完成检查。网关没有在已核查范围内提供 Gemini Files 上传/管理或 Interactions 端点;SDK 自动上传会产生额外的未支持请求。先使用 视频理解的完整非流式示例,流式输出仍按本接口 SSE 事件处理。
SSE 内置工具元数据
请求接受相同的有条件原生googleSearch、urlContext、codeExecution 工具字段。原生 SSE 转发上游 JSON 事件。跨事件保留候选元数据和代码/结果 part,不要把全部事件扁平化成文本,也不要假设每个事件都有完整引用记录。已有文本/函数 SSE 示例没有实现这些内置工具消费者。先使用非流式内置工具示例;增加流式处理前需按原生协议累积字节偏移与来源关联。授权
GeminiApiKeyBearerAuth
网关令牌 / Gateway token
路径参数
裸模型 ID,不含 models/ 和动作后缀 / Bare model ID without models/ or an action suffix.
示例:
"YOUR_MODEL_ID"
查询参数
选择 SSE 传输 / Select SSE transport.
可用选项:
sse 请求体
application/json
响应
检查候选结束状态并处理流内错误 / Validate candidate finish status and in-stream errors.
The response is of type string.