Skip to main content

一、环境变量

在部署环境中设置以下值,不要把密钥写入源代码:
可以替换 GEMINI_MODEL来使用其他 Gemini 系列模型。 请求地址为:

二、分意图请求说明

1、媒体视频识别

通过我们的原生 Gemini 路由,把完整 MP4 以 Base64 inlineData 发送给模型进行识别。
Byte API 的该路由只支持 inlineData。不要使用 Google Gemini File API、fileData.fileUri 或把视频 URL 直接放入请求体。

Python

依赖:pip install requests

Java(JDK 17+)

不需要额外 HTTP 依赖。jsonString 用于安全地将提示词写入 JSON;Base64 字符串本身无需再转义。
生产项目如已使用 Jackson、Gson 等 JSON 库,建议由该库构造请求体,避免手写 JSON。

JavaScript(Node.js 18+)

Node.js 18 及以上已提供全局 fetch

2、文本聊天

文本聊天与视频识别使用相同的 Gemini 原生端点。将系统提示词放在顶层 systemInstruction,将用户消息放在 contents 中即可;不需要 inlineData
以下示例中的系统提示词是“我是一个地理专家”,用户提问是“什么是丹霞地貌”。generationConfig 是可选项,不写时使用模型/网关的默认值。

Python

依赖:pip install requests

Java(JDK 17+)

JavaScript(Node.js 18+)

生产配置要点

  • 认证使用 Authorization: Bearer <API_KEY>
  • Base64 后的体积约为原视频的 4 / 3;例如 20 MB MP4 约为 26.7 MB,加上 JSON 包装后还会略增。请相应提高生产环境应用和反向代理的请求体大小限制。
  • 为视频请求配置至少 300 秒的客户端读取超时与反向代理上游读取超时。不要复用面向普通文本聊天的短超时。
  • 由于视频大小不确定,建议按示例代码来,不设置maxOutputTokens或设置足够的 maxOutputTokens