Skip to content

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_promptstring。发送给 AI 模型的问题或任务描述。最多 500 个字符
model_namestring。AI 模型名称。由基础模型名和版本名组成;如果只传基础模型名,系统会自动选择最新版本。例如传 gemini-1.5-pro 时,可能自动使用 gemini-1.5-pro-002。可通过 /v3/ai_optimization/gemini/llm_responses/models 获取可用模型列表。
max_output_tokensinteger可选。AI 输出的最大 token 数。最小值:1;最大值:4096;默认值:2048注意:web_search=true 或请求使用推理模型时,输出 token 数可能该限制。若 use_reasoning=true,该字段最小值为 1024
temperaturefloat可选。控制生成结果的随机性。值越高,输出越发散;值越低,输出越聚焦。取值范围:02;默认值:1.3
top_pfloat可选。控制生成的多样性,通过限制 token 采样范围实现。取值范围:01;默认值:0.9
web_searchboolean可选。是否启用联网搜索以获取当前网页信息。启用后,模型可访问并引用实时网络。默认值:false。并非所有模型都支持该参数,建议查询 /v3/ai_optimization/gemini/llm_responses/models
system_messagestring可选。用于设定 AI 的角色、语气或行为规则。最多 500 个字符
message_chainarray可选。历史对话上下文数组,用于多轮对话。数组中的每个对象都 rolemessagerole 只能是 useraimessage 最多 500 个字符。最多可传 10 个消息对象
use_reasoningboolean可选。是否启用推理模式。启用后,模型会进行推理再生成回答。默认值:false。并非所有模型都支持。若设置为 truemax_output_tokens 最小值为 1024注意: 对于 Gemini Pro 模型,use_reasoning 会自动设为 true
tagstring可选。用户自定义任务标识。最多 255 个字符。可用于请求与结果的业务;响应中的 data 对象会回传该值。

响应结构

接口返回 JSON 数据,顶层 tasks 数组,每个任务对应一次请求结果。

顶层字段

字段名类型说明
versionstring当前 API 版本。
status_codeinteger通用状态码。完整错误码见 /v3/appendix/errors。建议对异常状态建立完善的处理机制。
status_messagestring通用状态信息。完整说明见 /v3/appendix/errors
timestring执行时间,单位秒。
costfloat本次请求总费用,单位 USD。
tasks_countintegertasks 数组中的任务数量。
tasks_errorinteger返回错误的任务数量。
tasksarray任务结果数组。

tasks[] 字段

字段名类型说明
idstring任务唯一标识,UUID 格式。
status_codeinteger任务状态码,范围通常为 10000–60000。详见 /v3/appendix/errors
status_messagestring任务状态说明。
timestring任务执行时间,单位秒。
costfloat任务费用,单位 USD。基础任务费用与 money_spent
result_countintegerresult 数组数量。
patharray请求路径。
dataobject回显请求时提交的参数。
resultarray结果数组。

result[] 字段

字段名类型说明
model_namestring实使用的模型名称。
input_tokensintegertoken 总数。
output_tokensinteger输出 token 总数。
reasoning_tokensinteger推理过程消耗的 token 数。
web_searchboolean是否使用了联网搜索。
money_spentfloat第三方模型 token 费用,单位 USD。
datetimestring结果返回时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。例如:2019-11-15 12:57:46 +00:00
itemsarray结构化 AI 响应。
fan_out_queriesarray扩展搜索查询词数组,用于补主问题的检索。

items 结构说明

reasoning 对象

表示模型推理的结构化结果。

字段名类型说明
typestring固定为 reasoning
sectionsarray推理链分段。

sections[] 中的对象字段:

字段名类型说明
typestring固定为 summary_text
textstring推理摘要文本,用于概括模型思考过程。

注意:

  • 支持推理模型时才可能返回该对象
  • 即使模型支持推理,也不保证一定返回 reasoning

message 对象

表示模型生成的正式回答。

字段名类型说明
typestring固定为 message
sectionsarray回答的各个分段。
annotationsarray生成回答时引用的来源信息。若 web_search 未设为 true,该字段为 null。即便启用了 web_search,若没有检索到合适来源,也可能返回空数组。

sections[] 中的对象字段:

字段名类型说明
typestring固定为 text
textstringAI 生成的文本。

annotations[] 中的对象字段:

字段名类型说明
titlestring引用来源的域名或标题。
urlstring指向引用来源的跳转地址。该地址可能经过平台模型平台的重定向。

请求示例

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

错误处理建议

  1. 检查顶层 status_code
  2. 再检查 tasks_error 是否大于 0
  3. 遍历 tasks[],逐个检查 tasks[].status_code
  4. 若启用了 web_search,即使成功返回,annotations 也可能为空,这属于正常
  5. 若使用推理模型,不应假设 reasoning 一定存在

开发注意事项

  1. user_promptsystem_message 都有 500 字符限制
  2. message_chain 最多 10 条消息
  3. 启用 use_reasoning=true 时,max_output_tokens 至少为 1024
  4. 开启 web_search 或使用推理模型后,输出 token 可能出 max_output_tokens
  5. 单次 Live 请求支持 1 个任务
  6. 建议记录 idtagmodel_nameinput_tokensoutput_tokensmoney_spent 等字段,便于审计和成本分析

实用场景

  • 评估行业热度:某个国家或地区的行业问题,结合联网搜索获得最新市场描述,用于 SEO 选题前的市场性判断。
  • 生成带来源的摘要:开启 web_search 后获取结构化回答与引用来源,便于构建可追溯的研究素材库。
  • 搭建多轮分析助手:通过 message_chain 保留上下文,让模型连续分析机会、用户意图和方向,提高研究效率。
  • 比较不同模型输出质量:切换 model_nametemperaturetop_p 等参数,对比不同模型版本在行业分析、问答生成中的表现与成本。
  • 沉淀 AI 成本监控数据:结合 input_tokensoutput_tokensreasoning_tokensmoney_spent 字段,建立生成或研究问答场景下的调用成本监控体系。

统一入口:官网 · LLM API · 控制台