generateContent 与 Chat Completions 有什么不同?
Gemini 原生协议把模型和动作写在 URL 中,用 contents 数组组织对话,parts 描述文本或其他输入。不要把 OpenAI 的 messages 请求原样发送到 generateContent,也不要用 choices 读取 Gemini 的 candidates 响应。
核对目录中的模型资源名称。如果名称已包含 models/,不要在路径中再拼一遍;具体 ID、命名空间和动作路径按所选模型的示例配置。
- 认证使用 Tikway Key 和 x-goog-api-key 请求头。
- 从 candidates 中读取返回内容,并检查完成状态。
- 多轮历史中的角色与内容结构按 Gemini 协议处理。
选择 Gemini 型号时,核对输入类型和上下文
同一个系列下的型号不一定支持相同输入。文字、图片、音频、视频的支持范围和计费方式,应以目录能力及协议文档为准;不能因为型号属于 Gemini 就假定它具备全部多模态功能。
长文处理需要检查上下文限制,批量任务还要考虑输出长度和失败重试。先验证文字请求,再逐项加入实际需要的输入类型,可以更清楚地定位格式和能力问题。
- 输入能力与生成能力分别核对。
- 长上下文不等于无限输入或无限输出。
- 输入资源格式、大小及附加收费单独确认。
流式输出与费用:不要把动作路径和响应解析混用
generateContent 与 streamGenerateContent 是不同动作。流式请求的路径、参数和事件格式按对应示例配置,不要把普通 JSON 当作一次性流数据解析。发生中断时结合已收到的内容、错误信息和调用记录排查。
估算费用先确认该型号的普通输入输出价格。图片、音频、视频和缓存不一定使用同一计费项;文本计算器不能代替这些任务的完整预算。
请求地址与协议
| 配置项 | 值或核对方法 |
|---|---|
| 原生文本端点 | POST https://api.tikway.ai/v1beta/models/{model}:generateContent |
| 认证 | x-goog-api-key: 你的 Tikway Key |
| 请求与响应 | contents[].parts[];读取 candidates 中的内容及完成状态 |
先核对价格,再估算预算
普通文本基础费用 = 输入 Token × 输入单价 + 输出 Token × 输出单价
模型目录的基础价格以美元、每 Token 展示;比较每百万 Token 报价时需乘以 1,000,000。计算器仅估算普通文本基础费用,缓存、图片、视频和其他附加费用需另行核对,最终以账户计费规则及调用记录为准。
接入与排错资料
常见问题
Gemini 原生请求需要在 JSON 根节点写 model 吗?
最小 generateContent 请求从 URL 获取模型。若应用同时传 model 字段,应按协议示例检查它与路径是否一致。
所有 Gemini 模型都能接收图片或视频吗?
不能按系列名称判断。请查看所选型号的输入能力、协议和价格,逐项验证实际需要的输入类型。
切换流式输出只要加 stream: true 吗?
Gemini 原生协议需要核对 streamGenerateContent 动作和相应参数、响应处理;不能直接套用 Chat Completions 的 stream 字段。