Skip to main content
W artykule przedstawiono instrukcje dotyczące integracji z Sora Videos Generation API, za pomocą którego można wprowadzać niestandardowe parametry do generowania filmów oficjalnych Sora. API obsługuje dwa tryby wersji:
  • Wersja 1 (tryb klasyczny): obsługuje parametry duration (10/15/25 sekund), orientation (poziomo/pionowo), size (mała/duża jakość), referencyjne obrazy image_urls, link do ### character_url itp.
  • Wersja 2 (tryb partnera): obsługuje parametry seconds (4/8/12 sekund), rozdzielczość na poziomie pikseli size (np. 1280x720), referencyjne obrazy input_reference itp.

Proces aplikacji

Aby korzystać z Sora Videos Generation API, najpierw przejdź do konsoli Ace Data Cloud, aby uzyskać swój token API, który należy zachować na przyszłość. Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, a po zakończeniu zostaniesz automatycznie przekierowany z powrotem na bieżącą stronę. Jeden token API wystarczy do wywołania wszystkich usług platformy, nie ma potrzeby składania osobnych wniosków dla każdej usługi. Przy pierwszym wniosku przyznawana jest darmowa kwota, aby można było skorzystać z bezpłatnej wersji; w przypadku niewystarczającego salda można doładować saldo ogólne w konsoli.
📘 Pełna dokumentacja: Sora Videos Generation API →

Podstawowe użycie (Wersja 1)

Najpierw zapoznaj się z podstawowym sposobem użycia Wersji 1, polegającym na wprowadzeniu słowa kluczowego prompt, tablicy linków do obrazów image_urls oraz modelu model, aby uzyskać przetworzony wynik, szczegóły są następujące:

Można zauważyć, że ustawiliśmy nagłówki żądania, w tym:
  • accept: format odpowiedzi, który chcemy otrzymać, tutaj wpisujemy application/json, czyli format JSON.
  • authorization: klucz do wywołania API, po złożeniu wniosku można go bezpośrednio wybrać z rozwijanej listy.
Dodatkowo ustawiono ciało żądania, w tym:
  • model: model generujący wideo, obsługujący sora-2 (tryb standardowy) i sora-2-pro (tryb HD). Model sora-2-pro obsługuje wideo o długości 25 sekund, podczas gdy sora-2 obsługuje tylko 10 i 15 sekund.
  • size: jakość wideo, small to standardowa jakość, large to jakość HD (tylko Wersja 1).
  • duration: długość wideo, obsługująca 10, 15, 25 sekund, z czego 25 sekund obsługuje tylko sora-2-pro (tylko Wersja 1).
  • orientation: kierunek obrazu, obsługujący landscape (poziomo), portrait (pionowo) (tylko Wersja 1).
  • image_urls: tablica linków do obrazów referencyjnych, używana do generowania wideo (tylko Wersja 1).
  • character_url: link do ###, wideo nie może zawierać prawdziwych ludzi (tylko Wersja 1).
  • character_start/character_end: czas pojawienia się postaci, różnica w zakresie od 1 do 3 sekund (tylko Wersja 1).
  • prompt: słowo kluczowe (wymagane).
  • callback_url: URL do asynchronicznego zwrotu wyników.
  • async: opcjonalne, ustawione na true, interfejs natychmiast zwraca task_id, nie ma potrzeby podawania callback_url, a następnie można uzyskać wyniki, korzystając z odpowiedniego interfejsu zapytań o zadania.
  • version: wersja API, "1.0" (domyślnie) lub "2.0".
Po dokonaniu wyboru można zauważyć, że po prawej stronie wygenerowano odpowiedni kod, jak pokazano na rysunku:

Kliknij przycisk „Try”, aby przeprowadzić test, jak pokazano na powyższym obrazku, uzyskując następujący wynik:
Zwrócone wyniki zawierają wiele pól, które są opisane poniżej:
  • success, status zadania generowania wideo w danym momencie.
  • task_id, ID zadania generowania wideo w danym momencie.
  • trace_id, ID śledzenia generowania wideo w danym momencie.
  • data, lista wyników zadania generowania wideo w danym momencie.
    • id, ID wideo zadania generowania wideo w danym momencie.
    • video_url, link do wideo zadania generowania wideo w danym momencie.
    • state, status zadania generowania wideo w danym momencie.
Można zauważyć, że uzyskaliśmy satysfakcjonujące informacje o wideo, wystarczy, że na podstawie adresu linku wideo w data uzyskamy wygenerowane wideo Sora. Dodatkowo, jeśli chcesz wygenerować odpowiedni kod integracyjny, możesz go bezpośrednio skopiować, na przykład kod CURL wygląda następująco:

Zadanie generowania wideo z obrazów (Wersja 1)

Jeśli chcesz przeprowadzić zadanie generowania wideo z obrazów, najpierw parametr image_urls musi zawierać linki do referencyjnych obrazów, aby można było określić następujące treści:
  • image_urls: tablica linków do obrazów referencyjnych używanych w tym zadaniu generowania wideo. Należy pamiętać, aby nie przesyłać prawdziwych obrazów z postaciami z twarzami, ponieważ może to spowodować niepowodzenie zadania.
Przykład wypełnienia jest następujący:

Po wypełnieniu automatycznie wygenerowano kod, jak pokazano poniżej:

