跳到正文

从 fal、Replicate或 WaveSpeed 迁移过来

把 Seedance 2.0 和 Qwen-Image 的调用迁到 /v1:认证、型号 ID、每个字段、异步任务和回调,以及不能直接沿用的部分。

三家文档核对日期2026-10-22OpenAPIllms.txt

不只是换个接口地址

三家都一样,只换接口地址和 Key 是不够的。每个请求还要做这些改动:

  • Key:Authorization: Bearer,Key 以 sk_test_ 或 sk_live_ 开头。
  • 型号 ID 放在请求体的 model 里,文字、首帧和参考图共用一个 ID。
  • 每个生成请求都带 Idempotency-Key 请求头。
  • 价格上限:max_credits,或 POST /v1/quotes 返回的 quote_id。
  • 结果是一个任务:轮询 GET /v1/jobs/{id},或接收本站带签名的回调。
fal
和本站最接近:Seedance 的字段名大多沿用 fal 的。另外要把 image_urls 改名为 reference_image_urls,duration 改传数字,fal_webhook 移到请求体里,改名为 webhook_url。
Replicate
把字段从 input 里拿出来。另外把 image 改名为 image_url,reference_images 改名为 reference_image_urls,webhook 改名为 webhook_url。
WaveSpeed
另外把 image 改名为 image_url,reference_images 改名为 reference_image_urls,并把 standard_webhook 移到请求体里,改名为 webhook_url。结果从 GET /v1/jobs/{id} 读取。

认证

请求发到哪里,怎么认证。

平台接口地址认证请求头
Pershothttps://api.pershot.app/v1Authorization: Bearer $API_KEY
falhttps://queue.fal.runAuthorization: Key $FAL_KEY
Replicatehttps://api.replicate.com/v1Authorization: Bearer $REPLICATE_API_TOKEN
WaveSpeedhttps://api.wavespeed.ai/api/v3Authorization: Bearer $WAVESPEED_API_KEY

开发者 API 需申请开通:在创作台的 API Keys 页面申请。Key 只显示一次。开发者 API Key 花的是开发者 API 余额,同一个 Key 也可以作为 Bearer 请求头用在 MCP 服务上。

型号 ID

三家的 ID 写在 URL 里;本站的写在请求体的 model 里。本站一个 ID 就能覆盖文字、首帧和参考图:由你传的字段决定。

各平台的型号 ID
本站falReplicateWaveSpeed说明
seedance-2.0-fastbytedance/seedance-2.0/fast/text-to-videobytedance/seedance-2.0/fast/image-to-videobytedance/seedance-2.0/fast/reference-to-videobytedance/seedance-2.0-fastbytedance/seedance-2.0-fast/text-to-videobytedance/seedance-2.0-fast/image-to-video文字、首帧和参考图共用一个 ID。
seedance-2.0-minibytedance/seedance-2.0/mini/text-to-videobytedance/seedance-2.0/mini/image-to-videobytedance/seedance-2.0/mini/reference-to-videobytedance/seedance-2.0-minibytedance/seedance-2.0-mini/text-to-video文字、首帧和参考图共用一个 ID。
qwen-image-2512fal-ai/qwen-image-2512qwen/qwen-image-2512wavespeed-ai/qwen-image/text-to-image-2512同一套开源权重。
qwen-image-2512-lightningfal-ai/qwen-image-2512/lora无无本站的 4 步 Lightning 档。fal 在它的 /lora 接口上以 LoRA 方式运行;Replicate 和 WaveSpeed 上我们没找到现成的 Lightning 模型。
qwen-image-edit-2511fal-ai/qwen-image-edit-2511qwen/qwen-image-edit-2511wavespeed-ai/qwen-image/edit-2511同一套开源权重。
qwen-image-edit-2511-lightningfal-ai/qwen-image-edit-2511/lora无无本站的 4 步 Lightning 档。fal 在它的 /lora 接口上以 LoRA 方式运行;Replicate 和 WaveSpeed 上我们没找到现成的 Lightning 模型。
给 AI 智能体
给 AI 智能体读的纯文本:输入、可用取值、每种设置的价格和请求示例seedance-2.0-fastseedance-2.0-miniqwen-image-2512-lightningqwen-image-2512qwen-image-edit-2511-lightningqwen-image-edit-2511

Seedance 2.0 逐个字段对照

fal 有的字段,本站沿用 fal 的命名,不同之处在说明里写明。字段都在 JSON 请求体的顶层;Replicate 则包在 input 里。

