Tutoriale
Come si usa l'API text-to-video di Seedance 2.5? Esecuzione diretta con curl e Python
Un prompt genera un video di 4–30 secondi con audio: parametri, costi e cose da sapere prima del lancio, tutto in una guida.
TL;DR
seedance-2.5/text-to-videogenera un video da un solo prompt, da 4 a 30 secondi per clip, con audio incluso. Apri la pagina del modello per generare online; i nuovi utenti ricevono 200 crediti alla registrazione.- Fatturazione al secondo: 720p a $0.204 al secondo, 1080p a $0.516 al secondo. 5 secondi in 720p costano $1.02.
- API in due passaggi:
POST /v1/tasksper inviare, poi usataskIdper recuperare il risultato. I comandi curl e Python qui sotto si copiano e si eseguono subito.
Prima guarda un risultato reale
Il video di 8 secondi in 720p qui sotto è stato generato con un solo prompt e una sola richiesta: il suono del latte montato, il tintinnio delle tazze e le voci del locale sono tutti aggiunti dal modello:
A barista in a small morning cafe pours steamed milk into a cup, drawing a latte art leaf.
The camera starts on her hands and slowly pulls back to reveal the counter and a sign on the wall that reads 'OPEN'.
Warm window light, realistic, smooth motion. Sound: milk steaming, cups clinking, quiet cafe chatter.
Genera con questo prompt → (8 secondi, 720p)
seedance-2.5/text-to-video, 720p, 8 secondi, con audio, $1.632.
Due percorsi per iniziare
Prova online (senza scrivere codice)
- Apri la pagina del modello Seedance 2.5 text-to-video e registrati o accedi.
- Incolla il prompt e scegli durata, risoluzione e formato.
- Clicca su genera e scarica il video appena è pronto.
Chiamata API
- Crea una API Key nella console.
POST https://api.hiapi.ai/v1/tasksper inviare il task; restituiscetaskId.GET /v1/tasks/{taskId}per controllare lo stato; quandostatusèsuccess, scarica il video daoutput[0].url.
curl: il primo video
Inizia con un video di 5 secondi in 720p, $1.02:
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5/text-to-video",
"input": {
"prompt": "一架纸飞机滑过洒满阳光的办公室,灰尘在光里漂浮,镜头跟着纸飞机缓慢移动",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}
}'
Risposta:
{"code": 200, "data": {"taskId": "tk-hiapi-..."}, "message": "success"}
Recupera il risultato:
curl https://api.hiapi.ai/v1/tasks/tk-hiapi-... \
-H "Authorization: Bearer $HIAPI_KEY"
Durante la generazione status è handling, al termine diventa success e l'URL del video è in output[0].url.
Python: invio, polling, download
# pip install requests;先 export HIAPI_KEY=你的 Key
import os, time, uuid, requests
KEY = os.environ["HIAPI_KEY"]
H = {"Authorization": f"Bearer {KEY}"}
def generate(prompt, model="seedance-2.5/text-to-video", timeout_s=900, **params):
body = {"model": model, "input": {"prompt": prompt, **params}}
# 重试提交同一个任务时带同一个 Idempotency-Key,避免重复扣费
headers = {**H, "Idempotency-Key": str(uuid.uuid4())}
r = requests.post("https://api.hiapi.ai/v1/tasks", json=body, headers=headers, timeout=30)
r.raise_for_status()
res = r.json()
if res.get("code") != 200:
raise RuntimeError(res)
task_id = res["data"]["taskId"]
deadline = time.time() + timeout_s
while time.time() < deadline:
d = requests.get(f"https://api.hiapi.ai/v1/tasks/{task_id}", headers=H, timeout=30).json()["data"]
if d["status"] == "success":
return d["output"][0]["url"]
if d["status"] == "fail":
raise RuntimeError(d)
time.sleep(10)
raise TimeoutError(task_id)
url = generate(
"一架纸飞机滑过洒满阳光的办公室,灰尘在光里漂浮,镜头跟着纸飞机缓慢移动",
duration=5, resolution="720p", aspect_ratio="16:9",
)
with open("clip.mp4", "wb") as f:
f.write(requests.get(url).content)
Panoramica dei parametri
| Parametro | Valori | Descrizione |
|---|---|---|
prompt |
stringa, obbligatorio | Va bene sia in cinese che in inglese |
duration |
intero da 4 a 30, default 5 | In secondi, fatturazione al secondo |
resolution |
720p / 1080p, default 720p |
Il prezzo del 1080p è circa 2,5 volte quello del 720p |
aspect_ratio |
16:9 4:3 1:1 3:4 9:16 21:9 adaptive, default adaptive |
Per i video brevi verticali usa 9:16 |
generate_audio |
default true |
Audio e immagini vengono generati insieme |
output_format |
mp4 / mov |
Il text-to-video non accetta URL di immagini o video. Per partire da un'immagine, passa a Seedance 2.5 image-to-video; per riprendere movimento e regia da un video esistente, passa a Seedance 2.5 reference-to-video.
Calcoliamo il costo
| Durata | 720p ($0.204/secondo) | 1080p ($0.516/secondo) |
|---|---|---|
| 5 secondi | $1.02 | $2.58 |
| 10 secondi | $2.04 | $5.16 |
| 15 secondi | $3.06 | $7.74 |
| 30 secondi | $6.12 | $15.48 |
Con $10 in 720p si generano circa 49 secondi. Consigliamo di rifinire prima il prompt con clip brevi in 720p, poi produrre il video finale in 1080p. Per un conteggio più dettagliato vedi Prezzi dell'API Seedance 2.5.
Da sapere prima del lancio
- Usa i callback invece del polling: al livello superiore della richiesta (allo stesso livello di
input) aggiungi"callback": {"url": "https://tuo-dominio/hiapi/callback"}; al termine del task HiAPI ti avvisa attivamente, deduplica pertaskId. - Salva subito i file:
output[0].urlè un link temporaneo (conservato per circa 7 giorni di default); appena lo ottieni, salvalo nel tuo storage. - Riprova con la chiave di idempotenza: aggiungi
Idempotency-Keynegli header; riprovare con la stessa chiave crea il task una sola volta e non addebita due volte. - Specifica tutti i parametri: indica esplicitamente
duration,resolutioneaspect_ratio, così costi e formato corrispondono al budget. - Rimborso automatico in caso di errore: paghi solo per i video generati con successo.
Domande frequenti
Posso scrivere il prompt in cinese?
Sì. Per risultati più stabili, scrivi in frasi separate come si muove la camera, come si muove il soggetto e quali suoni ci sono.
Qual è la durata massima?
Da 4 a 30 secondi per clip. Il doppio del limite di 15 secondi di Seedance 2.0, ideale per piani sequenza lunghi.
Posso risparmiare disattivando l'audio?
Impostando generate_audio su false disattivi l'audio, ma il prezzo dipende da risoluzione e secondi, quindi non costa meno.
Come scelgo tra Seedance 2.5 e 2.0?
Scegli 2.5 se vuoi clip singole più lunghe e più materiale di riferimento; se il budget è la priorità o ti serve il 4K, scegli la linea ext di 2.0 (720p a $0.134 al secondo). Per un confronto dettagliato vedi Differenze tra Seedance 2.5 e 2.0.
Per altre formule già pronte, vedi il manuale d'uso di Seedance 2.5; oppure copia il prompt del latte art qui sopra e vai alla pagina del modello per generare.
Articoli correlati
Vedi tutti gli articoli →-
Tutoriale
Come chiamare hailuo-2.3-fast/image-to-video tramite l'API HiAPI: pratica con curl e Python
La prima richiesta funzionante per il livello image-to-video veloce ed economico — dall'ID del modello al download di un MP4
-
Tutoriale
Come chiamare hailuo-2.3/text-to-video tramite l'API HiAPI: curl, Python ed esempi di richiesta eseguibili
-
Tutoriale
Utilizzare Kandinsky 6.0 Pro su HiAPI per la generazione di video da testo: tutorial con curl e Python
Dimostrazione pratica guidata dalla richiesta: costruire la chiamata da prompt a clip video, inviare la richiesta, monitorare lo stato di completamento e scaricare il risultato