MakerNice
← 全部文章
木桌上整齐堆叠着胶片盘,旁边是一本摊开的笔记本和一盏亮着的台灯价格

用 GET /v1/pricing 估算 AI 视频与图片生成预算

MakerNice 团队 · ·

想估算一批 AI 生成任务在 MakerNice 上要花多少钱,可以从公开的 GET /v1/pricing 接口读取单价,乘以计划的视频秒数或图片张数,再抽样用报价确认。字节跳动的 Seedance 2.5、阿里巴巴的 Wan 3.0 和 Qwen3 Image 都用同一套方法,不需要手抄价格表。

GET /v1/pricing 返回哪些内容?

GET /v1/pricing 不需要 API Key,列出当前价格版本的全部单价。响应最多可缓存 60 秒,用来做规划完全够用。data 里的每一项对应一种组合:

字段含义
price_version整张价目表所属的价格版本
model模型 id,如 seedance-2.5 或 wan-3.0
modet2v、i2v、flf、r2v、t2i 或 i2i
resolution计价分辨率,如 720p 或 1k
unit视频为 second,图片为 request
unit_price每单位价格,micro-USD 字符串
unit_price_usd同一价格的美元表示,字符串
# Find the price row for the exact model, mode and resolution you plan to use
curl -s https://api.makernice.com/v1/pricing | jq '.data[] | select(.model == "seedance-2.5" and .mode == "t2v" and .resolution == "720p")'

怎样把单价换算成预算?

用单价乘以每次生成消耗的数量,再乘以计划的生成次数。运算请用整数或十进制小数,因为金额以 micro-USD 为单位,1,000,000 个才是 1 美元。

类型unit每次生成的数量预算公式
视频second时长(秒)unit_price × 秒数 × 段数
图片request1(每次生成一张)unit_price × 张数
from decimal import Decimal

# row is the matching entry from GET /pricing; unit_price is micro-USD per second
unit_price = Decimal(row["unit_price"])
seconds_per_clip = 8
clip_count = 20

total_micro = unit_price * seconds_per_clip * clip_count
total_usd = total_micro / Decimal(1_000_000)
print(total_usd)
3D 黏土插画:三条价签汇入一个乘号,再流进一个小猪存钱罐
单价乘以秒数或张数,加起来就是钱包需要准备的预算。

用文字走一遍例子:20 段、每段 8 秒,一共 160 秒视频。找到你的模型、模式和分辨率对应的那一行,把单价乘以 160,再除以 1,000,000,就得到美元金额。如果一批任务混用了多个模型或分辨率,就按组分别计算再相加。没有 resolution 字段的模型(如 Kling 3.0 Pro)每个模式只有一行价格,无需选择。

为什么还要用报价确认估算?

价目表用于规划,报价才是有约束力的数字。用真实输入调用 POST /v1/generations/quote,会得到该请求的确切金额,有效 12 分钟、只能用于一次生成。对工作负载里每一种模型、模式、分辨率与时长的组合各取一个报价,再与估算对比。如果两者不一致,对比报价和价目表里的 price_version,就能知道价格是否变过。

一批任务需要钱包里留多少余额?

  • 创建任务时金额就会被冻结,所以钱包要覆盖所有在途任务,而不只是最终总价。
  • 失败的任务,以及在排队中取消的任务,都会全额释放冻结金额,因此重试失败任务不会让账单翻倍。
  • 单笔充值在 $15 到 $1,000 之间,请围绕最大的一批任务安排充值。
  • 为每个 Key 设置与用途匹配的花费上限;超过后创建返回 402 key_spend_limit_reached,账户超过每日上限则返回 402 daily_spend_limit_reached。

价格会随时间变化,所以本文不写任何具体数字。以 Pricing 页或 GET /v1/pricing 的实时价目表为准,再用报价确认;冻结、扣款、释放的规则见「视频计价怎么算」一文。

常见问题

调用 GET /v1/pricing 需要 API Key 吗?
不需要。GET /v1/pricing 和 GET /v1/models 一样是公开接口。响应最多缓存 60 秒,所以价格调整最多要一分钟才会显示出来。
怎样估算一段 10 秒 Wan 3.0 视频的费用?
找到 model 为 wan-3.0、mode 为 t2v、resolution 为默认 720p 的那一行,把 unit_price 乘以 10 再除以 1,000,000 得到美元金额,最后用报价确认。
计算时该用 unit_price 还是 unit_price_usd?
用 unit_price。它是 micro-USD 整数字符串,可以精确相乘,最后再统一换算成美元;unit_price_usd 是同一价格的美元写法,适合展示。
报价和 GET /v1/pricing 算出的估算不一致怎么办?
以报价为准,因为实际扣款就是报价金额。如果报价里的 price_version 不同,说明读取价目表之后价格变了,重新估算即可。

本文涉及的模型