各平台的 Seedance 2.0 请求字段
本站falReplicateWaveSpeed说明
model在 URL 里在 URL 里在 URL 里请求体里一个 ID,覆盖文字、首帧和参考图。三家的 ID 在 URL 里。
promptpromptpromptprompt同样的文字直接沿用。
durationdurationdurationduration整数,4 至 15,默认 5。fal 传字符串,还提供 auto;Replicate 用 -1 表示自动。本站没有自动时长。
resolutionresolutionresolutionresolution480p 或 720p,默认 720p。WaveSpeed 还列出 1080p 和 4k;本站更高的分辨率是单独的 enhance 一步。
aspect_ratioaspect_ratioaspect_ratioaspect_ratio16:9、9:16 或 1:1,默认 16:9。没有 auto、adaptive、4:3、3:4 和 21:9。
generate_audiogenerate_audiogenerate_audiogenerate_audio含义相同,默认开启。开不开同价。
image_urlimage_urlimageimage首帧。和 fal 同名;Replicate 和 WaveSpeed 叫 image。不能和参考图一起用。
reference_image_urlsimage_urlsreference_imagesreference_images最多 9 张图,在提示词里用 @image1、@image2 指代。和 fal 不同:fal 叫 image_urls。
seed无seed无接受但不使用:Seedance 2.0 没有种子参数。fal 和 WaveSpeed 没有列出这个字段。
quote_id无无无新增:quote_id 和 max_credits 必须二选一。任务的花费不会超过它。
max_credits无无无新增:quote_id 和 max_credits 必须二选一。任务的花费不会超过它。
webhook_urlfal_webhook查询字符串webhookstandard_webhook查询字符串放在请求体里。和 fal 不同:fal 在查询字符串里用 fal_webhook。
end_user_idend_user_id无无和 fal 的名称相同。仅限已开通的开发者账户(需申请开通):你自己的用户 ID,会显示在用量里。
project_id无无无本站独有,可选:项目和供应商路由。
shot_id无无无本站独有,可选:项目和供应商路由。
routing_preference无无无本站独有,可选:项目和供应商路由。
enhance无无无本站独有,可选:渲染完成后做 AI 超分,结果标注 AI Enhanced。
Idempotency-Key请求头无无无新增且必填:24 小时内用同一个键,返回同一个任务。

三家有、本站没有对应项的 Seedance 字段。原样发送会被当作未知字段拒绝(400 invalid_request)。

fal
end_image_urlvideo_urlsaudio_urlsbitrate_modecodec
Replicate
last_frame_imagereference_videosreference_audios
WaveSpeed
last_imagereference_videosreference_audiosenable_web_search

Qwen-Image 逐个字段对照

本站的图片请求体比三家的精简:用尺寸和画幅代替自由设定的像素,一个任务一张图,没有采样器设置。

各平台的 Qwen-Image 请求字段
本站falReplicateWaveSpeed说明
model在 URL 里在 URL 里在 URL 里请求体里四个 ID:Image Mini 和 Image Fast,各有出图和改图两个。
promptpromptpromptprompt同样的文字直接沿用。
sizeimage_size无size1K 或 2K,默认 1K。和画幅一起决定固定尺寸,每边最多 2048 像素。不能自由设定宽高。
aspect_ratioimage_sizeaspect_ratiosize16:9、9:16 或 1:1,默认 1:1。不影响价格。
image_urlimage_urlsimageimages仅限改图模型:必须是一张原图,以 URL 传入。三家接受的是列表。
seedseedseedseed含义相同。
quote_id无无无新增:quote_id 和 max_credits 必须二选一。任务的花费不会超过它。
max_credits无无无新增:quote_id 和 max_credits 必须二选一。任务的花费不会超过它。
webhook_urlfal_webhook查询字符串webhookstandard_webhook查询字符串放在请求体里。和 fal 不同:fal 在查询字符串里用 fal_webhook。
end_user_id无无无本站独有,可选,仅限已开通的开发者账户(需申请开通):你自己的用户 ID,会显示在用量里。
project_id无无无本站独有,可选:项目和供应商路由。
shot_id无无无本站独有,可选:项目和供应商路由。
routing_preference无无无本站独有,可选:项目和供应商路由。
Idempotency-Key请求头无无无新增且必填:24 小时内用同一个键,返回同一个任务。

三家有、本站没有对应项的 Qwen-Image 字段。原样发送会被当作未知字段拒绝(400 invalid_request)。

fal
negative_promptnum_inference_stepsguidance_scalenum_imagesoutput_formataccelerationenable_safety_checkersync_modeloras
Replicate
negative_promptstrengthwidthheightguidancenum_inference_stepsgo_fastoutput_formatoutput_qualitydisable_safety_checkerlora_weightslora_scale
WaveSpeed
widthheightoutput_formatenable_base64_outputenable_sync_mode

异步任务和回调

四家都在后台运行任务。各家对每一步的叫法:

