指南

如何降低 AI 视频 API 成本:七种实用方法

AI 视频按秒计费,且费率随分辨率大幅上升,所以你的工作方式和你选的模型一样重要。以下七个习惯可以在不降低成品质量的前提下降低账单。

钱花在哪里

几乎所有视频模型都按每秒输出计费,费率随分辨率大幅攀升。在 Seedance 2.5 上,1080p 每秒 $0.55,是 480p 的 $0.11 的五倍。下面大部分节省都来自同一个想法:只对你已经确定想要的视频支付高费率。

1. 用最低分辨率出草稿,再渲染满意的那一条

用低分辨率检查提示词、构图和动作。草稿可行后,再用完整分辨率发送同一条提示词。成片是一次新的生成,所以不会与草稿逐帧一致,但在 480p 下可行的提示词,在 1080p 下几乎总是可行。

8 秒视频的草稿和成片费用
模型草稿8 秒草稿成片8 秒成片
Seedance 2.5480p$0.881080p$4.40
Seedance 2.0480p$0.641080p$3.20
Wan 3.0480p$0.401080p$1.36
Gemini Omni 1.1 Flash360p$0.321080p$0.80

三个 Seedance 2.5 草稿加一个成片,费用为 $2.64 加 $4.40,而四个成片则为 $17.60。

2. 了解哪些地方更高的设置不会多花钱

有些模型对两种设置收取相同的费用。这时,请始终选择更大的那个:

模型页面列出了所有价格项,所以你可以在选择尺寸之前发现这些情况。

3. 选择同一个模型中更便宜的档位

大多数系列都有价格只是零头的 fast 或 lite 版本。它们是草稿、社交媒体短视频以及在手机上观看的内容的正确选择。

完整档与较低档的每秒价格对比
系列完整档较低档
Veo 3.11080p 的 Veo 3.1:$0.201080p 的 Veo 3.1 Lite:$0.06
Seedance 2.0720p 的 Seedance 2.0:$0.15720p 的 Seedance 2.0 Fast:$0.11

想逐个模型查看最低价格,请参阅最便宜的 AI 视频 API 指南。

4. 要自己加声音时,关掉声音

有些模型对生成的声音另外收费。如果音乐或旁白要在剪辑时再加,请把 audio 设为 false:

带声音与不带声音的每秒价格
模型设置静音带声音
Kling 3.0720p$0.09$0.13
Veo 3.11080p$0.20$0.40
Veo 3.1 Fast720p$0.08$0.10

5. 先用便宜的图片挑选首帧

图生视频让你可以控制第一帧,而一张图片的价格远低于一秒视频。先用 GPT Image 2 这样的图像模型生成几张首帧,每张 $0.03,挑出最好的,再让它动起来。文生视频与图生视频指南说明了这样做何时划算。

6. 只请求你需要的时长

按秒计费意味着 10 秒的视频价格是 5 秒的两倍。如果你要在剪辑时把它剪到 4 秒,那么在模型允许的情况下,请求 4 秒或 5 秒。

7. 让 API 守住你的开支

  • 每个请求上的 max_cost_usd 设定了该任务最多可以花多少钱。标价高于它的线路会被跳过,如果一条都不剩,请求会以 422 max_cost_exceeded 被拒绝,所以 duration 或 resolution 中的一个拼写错误不会产生一笔巨额账单。
  • 失败的任务不收费。提交时价格会被预留,任务失败时就会释放,所有模型都是如此。
  • 一个 Idempotency-Key 请求头意味着,在网络错误后重新发送的请求,返回的是你已经启动的那个任务,而不是为第二个任务付费。

先出草稿再出成片,用代码实现

这个脚本先以 480p 为一个创意生成三个版本的草稿,再以 1080p 渲染选中的提示词。每个请求在价格上方带有一个 max_cost_usd,以及它自己的 Idempotency-Key。

Python
import os
import time
import uuid

import requests

API = "https://api.revana.si/v1"
KEY = os.environ["REVANA_API_KEY"]


def run(model, inp, max_cost_usd):
    key = str(uuid.uuid4())  # resend with this key after a network error: no duplicate job
    headers = {"Authorization": f"Bearer {KEY}", "Idempotency-Key": key}
    body = {"model": model, "input": inp, "max_cost_usd": max_cost_usd}
    job = requests.post(f"{API}/generations", headers=headers, json=body).json()
    while job["status"] in ("queued", "running"):
        time.sleep(5)
        job = requests.get(f"{API}/generations/{job['id']}", headers=headers).json()
    return job


prompts = [
    "A red kite climbs over a windy beach, the camera tracking it from the sand.",
    "A red kite climbs over a windy beach, seen from above as it rises toward the camera.",
    "A child runs along a windy beach pulling a red kite into the sky, slow motion.",
]

# 1. A cheap 480p draft of each idea
drafts = [run("seedance-2.5", {"prompt": p, "resolution": "480p", "duration": 8}, 1.1)
          for p in prompts]
for p, d in zip(prompts, drafts):
    print(d["status"], d.get("cost_usd"), d["output"]["urls"][0] if d["output"] else d["error"])

# 2. Render only the idea you liked, at 1080p
final = run("seedance-2.5", {"prompt": prompts[1], "resolution": "1080p", "duration": 8}, 5.3)
print(final["status"], final.get("cost_usd"))

所有请求字段见文档,$10 起的额度包见价格页面,你一分钟内就能获取 API 密钥。

常见问题

如何让 AI 视频生成更便宜?

用最低分辨率出草稿,只对你要保留的视频用完整尺寸渲染;草稿使用 fast 或 lite 档;如果你要自己加声音,就关闭生成的声音;并且只请求你需要的时长。

失败的 AI 视频生成需要付费吗?

在 Revana 上不需要。提交时价格会被预留,任务失败时就会释放,所有模型都是如此。

如何限制单次生成的最高费用?

在请求中发送 max_cost_usd。标价高于它的线路会被跳过,如果一条都不剩,请求会在任何扣费之前以 422 max_cost_exceeded 被拒绝。

低分辨率草稿看起来和成片一样吗?

不会逐帧一致:成片是一次新的生成。但草稿能说明提示词、构图和动作是否可行,这正是你付费想要弄清楚的。

请求超时时,如何避免重复付费?

发送 Idempotency-Key 请求头。再次发送相同的 key 和请求体,返回的是你已经启动的那个生成任务,而不是新的一个。

每段视频都花得更少

一个 API 密钥即可使用所有视频和图像模型,每个请求都可设置支出上限。预付额度 $10 起,失败的任务从不收费。