在 Lazu 上呼叫 seedance-2.5:$0.103 / 秒。
Seedance 2.5 by ByteDance. Text-to-video, first/last-frame and multimodal reference generation (images, video, audio), 4-30 s at 480p, 720p or 1080p, with native audio.
價格與線路
單位:美元 / 百萬 token。可用率為近 7 天,每格 2 小時。
- 480p
- $0.103 / 秒
- 720p
- $0.231 / 秒
- 1080p
- $0.569 / 秒
- 参考视频
- 与输出时长一起按秒计费
- 结算
- 按完成后的实际用量结算
價格讀取於 2026-11-03 19:16 UTC · 怎麼選線路 · seedance-2.5.json · seedance-2.5.md
能力
呼叫範例
# 1. Submit: HTTP 202 with the job id (mjob_...) and the amount held
curl https://api.lazu.ai/v1/videos \
-H "Authorization: Bearer $LAZU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5",
"prompt": "A cinematic product reveal on a clean studio table",
"seconds": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}'
# 2. Wait: answers when the status changes or the job finishes (60 s at most),
# with progress and eta_seconds; repeat until status is succeeded or failed
curl "https://api.lazu.ai/v1/videos/mjob_...?wait=60" \
-H "Authorization: Bearer $LAZU_API_KEY"
# 3. Download the MP4
curl --fail https://api.lazu.ai/v1/videos/mjob_.../content \
-H "Authorization: Bearer $LAZU_API_KEY" -o video.mp4
import os
import requests
API = "https://api.lazu.ai/v1/videos"
headers = {"Authorization": "Bearer " + os.environ["LAZU_API_KEY"]}
job = requests.post(API, headers=headers, json={
"model": "seedance-2.5",
"prompt": "A cinematic product reveal on a clean studio table",
"seconds": 5,
"resolution": "720p",
}).json()
while job["status"] in ("pending", "running"):
# Answers when the status changes or the job finishes, 60 s at most.
job = requests.get(f"{API}/{job['id']}", params={"wait": 60},
headers=headers, timeout=90).json()
print(job["status"], job.get("progress"), "%")
if job["status"] == "succeeded":
video = requests.get(job["artifact"]["url"], timeout=300)
open("video.mp4", "wb").write(video.content)
const API = "https://api.lazu.ai/v1/videos";
const headers = {
Authorization: `Bearer ${process.env.LAZU_API_KEY}`,
"Content-Type": "application/json",
};
let job = await (await fetch(API, {
method: "POST",
headers,
body: JSON.stringify({
model: "seedance-2.5",
prompt: "A cinematic product reveal on a clean studio table",
seconds: 5,
resolution: "720p",
}),
})).json();
while (job.status === "pending" || job.status === "running") {
// Answers when the status changes or the job finishes, 60 s at most.
job = await (await fetch(`${API}/${job.id}?wait=60`, { headers })).json();
console.log(job.status, job.progress, "%");
}
if (job.status === "succeeded") console.log(job.artifact.url);
影片生成是非同步任務:先提交,再等它完成,然後下載檔案。欄位、參考素材和計費的完整說明見指南。 影片接入指南
常見問題
怎麼呼叫 seedance-2.5?
影片生成是非同步任務。POST /v1/videos 會立即回傳任務 ID;然後用 GET /v1/videos/{id}?wait=60 查詢,狀態一變就回傳,每次都帶 progress 和 eta_seconds,直到 status 變成 succeeded;也可以用 GET /v1/videos/{id}/events 即時接收進度。完成後下載 artifact.url(1 小時內有效的連結),或帶金鑰請求 GET /v1/videos/{id}/content。透過 API 生成的影片保存 3 天。
可以用 OpenAI SDK 嗎?
影片不行。OpenAI 已經停用了自家的影片介面,它的 SDK 輔助函式期望的狀態和欄位也和我們不同。直接用上面的 HTTP 介面即可,任何語言都是三個普通請求。
怎麼計費?
按生成影片的秒數和所選解析度計費。提交時按請求的秒數預扣,影片完成後按服務商回報的實際用量結算,多餘部分立即退回;任務失敗全額退款。任務從提交那一刻起就會以「執行中」出現在你的使用紀錄裡,直到結算。