各平台的任务和回调
步骤PershotfalReplicateWaveSpeed
创建POST /v1/videos/generationsPOST /v1/images/generations202 → { id: "job_…" }POST https://queue.fal.run/<endpoint id>→ request_id, status_url, response_urlPOST /v1/models/{owner}/{name}/predictions{ "input": { … } }POST /api/v3/<model id>→ data.id
轮询GET /v1/jobs/{id}GET status_urlGET response_urlGET /v1/predictions/{id}GET /api/v3/predictions/{id}/result
状态queuedprocessingsucceededfailedcancelledunknownIN_QUEUEIN_PROGRESSCOMPLETEDstartingprocessingsucceededfailedcanceledcreatedcompletedfailedcancelledtimeoutdeleted
回调webhook_url (body)?fal_webhook=…webhook (body)webhook_events_filter?standard_webhook=…?webhook=… (legacy)
签名X-Signature: t=…,v1=…HMAC-SHA256, whsec_…X-Event-IdX-Fal-Webhook-SignatureED25519, JWKSwebhook-idwebhook-timestampwebhook-signaturewebhook-idwebhook-timestampwebhook-signature
投递重试在 1 分钟、5 分钟、30 分钟、2 小时和 6 小时后重试。10 秒内返回 2xx 即算送达。最多重试 31 次,直到保存的结果过期。可能会重试:要处理重复投递。最多重试 3 次。
输出文件签名链接 24 小时有效;重新读取任务即可拿到新链接。文件保留 12 个月。按你的媒体过期设置处理。通过 API 创建的预测,输出一小时后删除。最多保留 7 天。
一次调用等结果没有:每个任务都是异步的。通过 MCP 时,wait_for_job 最多等 60 秒。POST https://fal.run/<endpoint id>Prefer: wait=nenable_sync_mode

本站的回调内容就是任务本身,签名也是本站自己的:校验三家回调的代码会拒绝本站的回调。 怎么校验本站的回调

幂等

每个生成请求都要带 Idempotency-Key 请求头,1 至 255 个可见 ASCII 字符。24 小时内用同一个键,返回同一个任务和 HTTP 200,所以超时后重试不会多建任务,也不会多扣费。

截至 2026-10-22,三家的文档都没有为创建任务提供幂等键:fal 建议按 request_id 给回调去重,WaveSpeed 要求只提交一次,重新提交前先查找任务。每个任务给一个键,每次重试都沿用它。

不兼容的部分

以下内容原样发送,在本站会失败或被拒绝:

  • 三家的客户端库(fal_client、replicate、wavespeed)不会调用 /v1。请用普通 HTTP、OpenAPI 文档或 MCP 服务。
  • 三家的返回结构:本站的任务是带 outputs[].url 的 Job,不是 fal 的结果、Replicate 的预测,也不是 WaveSpeed 的 data 包装。
  • 尾帧:fal 的 end_image_url、Replicate 的 last_frame_image、WaveSpeed 的 last_image。
  • 参考视频和参考音频:fal 的 video_urls 和 audio_urls,Replicate 和 WaveSpeed 的 reference_videos 和 reference_audios。
  • 自动时长或自动画幅,4:3、3:4 和 21:9 画幅,以及生成 1080p 或 4K。本站更高的分辨率是单独的一步 enhance,结果标注 AI Enhanced。
  • 首帧和参考图同时使用。Replicate 也拒绝这种组合。
  • 一次调用等待结果(fal.run、Replicate 的 Prefer: wait、WaveSpeed 的 enable_sync_mode):本站每个任务都是异步的。
  • 一个任务多张图、PNG 或 WebP 输出、自由设定宽高、改图时用多张原图、LoRA 和采样器设置。
  • 三家的回调校验方式:本站的投递带 X-Signature,是用你的 whsec_ 密钥计算的 HMAC-SHA256,不是 fal 的 ED25519 签名,也不是 webhook-signature 请求头。
  • 先用后付:积分是预付的,每个任务都有上限,超过 max_credits 的任务会被拒绝,不会扣费。
  • 长期有效的输出链接:本站的链接 24 小时有效。重新读取任务即可拿到新链接。

迁移前后

同一个带首帧的 Seedance 2.0 Fast 请求,先按各平台文档的写法,再看 /v1 上的写法。价格上限来自本站的计价引擎。

迁移前
curl -X POST https://queue.fal.run/bytedance/seedance-2.0/fast/image-to-video \
  -H "Authorization: Key $FAL_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Slow dolly-in on a ceramic mug on a wooden table, morning window light",
    "image_url": "https://example.com/first-frame.jpg",
    "duration": "5",
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "generate_audio": true
  }'
迁移后:/v1
curl https://api.pershot.app/v1/videos/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-fast",
    "prompt": "Slow dolly-in on a ceramic mug on a wooden table, morning window light",
    "image_url": "https://example.com/first-frame.jpg",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "generate_audio": true,
    "max_credits": 34
  }'

本站自己的价格

本站每个任务执行前先用积分报价(1 美元 = 100 积分),花费不会超过报价或 max_credits。

fal、Replicate 和 WaveSpeed 的收费见它们自己的页面。本站的比价页列出了它们公布的 Seedance 2.0 价格,每个都注明了读取日期。

本站 API 每计费秒的价格
型号480p,每秒720p,每秒
Seedance 2.0 Fastseedance-2.0-fast$0.031$0.067
Seedance 2.0 Miniseedance-2.0-mini$0.020$0.042
本站每张图的积分
型号1K,每张2K,每张
Qwen-Image-2512 · Lightning 4-stepqwen-image-2512-lightning1 积分3 积分
Qwen-Image-2512qwen-image-25122 积分6 积分
Qwen-Image-Edit-2511 · Lightningqwen-image-edit-2511-lightning2 积分4 积分
Qwen-Image-Edit-2511qwen-image-edit-25113 积分10 积分

出处

三家的字段名和行为,以它们公开页面在 2026-10-22 显示的内容为准。切换前请先查看它们的文档: