跳转到主要内容
POST
/
v1
/
llm
/
generations
curl --request POST \
  --url https://api.foxapi.cc/v1/llm/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "gemini-2.5-pro",
  "prompt": "What is happening in this video?",
  "video_urls": [
    "https://storage.googleapis.com/cloud-samples-data/video/animals.mp4"
  ],
  "max_tokens": 128
}
'
{
  "id": "task-llmrouter-1776874481-rj6bs3yb",
  "object": "llm.generation.task",
  "type": "llm",
  "model": "gemini-2.5-pro",
  "status": "pending",
  "progress": 0,
  "created": 1776874481,
  "stream": null,
  "results": null,
  "error": null
}

Documentation Index

Fetch the complete documentation index at: https://docs.foxapi.cc/llms.txt

Use this file to discover all available pages before exploring further.

授权

Authorization
string
header
必填

所有接口均需要使用 Bearer Token 进行认证。在请求头中添加:

Authorization: Bearer YOUR_API_KEY

YOUR_API_KEY 为 API Token(sk-... 格式)。

请求体

application/json
model
string
默认值:gemini-2.5-pro
必填

模型名,常用视频模型:

  • gemini-2.5-pro(建议使用)
  • nemotron-3-nano-omni(仅单视频)
示例:

"gemini-2.5-pro"

"nemotron-3-nano-omni"

prompt
string
必填

用户提示词,最多 100,000 字符。

Maximum string length: 100000
示例:

"What is happening in this video?"

video_urls
string[]
必填

视频源数组(1–10 个)。每个元素接受以下两种形式:

  • 公网 HTTP/HTTPS URL
  • data:video/<type>;base64,<payload> data URI(base64 内联,注意视频体积大)

URL 格式约束(基于 fal openrouter 实测,2026-05-13):

  • 直接视频文件:扩展名必须是 .mp4 / .mpeg / .mpg / .mov / .webm
  • YouTube 视频:支持 https://www.youtube.com/watch?v=<id>https://youtu.be/<id>(仅 gemini-* 模型可用)
  • 不支持 YouTube Shorts URL(https://www.youtube.com/shorts/<id>),上游会返回 422。客户端可将 <id> 改写为 watch?v=<id> 形式后再调用

模型限制

  • gemini-2.5-pro:支持多视频
  • nemotron-3-nano-omni:仅支持单视频,video_urls.length > 1 → 422
  • 其他 LLM 模型不支持视频

成本提示:视频按帧 + 时间编码,30s 视频可能 20K+ tokens。建议短片段或低帧率源。

Required array length: 1 - 10 elements
示例:
[
"https://storage.googleapis.com/cloud-samples-data/video/animals.mp4"
]
sync
boolean
默认值:false

同步模式(参见 llm-text schema)。

示例:

false

stream
boolean
默认值:false

是否流式(参见 llm-text schema)。

示例:

false

max_tokens
integer | null

生成 token 上限。可选。

必填范围: x >= 1
示例:

128

temperature
number | null

采样温度,区间 [0, 2]。可选。

必填范围: 0 <= x <= 2
system_prompt
string | null

系统指令。可选。

Maximum string length: 10000
reasoning
boolean | null

是否包含 reasoning tokens。gemini-2.5-pro 等思考模型可能需设为 true

响应

任务已创建(async 模式)/ 完整响应(sync 模式)

Submit 响应,对齐统一任务标准形状。results / error 在 submit 阶段固定为 null,任务完成/失败后通过 GET /v1/tasks/{task_id} 返回。sync=true, stream=false 模式下端点直接返回完整 OpenAI ChatCompletion JSON。

id
string
必填

任务 ID,格式 task-llmrouter-{timestamp}-{8random}

示例:

"task-llmrouter-1776874565-yq3szvcu"

object
enum<string>
必填
可用选项:
llm.generation.task
示例:

"llm.generation.task"

type
enum<string>
必填
可用选项:
llm
示例:

"llm"

model
string
必填

客户端提交的模型名(原样回显)

示例:

"gemini-2.5-pro"

status
enum<string>
必填
可用选项:
pending
示例:

"pending"

progress
integer
必填
示例:

0

created
integer
必填
示例:

1776874565

stream
object

stream=true 时返回 {url: ...}stream=false 时为 null

results
object[] | null

submit 阶段固定 null;任务完成后通过 GET /v1/tasks/{task_id} 返回,results[0] 为完整 OpenAI ChatCompletion 响应。

示例:

null

error
object

submit 阶段固定 null;任务失败时通过 GET /v1/tasks/{task_id} 返回。

示例:

null