主题
Gemini LLM 实时响应
接口概述
Live Gemini LLM Responses 接口用于基于参数,调用指定的 Gemini AI 模型并返回结构化响应结果。
请求方式: POST接口地址: https://api.seermartech.cn/v3/ai_optimization/gemini/llm_responses/live
使用说明
- 所有 POST 数据使用
JSON(UTF-8 编码)提交 - 请求体格式为 JSON 数组:
[{ ... }] - 每次调用 支持 1 个任务
- 接口频率上限:每分钟最多 2000 次 API 调用
- LLM Responses 中每个平台的 Live 并发任务数上限为每账号 30 个
- 当前该实时接口的 最长执行时间可达 120 秒
计费说明
该接口会产生基础任务费用以及模型 token 费用。
- 扣费以响应头
X-SeerMarTech-Charge-CNY为准 - 响应结果中的
money_spent表示第三方模型 token 消耗成本(USD) - 响应顶层或任务层级中的
cost为本次请求费用(USD)
根据文中示例响应:
- 顶层
cost: 0.0376568 - 参考价约 ¥0.6025 / 次
注意:费用会受模型、输出长度、是否启用联网搜索、是否启用推理等因素影响。
请求参数
任务字段说明
| 字段名 | 类型 | 说明 |
|---|---|---|
user_prompt | string | 填。发送给 AI 模型的问题或任务描述。最多 500 个字符。 |
model_name | string | 填。AI 模型名称。由基础模型名和版本名组成;如果只传基础模型名,系统会自动选择最新版本。例如传 gemini-1.5-pro 时,可能自动使用 gemini-1.5-pro-002。可通过 /v3/ai_optimization/gemini/llm_responses/models 获取可用模型列表。 |
max_output_tokens | integer | 可选。AI 输出的最大 token 数。最小值:1;最大值:4096;默认值:2048。注意: 当 web_search=true 或请求使用推理模型时,输出 token 数可能该限制。若 use_reasoning=true,该字段最小值为 1024。 |
temperature | float | 可选。控制生成结果的随机性。值越高,输出越发散;值越低,输出越聚焦。取值范围:0 到 2;默认值:1.3。 |
top_p | float | 可选。控制生成的多样性,通过限制 token 采样范围实现。取值范围:0 到 1;默认值:0.9。 |
web_search | boolean | 可选。是否启用联网搜索以获取当前网页信息。启用后,模型可访问并引用实时网络。默认值:false。并非所有模型都支持该参数,建议查询 /v3/ai_optimization/gemini/llm_responses/models。 |
system_message | string | 可选。用于设定 AI 的角色、语气或行为规则。最多 500 个字符。 |
message_chain | array | 可选。历史对话上下文数组,用于多轮对话。数组中的每个对象都 role 和 message:role 只能是 user 或 ai;message 最多 500 个字符。最多可传 10 个消息对象。 |
use_reasoning | boolean | 可选。是否启用推理模式。启用后,模型会进行推理再生成回答。默认值:false。并非所有模型都支持。若设置为 true,max_output_tokens 最小值为 1024。注意: 对于 Gemini Pro 模型,use_reasoning 会自动设为 true。 |
tag | string | 可选。用户自定义任务标识。最多 255 个字符。可用于请求与结果的业务;响应中的 data 对象会回传该值。 |
响应结构
接口返回 JSON 数据,顶层 tasks 数组,每个任务对应一次请求结果。
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 通用状态码。完整错误码见 /v3/appendix/errors。建议对异常状态建立完善的处理机制。 |
status_message | string | 通用状态信息。完整说明见 /v3/appendix/errors。 |
time | string | 执行时间,单位秒。 |
cost | float | 本次请求总费用,单位 USD。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | 返回错误的任务数量。 |
tasks | array | 任务结果数组。 |
tasks[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。 |
status_code | integer | 任务状态码,范围通常为 10000–60000。详见 /v3/appendix/errors。 |
status_message | string | 任务状态说明。 |
time | string | 任务执行时间,单位秒。 |
cost | float | 任务费用,单位 USD。基础任务费用与 money_spent。 |
result_count | integer | result 数组数量。 |
path | array | 请求路径。 |
data | object | 回显请求时提交的参数。 |
result | array | 结果数组。 |
result[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
model_name | string | 实使用的模型名称。 |
input_tokens | integer | token 总数。 |
output_tokens | integer | 输出 token 总数。 |
reasoning_tokens | integer | 推理过程消耗的 token 数。 |
web_search | boolean | 是否使用了联网搜索。 |
money_spent | float | 第三方模型 token 费用,单位 USD。 |
datetime | string | 结果返回时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。例如:2019-11-15 12:57:46 +00:00 |
items | array | 结构化 AI 响应。 |
fan_out_queries | array | 扩展搜索查询词数组,用于补主问题的检索。 |
items 结构说明
reasoning 对象
表示模型推理的结构化结果。
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 reasoning。 |
sections | array | 推理链分段。 |
sections[] 中的对象字段:
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 summary_text。 |
text | string | 推理摘要文本,用于概括模型思考过程。 |
注意:
- 支持推理模型时才可能返回该对象
- 即使模型支持推理,也不保证一定返回
reasoning
message 对象
表示模型生成的正式回答。
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 message。 |
sections | array | 回答的各个分段。 |
annotations | array | 生成回答时引用的来源信息。若 web_search 未设为 true,该字段为 null。即便启用了 web_search,若没有检索到合适来源,也可能返回空数组。 |
sections[] 中的对象字段:
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 text。 |
text | string | AI 生成的文本。 |
annotations[] 中的对象字段:
| 字段名 | 类型 | 说明 |
|---|---|---|
title | string | 引用来源的域名或标题。 |
url | string | 指向引用来源的跳转地址。该地址可能经过平台模型平台的重定向。 |
请求示例
cURL
bash
curl --location --request POST "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_responses/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"system_message": "请以商务会议沟通风格回答",
"message_chain": [
{
"role": "user",
"message": "你好,最近法国文消费趋势如何?"
},
{
"role": "ai",
"message": "我可以从市场需求、热度和消费趋势几个维度进行分析。"
}
],
"max_output_tokens": 200,
"temperature": 0.3,
"top_p": 0.5,
"model_name": "gemini-2.5-flash",
"web_search": true,
"user_prompt": "请说明法国当前游乐园业务的市场性和发展前景"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_responses/live"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
payload = [
{
"system_message": "请以商务会议沟通风格回答",
"message_chain": [
{
"role": "user",
"message": "你好,最近法国文消费趋势如何?"
},
{
"role": "ai",
"message": "我可以从市场需求、热度和消费趋势几个维度进行分析。"
}
],
"max_output_tokens": 200,
"temperature": 0.3,
"top_p": 0.5,
"model_name": "gemini-2.5-flash",
"web_search": True,
"user_prompt": "请说明法国当前游乐园业务的市场性和发展前景"
}
]
response = requests.post(url, headers=headers, json=payload, timeout=120)
print(response.json)TypeScript
typescript
import axios from "axios";
async function callGeminiLlmResponsesLive {
const url = "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_responses/live";
const payload = [
{
system_message: "请以商务会议沟通风格回答",
message_chain: [
{
role: "user",
message: "你好,最近法国文消费趋势如何?"
},
{
role: "ai",
message: "我可以从市场需求、热度和消费趋势几个维度进行分析。"
}
],
max_output_tokens: 200,
temperature: 0.3,
top_p: 0.5,
model_name: "gemini-2.5-flash",
web_search: true,
user_prompt: "请说明法国当前游乐园业务的市场性和发展前景"
}
];
const response = await axios.post(url, payload, {
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
},
timeout: 120000
});
console.log(response.data);
}
callGeminiLlmResponsesLive.catch(console.error);响应示例
json
{
"version": "0.1.20251208",
"status_code": 20000,
"status_message": "Ok.",
"time": "5.5958 sec.",
"cost": 0.0376568,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "0db2c2d6-7b1d-4e2b-9d42-1234567890ab",
"status_code": 20000,
"status_message": "Ok.",
"time": "5.5821 sec.",
"cost": 0.0376568,
"result_count": 1,
"path": [
"v3",
"ai_optimization",
"gemini",
"llm_responses",
"live"
],
"data": {
"api": "ai_optimization",
"function": "llm_responses",
"se": "gemini",
"system_message": "请以商务会议沟通风格回答",
"message_chain": [
{
"role": "user",
"message": "你好,最近法国文消费趋势如何?"
},
{
"role": "ai",
"message": "我可以从市场需求、热度和消费趋势几个维度进行分析。"
}
],
"temperature": 0.3,
"model_name": "gemini-2.5-flash",
"top_p": 0.5,
"web_search": true,
"user_prompt": "请说明法国当前游乐园业务的市场性和发展前景"
},
"result": [
{
"model_name": "gemini-2.5-flash",
"input_tokens": 124,
"output_tokens": 211,
"reasoning_tokens": 0,
"web_search": true,
"money_spent": 0.0123,
"datetime": "2025-01-15 12:57:46 +00:00",
"items": [
{
"type": "message",
"sections": [
{
"type": "text",
"text": "法国游乐园行业目前仍备较强性,主要受、家庭消费和主题娱乐升级带动。若结合区域流量、季节性客群与票务价格策略进行评估,仍有较好的商业分析价值。"
}
],
"annotations": [
{
"title": "示例来源",
"url": "https://example.com/source"
}
]
}
],
"fan_out_queries": [
"France amusement park market trends",
"France tourism consumer demand"
]
}
]
}
]
}状态码与错误处理
- 顶层
status_code=20000表示请求成功 - 任务级
tasks[].status_code=20000表示该任务执行成功 - 状态码表示参数错误、鉴权失败、额度不足、时或服务执行异常等
- 完整错误码和说明请参考:
/v3/appendix/errors
错误处理建议
- 检查顶层
status_code - 再检查
tasks_error是否大于0 - 遍历
tasks[],逐个检查tasks[].status_code - 若启用了
web_search,即使成功返回,annotations也可能为空,这属于正常 - 若使用推理模型,不应假设
reasoning一定存在
开发注意事项
user_prompt和system_message都有 500 字符限制message_chain最多 10 条消息- 启用
use_reasoning=true时,max_output_tokens至少为1024 - 开启
web_search或使用推理模型后,输出 token 可能出max_output_tokens - 单次 Live 请求支持 1 个任务
- 建议记录
id、tag、model_name、input_tokens、output_tokens、money_spent等字段,便于审计和成本分析
实用场景
- 评估行业热度:某个国家或地区的行业问题,结合联网搜索获得最新市场描述,用于 SEO 选题前的市场性判断。
- 生成带来源的摘要:开启
web_search后获取结构化回答与引用来源,便于构建可追溯的研究素材库。 - 搭建多轮分析助手:通过
message_chain保留上下文,让模型连续分析机会、用户意图和方向,提高研究效率。 - 比较不同模型输出质量:切换
model_name、temperature、top_p等参数,对比不同模型版本在行业分析、问答生成中的表现与成本。 - 沉淀 AI 成本监控数据:结合
input_tokens、output_tokens、reasoning_tokens、money_spent字段,建立生成或研究问答场景下的调用成本监控体系。