Odpowiedni kod:
Kliknij uruchom, a natychmiast otrzymasz wynik, jak poniżej:
Można zauważyć, że wygenerowany efekt to wideo stworzone na podstawie obrazu, a wynik jest podobny do powyższego.

Zadanie generowania wideo z postacią (Wersja 1)

Jeśli chcesz przeprowadzić zadanie generowania wideo z postacią, najpierw parametr character_url musi zawierać link do wideo potrzebnego do stworzenia postaci, pamiętaj, że w wideo nie mogą pojawiać się prawdziwe osoby, w przeciwnym razie operacja zakończy się niepowodzeniem, można określić następujące treści:
  • character_url: link do wideo potrzebnego do stworzenia postaci, pamiętaj, że w wideo nie mogą pojawiać się prawdziwe osoby, w przeciwnym razie operacja zakończy się niepowodzeniem.
Przykład wypełnienia poniżej:

Po wypełnieniu automatycznie wygenerowano poniższy kod:

Odpowiedni kod:
Kliknij uruchom, a natychmiast otrzymasz wynik, jak poniżej:
Można zauważyć, że wygenerowany efekt to wideo z postacią, a wynik jest podobny do powyższego.

Tryb Wersja 2.0

Oprócz powyższego trybu Wersja 1.0, to API obsługuje również tryb Wersja 2.0, który można włączyć, ustawiając parametr version na "2.0". Tryb Wersja 2.0 obsługuje krótszy czas trwania wideo oraz kontrolę rozdzielczości na poziomie pikseli.

Opis parametrów Wersji 2.0

Podstawowy przykład

Odpowiedni kod w Pythonie:
Odpowiedni kod w JavaScript:
Format zwracanych wyników jest taki sam jak w Wersji 1.

Użycie obrazów referencyjnych (Wersja 2.0)

W trybie Wersja 2.0 można przekazać obrazy referencyjne za pomocą parametru image_urls, aby prowadzić generację wideo (używając tylko pierwszego obrazu):
Uwaga: Wymiary obrazów referencyjnych powinny być zgodne z parametrem size, na przykład, gdy size wynosi 1280x720, wymiary obrazu referencyjnego powinny wynosić 1280×720.

Porównanie parametrów Wersji 1.0 i Wersji 2.0

Asynchroniczny callback

Ponieważ czas generacji wideo przez API Sora jest stosunkowo długi, wynosi około 1-2 minut, jeśli API nie odpowiada przez dłuższy czas, żądanie HTTP będzie utrzymywać połączenie, co prowadzi do dodatkowego zużycia zasobów systemowych, dlatego to API oferuje również wsparcie dla asynchronicznych callbacków. Cały proces polega na tym, że klient inicjuje żądanie, dodatkowo określając pole callback_url, po wysłaniu żądania API natychmiast zwraca wynik, zawierający pole task_id, które reprezentuje bieżące ID zadania. Po zakończeniu zadania wynik generacji wideo zostanie wysłany do określonego przez klienta callback_url w formie POST JSON, w tym również zawierając pole task_id, dzięki czemu wyniki zadania można powiązać za pomocą ID. Poniżej przedstawiamy przykład, aby zrozumieć, jak to działa. Najpierw, callback Webhook to usługa, która może odbierać żądania HTTP, deweloperzy powinni zastąpić to URL swojego serwera HTTP. Dla wygody demonstracji używamy publicznej strony przykładowej Webhook https://webhook.site/, otwierając tę stronę można uzyskać URL Webhook, jak pokazano na obrazku: Skopiuj ten URL, aby użyć go jako Webhook, przykładowy URL to https://webhook.site/eb238c4f-da3b-47a5-a922-a93aa5405daa. Następnie możemy ustawić pole callback_url na powyższy URL Webhook, jednocześnie wypełniając odpowiednie parametry, szczegóły jak na obrazku:

Klikając uruchom, można zauważyć, że natychmiast otrzymujemy wynik, jak poniżej:
Po chwili możemy na https://webhook.site/eb238c4f-da3b-47a5-a922-a93aa5405daa zaobserwować wynik generacji wideo, jak pokazano na obrazku: Treść jest następująca:
Można zauważyć, że wynik zawiera pole task_id, a inne pola są podobne do powyższych, dzięki czemu można powiązać zadanie za pomocą tego pola.

Obsługa błędów

Podczas wywoływania API, jeśli wystąpią błędy, API zwróci odpowiedni kod błędu i informacje. Na przykład:
  • 400 token_mismatched: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
  • 400 api_not_implemented: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
  • 401 invalid_token: Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacyjny.
  • 429 too_many_requests: Zbyt wiele żądań, przekroczono limit.
  • 500 api_error: Błąd wewnętrzny serwera, coś poszło nie tak na serwerze.

Przykład odpowiedzi błędu

Wnioski

Dzięki temu dokumentowi zrozumiałeś, jak korzystać z API Generacji Wideo Sora, aby generować wideo na podstawie wprowadzonych słów kluczowych oraz zdjęć referencyjnych. Mamy nadzieję, że ten dokument pomoże Ci lepiej zintegrować i korzystać z tego API. W razie jakichkolwiek pytań, skontaktuj się z naszym zespołem wsparcia technicznego.