模型广场/ Google/ veo-3.1-fast
AI VIDEO

veo-3.1-fast

by Google

Google Veo 3.1 快速档 — 文/图生视频,电影级运镜、镜头连贯、原生音画同步,适合短视频与广告素材批量生产。

FastFast + Audio
起步价 · 按秒计费
¥— /秒
Base URL
https://tommyapi.com/v1
Model 名
veo-3.1-fast
SHOWCASE · 平台真实产出

效果预览

以下为同类模型的真实生成示例,展示可达到的画质与风格。

veo-3.1-fast
veo-3.1-fast
veo-3.1-fast
veo-3.1-fast
veo-3.1-fast
veo-3.1-fast
PRICING

定价

充值 ¥1 = ¥1,标价即实付,按模型与实际用量计费,计费逐笔透明。

档位计费价格
veo-3.1-fast按秒计费¥— /秒
USE CASES

你可以用它做什么

短视频增长内容

用 Veo 3.1 快速批量生成社交平台竖屏短片,支持 720p / 1080p、多画幅与时长,先快速试产、再规模化投放。

开始使用 API →

产品演示与首尾帧控制

用首帧 / 尾帧控制生成过渡,锁定构图与品牌元素,把中文脚本变成可交付的产品演示片。

开始使用 API →
QUICKSTART

代码示例

先提交视频任务并保存 task_id,再查询进度。成功状态为 succeeded,视频地址在 video_url;失败时查看 fail_reason。只需提交一次。

import json
import os
import time
from urllib.request import Request, urlopen
from urllib.parse import quote

BASE = "https://tommyapi.com/v1"
KEY = os.environ["TOMMYAPI_KEY"]

def request(path, payload=None):
    data = json.dumps(payload).encode() if payload is not None else None
    req = Request(BASE + path, data=data, headers={
        "Authorization": "Bearer " + KEY,
        "Content-Type": "application/json",
    })
    with urlopen(req, timeout=150) as response:
        return json.load(response)

# 只提交一次;保存 task_id,查询中断后继续查这个任务。
task = request("/video/generations", {
    "model": "veo-3.1-fast",
    "prompt": "霓虹城市夜景,镜头缓慢向前推进",
    "duration": 4,
})
task_id = task["task_id"]
print("task_id:", task_id, flush=True)
for _ in range(120):
    time.sleep(5)
    task = request("/videos/" + quote(task_id, safe=""))
    if task["status"] == "succeeded":
        print(task["video_url"])
        break
    if task["status"] == "failed":
        raise RuntimeError(task.get("fail_reason") or "视频生成失败")
else:
    raise TimeoutError("查询超时;保存 task_id 继续查询,不要重复提交:" + task_id)
# 在环境变量 TOMMYAPI_KEY 中设置 API Key。此请求会创建一个计费任务。
curl --fail-with-body https://tommyapi.com/v1/video/generations \
  -H "Authorization: Bearer $TOMMYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"veo-3.1-fast","prompt":"霓虹城市夜景,镜头缓慢向前推进","duration":4}'

# 保存返回的 task_id,用实际值替换 TASK_ID;每隔 5 秒查询这个任务。
curl --fail-with-body https://tommyapi.com/v1/videos/TASK_ID \
  -H "Authorization: Bearer $TOMMYAPI_KEY"

# status=succeeded 时读取 video_url;status=failed 时读取 fail_reason。
# 查询超时后继续查询同一 task_id,不要重复提交生成请求。
const BASE = "https://tommyapi.com/v1";
const KEY = process.env.TOMMYAPI_KEY;
if (!KEY) throw new Error("请设置 TOMMYAPI_KEY");

async function request(path, payload) {
  const response = await fetch(BASE + path, {
    method: payload ? "POST" : "GET",
    headers: { Authorization: `Bearer ${KEY}`, "Content-Type": "application/json" },
    body: payload ? JSON.stringify(payload) : undefined,
    signal: AbortSignal.timeout(150000),
  });
  const body = await response.json();
  if (!response.ok) throw new Error(JSON.stringify(body));
  return body;
}

// 只提交一次;保存 task_id,查询中断后继续查这个任务。
const created = await request("/video/generations", {
  model: "veo-3.1-fast",
  prompt: "霓虹城市夜景,镜头缓慢向前推进",
  duration: 4,
});
const taskId = created.task_id;
console.log("task_id:", taskId);
let completed = false;
for (let attempt = 0; attempt < 120; attempt++) {
  await new Promise(resolve => setTimeout(resolve, 5000));
  const task = await request("/videos/" + encodeURIComponent(taskId));
  if (task.status === "succeeded") {
    console.log(task.video_url);
    completed = true;
    break;
  }
  if (task.status === "failed") throw new Error(task.fail_reason || "视频生成失败");
}
if (!completed) throw new Error("查询超时;继续查询这个 task_id,不要重复提交:" + taskId);
FAQ

常见问题

这个模型擅长什么?+
Google Veo 3.1 快速档 — 文/图生视频,电影级运镜、镜头连贯、原生音画同步,适合短视频与广告素材批量生产。
如何调用这个模型?+
使用 POST /v1/video/generations 提交一次生成请求,保存返回的 task_id,再通过 GET /v1/videos/{task_id} 查询。详见上方 Python、curl 与 Node 示例。
价格怎么算?+
充值 ¥1 = ¥1 账面余额,标价即实付,按模型与实际用量计费,计费逐笔透明,无月费。
国内能稳定访问吗?+
可以,国内网络优化直连,无需自建代理;多渠道自动容错,主线路异常自动切换。

用 veo-3.1-fast 开始构建

官方源头直连 · 标价即实付 · 充值 ¥1 = ¥1

已复制到剪贴板