Dokumentacja programisty UlazAI
Dokumentacja Seedance API: generowanie, status, 1080p i wycena
Referencja Seedance 1.5 Pro
Dokumentacja Seedance API Dokumentacja Seedance API: generowanie, status, 1080p i wycena
Aby skorzystać z Seedance API, uwierzytelnij się kluczem okaziciela, użyj
POST /seedance/generate/ tworzyć miejsca pracy i przeprowadzać ankiety
GET /seedance/status/{generation_id}/ dopóki film nie będzie gotowy.
UlazAI obsługuje obecnie wyjście Seedance 1.5 Pro 480p, 720p i 1080p o czasie trwania 4, 8 lub 12 sekund.
Podstawowe punkty końcowe
POST /seedance/upload/
POST /seedance/generate/
GET /seedance/status/{generation_id}/
Aktualne możliwości
Tekst na wideo i obraz na wideo
Do 2 obrazów przewodników
Opcjonalny natywny dźwięk
Wskazówka
Ta strona odpowiada na cały przebieg działania programisty na pierwszym ekranie: generowanie punktu końcowego, odpytywanie stanu, obsługa 1080p, uwierzytelnianie nośnika i trasa cenowa.
Użyj/seedance/upload/ tylko wtedy, gdy potrzebujesz generowania wideo sterowanego obrazem. W przypadku wiadomości tekstowych zadzwoń
/seedance/generate/ bezpośrednio i pomiń krok przesyłania.
Rodzina modeli Seedance: 1.5 Pro, 2.0 i 2.5
Seedance to model przetwarzania tekstu na wideo i obrazu na wideo firmy ByteDance. ByteDance uruchomiło pierwszy Seedance w czerwcu 2025 r., wydany Siedzenie 2.0 w lutym 2026 r. i od tego czasu pokazuje Seedacja 2.5. Każdy generacja kontynuuje tę samą podstawową ideę: kinowy ruch, mocniejsze sceny po prompt, odniesienia do obrazów i wideo oraz opcjonalny natywny dźwięk w jednym renderowaniu. Przewodnik API obejmuje aktualnie obsługiwane Wersje Seedance bez konieczności konfigurowania własnej platformy ByteDance.
| Wersja | Wydany przez ByteDance | Co dodaje |
|---|---|---|
Seedance 1.5 Pro | 2025 | Tekst i obraz na wideo, do 2 obrazów pomocniczych, opcjonalny dźwięk, 480p/720p/1080p. Dzisiaj podłączono do UlazAI. |
Seedance 2.0 | luty 2026 | Wejścia multimodalne (tekst, obraz, wideo, audio), opowiadanie historii z wielu kamer, natywna kogeneracja dźwięku, dłuższe klipy. |
Seedance 2.5 | 2026 | Najnowszy krok pokazany przez ByteDance ma na celu szybsze generowanie oraz dalsze korzyści w zakresie jakości i kontroli. |
Ten sam kod, nowszy model
Publiczne UlazAI API generuje za pomocą bytedance/seedance-1.5-pro dzisiaj. Ważna część dla programistów:
gdy włączona jest tutaj nowsza wersja Seedance, ponownie wykorzystuje plik to samo Uwierzytelnienie na okaziciela i to samo
wygeneruj i odpytuj punkty końcowe poniżej. Twoja integracja się nie zmienia – zmienia się tylko identyfikator modelu – tak
możesz teraz bazować na tym odniesieniu, a później przenieść rodzinę w górę.
ByteDance i ARK: oficjalny model, jedna ujednolicona trasa
Osoby szukające Oficjalna dokumentacja ByteDance Seedance lub Nasiona arki API zazwyczaj szukają dwóch różnych rzeczy: samego modelu i sposobu, aby go nazwać. Seedance należy do ByteDance własny model, opublikowany przez Volcano Engine firmy ByteDance ARKA platforma. Ta trasa oznacza utworzenie ARK konto, dostęp do regionu i punkty końcowe modelu surowego.
UlazAI znajduje się przed nią jako warstwa API innej firmy. Dostajesz jeden klucz na okaziciela, gospodarz
przesyłanie obrazu step, wspólny portfel kredytowy i mały zestaw punktów końcowych na tej stronie — brak ARK
wdrożenia, brak regionalnego obejścia oraz brak VPN lub chińskiego numeru telefonu umożliwiającego połączenie się z modelem. Jeśli specjalnie szukałeś
Przesyłanie zdjęć ARK API Seedance, odpowiednikiem tutaj jest pojedyncze wywołanie: POST /seedance/upload/
zwraca stały adres URL, na który wchodzisz input_urls podczas generowania (zobacz punkt końcowy przesyłania poniżej).
Koncepcje ARK odwzorowane na tym API
Jeśli już przeczytałeś dokumentację ARK ByteDance, słownictwo jest inne, ale kroki są takie same. Oto bezpośrednie tłumaczenie:
| Na ByteDance ARK | Tutaj | Co się dla Ciebie zmienia |
|---|---|---|
| Konfiguracja konta ARK, projektu i punktu końcowego | Jeden klucz na okaziciela | Brak możliwości wdrożenia platformy przed pierwszą rozmową. |
| Hostuj obraz przewodnika samodzielnie, podaj publiczny adres URL | POST /seedance/upload/ |
Możesz wysłać surowy plik; odpowiedź zawiera stały adres URL. |
| Identyfikator modelu w treści żądania | model pole |
Ten sam pomysł; pomiędzy wersjami zmienia się tylko identyfikator. |
| Odpytuj zadanie, aż zostanie ukończone | GET /seedance/status/{generation_id}/ |
Ten sam kształt odpytywania, jeden punkt końcowy. |
Obraz do wideo w dwóch rozmowach
Oto cały proces przesyłania obrazu. Pierwsze wywołanie przechowuje obraz i zwraca adres URL, drugie wywołanie wykorzystuje ten adres URL jako wizualną wskazówkę dotyczącą filmu.
# 1. upload the guide image
curl -X POST https://ulazai.com/seedance/upload/ \
-H "Authorization: Bearer $ULAZAI_API_KEY" \
-F "[email protected]"
# -> {"url": "https://cdn.ulazai.com/uploads/<id>.jpg"}
# 2. generate, passing that URL back in input_urls
curl -X POST https://ulazai.com/seedance/generate/ \
-H "Authorization: Bearer $ULAZAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "slow dolly in, warm evening light",
"input_urls": ["https://cdn.ulazai.com/uploads/<id>.jpg"],
"resolution": "1080p"
}'
Możesz przekazać maksymalnie dwa adresy URL input_urls. Na początek czytane są dwa obrazy i
odniesienie końcowe, co jest typowym sposobem na zachowanie spójności znaku lub produktu w całej witrynie
klip. W przypadku generowania wyłącznie tekstu całkowicie pomiń wywołanie przesyłania.
Szybkie podsumowanie integracji
| Autoryt | Klucz na okaziciela API od /dashboard/ -> Klucze API |
|---|---|
| Identyfikator modelu | bytedance/seedance-1.5-pro |
| Czasy trwania | 4s, 8s, 12s |
| Uchwały | 480p, 720p, 1080p |
| Proporcje proporcji | 1:1, 21:9, 4:3, 3:4, 16:9, 9:16 |
| Wejścia | Tylko Prompt lub prompt plus maksymalnie 2 adresy URL obrazów |
| Przepływ odpytywania | Utwórz pracę, sklep generation_id, a następnie stan ankiety do completed |
Podsumowanie publicznego punktu końcowego
| Metoda | Punkt końcowy | Kiedy go używać |
|---|---|---|
| POST | /seedance/upload/ |
Jeśli chcesz uzyskać wskazówki dotyczące konwersji obrazu na film, najpierw prześlij obraz |
| POST | /seedance/generate/ |
Utwórz zadanie generacji Seedance 1.5 Pro |
| DOBIERZ | /seedance/status/{generation_id}/ |
Sprawdź, czy zadanie jest nadal przetwarzane, zakończone lub nie powiodło się |
Uwierzytelnianie
Wszystkie żądania API wymagają tokena okaziciela:
Authorization: Bearer YOUR_API_KEY
Zdobądź klucz API ze swojego pulpitu nawigacyjnego pod Klucze API. Jeśli nadal potrzebujesz kredytów, przejdź do pakiety pierwszy.
/seedance/upload/
Prześlij obrazy wejściowe, aby uzyskać wskazówki dotyczące konwersji obrazu na wideo
Prześlij obraz przewodnika przed wygenerowaniem, jeśli chcesz, aby Seedance zakotwiczył kompozycję, kadrowanie postaci lub konfigurację sceny.
W odpowiedzi otrzymasz stały adres URL, pod który możesz przejść input_urls.
Nagłówki żądań
Authorization: Bearer YOUR_API_KEY
Content-Type: multipart/form-data
Parametry danych formularza
plik * (plik)
JPG, PNG lub WebP, do 10 MB.
Odpowiedź na sukces (200)
{
"success": true,
"url": "https://media.ulazai.com/seedance_images/u1_abc123.jpg",
"filename": "seedance_images/u1_abc123.jpg"
}
Przykładowe użycie (cURL)
curl -X POST https://api.ulazai.com/seedance/upload/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@/path/to/image.jpg"
/seedance/generate/
Utwórz zadanie generacji Seedance 1.5 Pro
Wyślij poniższy uproszczony ładunek lub jawny model plus input formatować.
Użyj uproszczonej wersji, jeśli potrzebujesz tylko publicznej trasy Seedance z prompt, opcjonalnymi obrazami przewodników i ustawieniami wyjściowymi.
Treść żądania (prosta)
{
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"input_urls": ["https://media.ulazai.com/seedance_images/u1_abc123.jpg"],
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4",
"fixed_lens": true,
"generate_audio": false,
"prompt_directory_optin": true
}
Treść żądania (model/styl wejściowy)
{
"model": "bytedance/seedance-1.5-pro",
"input": {
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"input_urls": ["https://media.ulazai.com/seedance_images/u1_abc123.jpg"],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": "8",
"fixed_lens": true,
"generate_audio": true
}
}
Parametry
prompt * (ciąg)
Od 3 do 2500 znaków opisujących scenę, ruch, kadrowanie i intencję dźwiękową.
input_urls (tablica)
Opcjonalne. Maksymalnie 2 adresy URL obrazów do wskazówek dotyczących konwersji obrazu na wideo.
aspect_ratio (ciąg)
Jeden z: 1:1, 21:9, 4:3, 3:4, 16:9, 9:16.
rozdzielczość (ciąg)
Jedna z: 480p, 720p, 1080p.
czas trwania (ciąg)
4, 8 lub 12 sekund.
fixed_lens (wartość logiczna)
Włącz, aby uzyskać bardziej stabilny widok z kamery.
generate_audio (wartość logiczna)
Włącz zsynchronizowane generowanie dźwięku. Zwiększa to wykorzystanie kredytu.
prompt_directory_optin (wartość logiczna)
Opcjonalne. Udostępnij kwalifikujące się prompt w katalogu prompt i zastosuj zniżkę, jeśli jest obsługiwana.
Odpowiedź na sukces (200)
{
"success": true,
"generation_id": "abc12345-1234-1234-1234-123456789012",
"task_id": "seedance_task_xyz789",
"credits_used": 40,
"directory_discount_applied": true,
"message": "Video generation started. This may take a few minutes."
}
/seedance/status/{generation_id}/
Stan zadania ankiety
Sonduj ten punkt końcowy do momentu opuszczenia zadania processing. Jeśli się powiedzie, otrzymasz z powrotem adres URL filmu; na niepowodzeniu
powinieneś sprawdzić błąd i spróbować ponownie z poprawionym ładunkiem.
Przetwarzanie odpowiedzi
{
"success": true,
"status": "processing",
"message": "Video is being generated..."
}
Odpowiedź na sukces (200)
{
"success": true,
"status": "completed",
"video_url": "https://media.ulazai.com/seedance_outputs/video.mp4"
}
Przykłady kodu: cURL, Python i JavaScript
Pełny proces to przesyłanie → przechowywanie generation_id → stan ankiety. Oto wywołanie generowania w trzech typowych stosach; zamień swój własny klucz i prompt.
ZWIŃ
curl -X POST https://api.ulazai.com/seedance/generate/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4"
}'
Python (żądania)
import time, requests
BASE = "https://api.ulazai.com"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
# 1. Start the job
job = requests.post(f"{BASE}/seedance/generate/", headers=HEADERS, json={
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4",
}).json()
generation_id = job["generation_id"]
# 2. Poll until it leaves "processing"
while True:
status = requests.get(f"{BASE}/seedance/status/{generation_id}/", headers=HEADERS).json()
if status.get("status") == "completed":
print("Video:", status["video_url"])
break
if status.get("status") == "failed":
raise RuntimeError(status)
time.sleep(8) # back off; do not hammer generate
JavaScript (pobierz)
const BASE = "https://api.ulazai.com";
const HEADERS = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" };
const job = await fetch(`${BASE}/seedance/generate/`, {
method: "POST",
headers: HEADERS,
body: JSON.stringify({
prompt: "A cinematic close-up of a chef flipping noodles in slow motion",
aspect_ratio: "16:9",
resolution: "1080p",
duration: "4",
}),
}).then(r => r.json());
const id = job.generation_id;
let video;
while (!video) {
const s = await fetch(`${BASE}/seedance/status/${id}/`, { headers: HEADERS }).then(r => r.json());
if (s.status === "completed") video = s.video_url;
else if (s.status === "failed") throw new Error(JSON.stringify(s));
else await new Promise(r => setTimeout(r, 8000)); // poll every ~8s
}
console.log("Video:", video);
Przepływ użytkowania
- Prześlij jeden lub dwa obrazy przewodników za pomocą
/seedance/upload/tylko wtedy, gdy potrzebujesz wskazówek dotyczących konwersji obrazu na wideo. - Zadzwoń
/seedance/generate/z prompt, ustawieniami wyjściowymi i opcjonalnymiinput_urls. - Przechowuj zwrócone
generation_id. - Ankieta
/seedance/status/{generation_id}/ażstatusstaje sięcompleted. - Użyj zwróconego
video_urlaby pobrać, osadzić lub przekazać końcowy zasób do własnego przepływu pracy.
Kody błędów
400 Nieprawidłowe parametry żądania
401 Uwierzytelnienie nie powiodło się (brak lub nieprawidłowy klucz API)
402 Niewystarczające kredyty
429 Przekroczono limit stawki
500 Wewnętrzny błąd serwera
Ceny i limity stawek
Rozliczanie Seedance w UlazAI opiera się na kredytach, więc koszty skalują się w zależności od rozdzielczości i czasu trwania, a nie stałej stawki za sekundę. Użyj tego jako przewodnika planowania; rzeczywisty koszt kredytu jest pokazany w pakiety oraz w momencie żądania.
| Wyjście | Typowe zastosowanie | Sterownik kosztów |
|---|---|---|
480p | Szkice i szybkie iteracje | Najniższe kredyty na sekundę |
720p | Klipy gotowe do użytku społecznościowego | Średnie kredyty na sekundę |
1080p | Ostateczna dostawa | Najwyższe kredyty na sekundę; dłuższe okresy kosztują więcej |
Limity szybkości i obsługa 429: jeśli prześlesz wiele ofert pracy równolegle, możesz je otrzymać 429 Rate limit exceeded. Traktuj API jako oparty na zadaniu: prześlij, zapisz generation_idi ankieta /seedance/status/{generation_id}/ co 5-10 sekund, zamiast generować młotkiem. Na 429, cofnij się wykładniczo (na przykład 2, 4, 8) przed ponowną próbą.
Seedance 1.5 Pro kontra Seedance 2.0: to odniesienie obejmuje bytedance/seedance-1.5-pro, model aktualnie podłączony do Video Studio. Od tego czasu ByteDance wprowadziło Seedance 2.0 jako następną generację; gdy jest tutaj włączona, używa tego samego przepływu generowania i odpytywania oraz tego samego uwierzytelniania, więc kod integracji nie ulega zmianie — zmienia się tylko identyfikator modelu.
Często zadawane pytania
Czy UlazAI Seedance API obsługuje Seedance 2.0 i 2.5?
API generuje za pomocą bytedance/seedance-1.5-pro dzisiaj. ByteDance wypuściło Seedance 2.0 w lutym 2026 roku i od tego czasu pokazało wersję 2.5. Gdy w tym miejscu włączona jest nowsza wersja, używa ona tego samego uwierzytelniania nośnika i tych samych punktów końcowych generowania i odpytywania, więc kod integracji nie ulega zmianie — zmienia się tylko identyfikator modelu.
Jak UlazAI ma się do oficjalnego Seedance/ARK API ByteDance?
Seedance to własny model ByteDance, oferowany poprzez platformę Volcano Engine ARK firmy ByteDance. UlazAI to warstwa API innej firmy, która uruchamia Seedance za jedną uproszczoną trasą z jednym kluczem nośnika, przesyłaniem hostowanych obrazów i współdzielonym portfelem kredytowym — bez konta ARK ani punktów końcowych surowego modelu do zarządzania.
Jak przesłać obraz do konwersji obrazu na wideo Seedance?
Wyślij obraz jako dane wieloczęściowe/formularz do POST /seedance/upload/ za pomocą klucza na okaziciela. Odpowiedź zwraca stały adres URL; przekaż go (do dwóch) w input_urls tablica włączona POST /seedance/generate/. prompt zawierające wyłącznie tekst pomijają etap przesyłania.
Ile kosztuje Seedance API?
Rozliczenia opierają się na kredytach, więc koszty rosną wraz z rozdzielczością i czasem trwania. Krótka wersja robocza w rozdzielczości 480p kosztuje najmniej kredytów; 12-sekundowy render 1080p z dźwiękiem kosztuje najwięcej. Dokładny koszt jest podany w pakiety i znowu jako credits_used w odpowiedzi generującej.
Czy Seedance jest dostępny na całym świecie poprzez API?
Tak. Do punktów końcowych HTTPS hostowanych przez UlazAI dzwonisz za pomocą klucza nośnika, więc nie jest potrzebna żadna sieć VPN, obejście regionalne ani chiński numer telefonu. Każdy serwer, który może wysłać uwierzytelnione żądanie HTTPS, może przesyłać zadania i sondować wyniki.