Google: Veo 3.1
Veo 3.1 to model wideo Google do scen opartych na tekście i obrazie, z generowanym dźwiękiem, sterowanymi klatkami granicznymi i materiałami referencyjnymi. Jego profil produkcyjny oferuje klipy o długości czterech, sześciu lub ośmiu sekund przy 24 kl./s, z rozdzielczościami wyjściowymi obejmującymi 720p, 1080p i 4K.
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
Veo 3.1 to model generowania wideo Google do tworzenia krótkiej sceny audiowizualnej z tekstu lub opisu opartego na obrazie. Jego profil produkcyjny obsługuje tworzenie z tekstu, z obrazu oraz sterowane tworzenie z pierwszej i ostatniej klatki, z generowanym dźwiękiem, referencjami materiałów i osobnym procesem kontynuacji. Używaj go do rozwijania koncepcji filmowej, krótkiej opowieści produktowej lub segmentu wizualnego ze zdefiniowaną sceną, akcją i wrażeniem słuchowym.
Najpierw opisz temat i widoczne zdarzenie. Ustal otoczenie, porę dnia i światło, a następnie określ punkt widzenia lub ruch kamery oraz zamierzony styl wizualny. Własny opis sceny może przedstawiać szklane naczynie na ciemnej powierzchni studyjnej, z powolnym ruchem bocznym odsłaniającym odbicie i miękkim dźwiękiem otoczenia towarzyszącym odsłonięciu. Każda instrukcja daje widoczną lub słyszalną cechę, którą można ocenić w gotowym wyniku.
Schemat promptowania Google traktuje temat, akcję, scenę, kamerę i estetykę jako odrębne części opisu. Używaj tych, które służą ujęciu, zamiast dodawać wszystkie możliwe określenia. Pisz wskazówki po angielsku dla udokumentowanego profilu promptów. Jeśli scena ma kilka działań, określ ich związek i dopasuj je do krótkiego klipu, aby odsłonięcie lub reakcja pozostały czytelne.
Obraz początkowy ustala wygląd i kompozycję otwarcia. Używaj go, gdy postać, produkt lub otoczenie już istnieje jako materiał wizualny, i opisz ruch, który ma się z niego rozwinąć. Ostatnia klatka dodaje docelową kompozycję zakończenia. Przygotuj klatki graniczne przekazujące wiarygodne przejście i zachowujące szczegóły identyfikujące główny temat, a następnie sprawdź ruch między tymi klatkami po generowaniu.
Referencje materiałów służą innemu celowi: kierują wyglądem postaci lub przedmiotu w nowo generowanej scenie, a klatki graniczne określają konkretne momenty w tej scenie. Wybieraj referencje pokazujące ważne cechy wizualne i jasno określ rolę każdego materiału w prompcie. Specyfikacja generowania wideo z obrazów referencyjnych modelu produkcyjnego używa ośmiosekundowego wyniku w tym procesie referencyjnym, odrębnie od zwykłego wyboru długości dla generowania z tekstu.
Zwykły profil produkcyjny producenta generuje klipy o długości czterech, sześciu lub ośmiu sekund przy 24 klatkach na sekundę. Wymienia kadr poziomy 16:9 i pionowy 9:16, maksymalnie cztery filmy wyjściowe na prompt oraz rozdzielczości 720p, 1080p i 4K. Formatem filmu wyjściowego jest MP4. Specyfikacja oparta na obrazie przyjmuje JPEG lub PNG, podaje maksimum 20 MB na obraz wejściowy i obsługuje konfiguracje wejściowe 720p/1080p. Wybierz profil wyjściowy do zamierzonego miejsca użycia i utrzymuj kompozycję klatki czytelną w tym rozmiarze.
Natywny dźwięk może towarzyszyć widocznej scenie. Określ wypowiadane kwestie, atmosferę i efekty dźwiękowe jako części tego samego opisu, nazywając podmiot lub zdarzenie wywołujące każdy z nich. Instrukcja dialogu i instrukcja kamery odpowiadają na różne pytania: jedna ustala wykonanie, druga — sposób, w jaki widz je widzi. Zmieść słowa w użytecznym czasie mowy klipu i oceń zrozumiałość dźwięku oraz jego związek z akcją.
Dla kontynuacji producent udostępnia osobny proces przedłużania wideo. Zacznij od odpowiedniego wygenerowanego klipu źródłowego i opisz następne widoczne zdarzenie lub zmianę w scenie. Zachowaj oryginalny i kontynuowany segment, aby ich punkt połączenia można było ocenić pod kątem wyglądu, ruchu i dźwięku. Zwykłych wyborów czasu trwania i rozdzielczości dla nowego generowania nie należy traktować jako uniwersalnej umowy dla każdej operacji przedłużania.
Opis negatywny może skupić wykluczenia na wymaganiach wizualnych zadania. W serii wariantów produktu utrzymuj stabilny temat i kompozycję, zmieniając jeden kierunek twórczy, taki jak oświetlenie lub odległość kamery. Zapisuj prompt, referencje i wybrane ustawienia wraz z wynikiem. Pozwala to porównać użyteczną różnicę twórczą zamiast zbioru niepowiązanych generowań.
Zwykły profil produkcyjny Veo 3.1 i Veo 3.1 Fast mają różne profile rozdzielczości wyjściowej. Fast wymienia 720p i 1080p, a zwykły 3.1 także 4K. Zachowaj wybraną wersję przy wyniku, bez cichego zastępowania identyfikatora modelu produkcyjnego starszym profilem Preview lub inną generacją Veo. Zarówno wygląd obiektu lub postaci, jak i obsługiwana operacja zależą od wybranego procesu.
Generowanie jest operacją, której gotowy wynik udostępnia materiały wideo do odtwarzania i późniejszego montażu. Zachowaj zwrócone pliki z ich klatkami źródłowymi, materiałami referencyjnymi i opisem oraz zachowaj dostarczone informacje o pochodzeniu treści. Sprawdź każdy rzeczywisty wynik pod kątem wyglądu obiektu lub postaci, akcji, kadru, dźwięku i kompozycji końcowej. Użyj wybranego klipu jako elementu produkcji, z tytułami, przejściami lub innym wykończeniem dodawanym w szerszym montażu.
Ailoot Ultra · Wideo POST /v1/videos google/veo-3.1
google/veo-3.1Start
Veo 3.1 to model wideo Google do scen opartych na tekście i obrazie, z generowanym dźwiękiem, sterowanymi klatkami granicznymi i materiałami referencyjnymi. Jego profil produkcyjny oferuje klipy o długości czterech, sześciu lub ośmiu sekund przy 24 kl./s, z rozdzielczościami wyjściowymi obejmującymi 720p, 1080p i 4K.
- Akceptowane dane wejściowe
- Tekst
- Wyniki
- Wideo
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · Wideo POST /v1/videos
- Wejście
text- Wyjście
video- Format wyjściowy
- mp4
- Liczba wyników
- Do 4 wyniks
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity google/veo-3.1 | Domyślnie— |
Poleprompt | Typstring | WymaganieWymagane | Wartości i limity Maksymalna liczba bajtów UTF-8: 10 000 Wymagana treść inna niż białe znaki: Tak | Domyślnie— |
Poleduration | Typinteger | WymaganieWymagane | Wartości i limity 4, 6, 8 | Domyślnie— |
Poleresolution | Typstring | WymaganieWymagane | Wartości i limity 720p | Domyślnie— |
Poleaspect_ratio | Typstring | WymaganieWymagane | Wartości i limity 16:9, 9:16 | Domyślnie— |
Polegenerate_audio | Typboolean | WymaganieWymagane | Wartości i limity false, true | Domyślnie— |
Kombinacje materiałów wejściowych
Tekst na wideo · Wymagane: prompt
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, prompt, duration, resolution, aspect_ratio, generate_audio |
Parametradditional_properties | Kontraktfalse |
Parametrparameters | Kontrakt{"name":"model","type":"string","required":true,"enum":["google/veo-3.1"]}, {"name":"prompt","type":"string","required":true,"non_whitespace":true,"max_utf8_bytes":10000}, {"name":"duration","type":"integer","required":true,"enum":[4,6,8]}, {"name":"resolution","type":"string","required":true,"enum":["720p"]}, {"name":"aspect_ratio","type":"string","required":true,"enum":["16:9","9:16"]}, {"name":"generate_audio","type":"boolean","required":true,"enum":[false,true]} |
Parametrmaterial_types | Kontrakttext |
Aliasy metody: /v1/videos/generations, /videos, /videos/generations
Cykl życia: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/videos/generations/{request_id}/content
Zachowaj kompletną odpowiedź i pierwotne zwrócone identyfikatory.
Nigdy nie ponawiaj żądania utworzenia o nieznanym wyniku.
Cennik
Jak obliczana jest ostateczna opłata
Wyświetlane stawki służą do oszacowania kosztu przed generowaniem. Ostateczna opłata jest obliczana na podstawie kosztu zarejestrowanego dla pierwotnego generowania. Zmierzony czas trwania wyniku i prognozowane ilości nie stanowią ostatecznej ilości podlegającej rozliczeniu.
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Szacunkowe stawki do porównania
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Przewidywana ilość | Generuj dźwięk | Rozdzielczość | Jednostka rozliczeniowa | Warunki rozliczania | Opłata |
|---|---|---|---|---|---|---|---|
| KonfiguracjaBazowe stawki za tokeny | Tabela stawekStawka podstawowa | Przewidywana ilość— | Generuj dźwięk— | Rozdzielczość— | Jednostka rozliczeniowa— | Warunki rozliczania— | Opłata Wejście · Tokeny wejściowe · Szacunek tylko do porównania — / 1K tokenów Wyjście · Tokeny wyjściowe · Szacunek tylko do porównania — / 1K tokenów Wejście · Odczyt cache · Szacunek tylko do porównania — / 1K tokenów Wejście · Zapis do cache · Szacunek tylko do porównania — / 1K tokenów Wejście · Zapis do cache, 1 godz. · Szacunek tylko do porównania — / 1K tokenów |
| KonfiguracjaUltra | Tabela stawek— | Przewidywana ilośćŻądana konfiguracja; tylko szacunek. | Generuj dźwiękZ dźwiękiem | Rozdzielczość720p | Jednostka rozliczeniowaza sekundę wideo wyjściowego | Warunki rozliczania— | Opłata Wyjście · Szacowana sekunda wideo na wyjściu · Szacunek tylko do porównania $0.8 za sekundę wideo wyjściowego Wyświetlana stawka szacuje koszt przed generowaniem. Końcowa opłata jest obliczana na podstawie kosztu zapisanego dla pierwotnego generowania. Fizyczny czas trwania wideo nie jest wielkością rozliczeniową. |
| KonfiguracjaCena wideo | Tabela stawek— | Przewidywana ilość— | Generuj dźwięk— | Rozdzielczość— | Jednostka rozliczeniowaza sekundę wideo | Warunki rozliczaniadźwięk: with_audio; rozdzielczość: 4k | Opłata Wyjście · Cena wideo · Szacunek tylko do porównania $1.2 za sekundę wideo |
| KonfiguracjaUltra | Tabela stawek— | Przewidywana ilośćŻądana konfiguracja; tylko szacunek. | Generuj dźwiękBez dźwięku | Rozdzielczość720p | Jednostka rozliczeniowaza sekundę wideo wyjściowego | Warunki rozliczania— | Opłata Wyjście · Szacowana sekunda wideo na wyjściu · Szacunek tylko do porównania $0.4 za sekundę wideo wyjściowego Wyświetlana stawka szacuje koszt przed generowaniem. Końcowa opłata jest obliczana na podstawie kosztu zapisanego dla pierwotnego generowania. Fizyczny czas trwania wideo nie jest wielkością rozliczeniową. |
| KonfiguracjaCena wideo | Tabela stawek— | Przewidywana ilość— | Generuj dźwięk— | Rozdzielczość— | Jednostka rozliczeniowaza sekundę wideo | Warunki rozliczaniadźwięk: without_audio; rozdzielczość: 4k | Opłata Wyjście · Cena wideo · Szacunek tylko do porównania $0.8 za sekundę wideo |
| KonfiguracjaSzacowany koszt generowania | Tabela stawek— | Przewidywana ilośćszacunek dla jednego generowania | Generuj dźwięk— | Rozdzielczość— | Jednostka rozliczeniowa— | Warunki rozliczania— | Opłata Wyjście · Szacowany koszt generowania · Szacunek tylko do porównania $1.6 szacunek przed generowaniem Ten szacunek nie jest dodatkową opłatą ani stałą stawką za ukończone generowanie. |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Szczegóły taryfy referencyjnej
Referencyjne tabele modelu nie zmieniają wyboru metody, wyceny ani opłat. Naliczane opłaty korzystają ze stawek wybranej metody Ailoot.
Referencje cenowe konfiguracji wideo
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Warunki rozliczania | Opłata |
|---|---|---|
| KonfiguracjaCena wideo | Warunki rozliczaniadźwięk: with_audio | Opłata Wyjście · Cena wideo $0.8 za sekundę wideo Opublikowana cena referencyjna dla pokazanej konfiguracji. Ostateczne opłaty wynikają z faktycznie rozliczonej konfiguracji. |
| KonfiguracjaCena wideo | Warunki rozliczaniadźwięk: with_audio; rozdzielczość: 4k | Opłata Wyjście · Cena wideo $1.2 za sekundę wideo Opublikowana cena referencyjna dla pokazanej konfiguracji. Ostateczne opłaty wynikają z faktycznie rozliczonej konfiguracji. |
| KonfiguracjaCena wideo | Warunki rozliczaniadźwięk: without_audio | Opłata Wyjście · Cena wideo $0.4 za sekundę wideo Opublikowana cena referencyjna dla pokazanej konfiguracji. Ostateczne opłaty wynikają z faktycznie rozliczonej konfiguracji. |
| KonfiguracjaCena wideo | Warunki rozliczaniadźwięk: without_audio; rozdzielczość: 4k | Opłata Wyjście · Cena wideo $0.8 za sekundę wideo Opublikowana cena referencyjna dla pokazanej konfiguracji. Ostateczne opłaty wynikają z faktycznie rozliczonej konfiguracji. |
Przykładowe żądania
Ailoot Ultra · Wideo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/veo-3.1", "prompt": "a calm greenhouse", "duration": 6, "resolution": "720p", "aspect_ratio": "16:9", "generate_audio": true}')
Path('request.json').write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Odbieranie i zapisywanie wyników
Ailoot Ultra · Wideo
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Sprawdź status zadania
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
-H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Inne odczyty treści
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
urls.append((str(i),u))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
Zachowaj wszystkie ukończone wyniki
Zapisz każde ukończone wideo lub zwrócony plik; pobierz każdy faktycznie zwrócony URL zasobu.
Zachowaj każdy podpisany URL należący do użytkownika z ukończonego data[] oraz pełne metadane statusu. Zapisz każdy wynik, w tym wygenerowany dźwięk. Poprawna ścieżka dźwiękowa AAC może występować nawet przy generate_audio=false; zachowaj kompletny oryginalny MP4 wraz z tym dźwiękiem.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Odczytuj istniejące pierwotne zadanie; nigdy nie ponawiaj wysłania o nieznanym wyniku.
Maksymalna liczba wyników: 4.
Pola odpowiedzi
| Pole | Typ | Znaczenie |
|---|---|---|
Poleid | Typstring | Znaczenie— |
Poleobject | Typstring | Znaczenie— |
Polemodel | Typstring | Znaczenie— |
Polestatus | Typstring | Znaczenie— |
Poledata[] | Typsigned content URL | Znaczenie— |
Polecharge_pending_check | Typboolean | Znaczenie— |
Poleerror.code | Typstring | Znaczenie— |
Poleerror.message | Typstring | Znaczenie— |
Poleoperation_id | Typstring | ZnaczenieOdpowiedź HTTP503 result_pending_check pierwotnego statusu lub treści: ten sam pierwotny publiczny identyfikator operacji wideo w polu id. |
Poleerror.type | Typstring | Znaczenieserver_error przy HTTP503 result_pending_check. |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekOdczyt surowej treści żądania kończy się błędem przed parsowaniem profilu wideo | Następny krokZachowaj zwróconą odpowiedź i popraw nieczytelną treść żądania. |
Odpowiedź422 · price_unavailable | WarunekNie można sparsować dokładnego profilu wideo albo kompletny sparsowany profil nie ma gotowej, dokładnie dopasowanej karty cenowej | Następny krokZachowaj odpowiedź; użyj kompletnego, dokładnie dopuszczonego profilu i jego opublikowanej karty. Ta gałąź wykonuje się przed wysłaniem do dostawcy. |
Odpowiedź409 · video_not_ready | WarunekTreść pierwotnego wyniku nie jest jeszcze dostępna | Następny krokOdpytuj pierwotny zwrócony identyfikator i przestrzegaj Retry-After. |
Odpowiedźserver_error | WarunekZwrócona odpowiedź wskazuje, że operacja lub wynik wymaga sprawdzenia | Następny krokZachowaj pierwotnie zwrócony identyfikator operacji lub zadania, nagłówki żądania i odpowiedź; kontynuuj obsługiwane odczyty tej pierwotnej operacji. Nie wysyłaj ponownie żądania utworzenia. |
Odpowiedź503 · result_pending_check | WarunekGET pierwotnego statusu lub treści: zadanie nie jest opublikowane, pierwotne zadanie nie ma stanu failed/cancelled/expired, a stan lokalny to unknown lub status pierwotnego zadania to completed. | Następny krokZachowaj pierwotne id i operation_id (ten sam publiczny identyfikator wideo), odpowiedź i nagłówki; odczytuj wyłącznie pierwotny status lub treść. Nigdy nie wysyłaj nowego żądania generowania. |
Aliasy
Aliasy modelu
Ailoot Ultra google/veo-3.1
Aliasy ścieżek metod
/v1/videos/generations, /videos, /videos/generations
Powiązane ID modeli
FAQ · Google: Veo 3.1
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/videos·google/veo-3.1:text→video- Jakich pól używa żądanie?
POST /v1/videos·google/veo-3.1:model,prompt,duration,resolution,aspect_ratio,generate_audio