modele

Vidu Q1 Reference

Markdown · JSON

Vidu Q1 Reference

Vidu Q1 Reference łączy pisemny opis filmu z opcjonalnymi obrazami referencyjnymi i obrazem końcowym. Wybierz kadrowanie, rozdzielczość i czas trwania cztery lub osiem sekund przez Ailoot.

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.

Użyj vidu-q1-reference z model i prompt w /v1/videos. Żądanie udostępnia image jako ciąg lub tablicę do dziesięciu ciągów, end_image, aspect_ratio, duration i resolution. Wybierz cztery lub osiem sekund, 360p, 720p lub 1080p oraz kadrowanie 16:9, 1:1 lub 9:16.

Opisz scenę, która zachowuje rozpoznawalność obiektu lub postaci z obrazu referencyjnego. Przekazując obrazy, wskaż rolę każdej referencji i szczegóły wyglądu obiektu lub postaci do zachowania. Nadaj akcji i kierunkowi pracy kamery oddzielne instrukcje, a następnie określ końcową pozę lub kadrowanie. Zachowaj wybrane obrazy, prompt i opcjonalny obraz końcowy wraz z żądaniem, aby gotowy film można było porównać z tym samym materiałem.

Wyślij ujęcie raz przez /v1/videos i zachowaj zwrócony identyfikator żądania. Odpytuj tę samą operację przez /v1/videos/{request_id}, a następnie zapisz każdy gotowy materiał wideo i pełną odpowiedź. Sprawdź całą akcję i kompozycję końcową względem dostarczonego materiału i opisu.

Ailoot Ultra · Video POST /v1/videos vidu-q1-reference

vidu-q1-reference

Inne /vidu-q1-reference

Start

Vidu Q1 Reference łączy pisemny opis filmu z opcjonalnymi obrazami referencyjnymi i obrazem końcowym. Wybierz kadrowanie, rozdzielczość i czas trwania cztery lub osiem sekund przez Ailoot.

Akceptowane dane wejściowe
Tekst · Obrazy
Wyniki
Wideo

Dostępne w Ailoot · dane wejściowe i metody

Ailoot Ultra · Video POST /v1/videos
Wejście
text, image
Wyjście
video
PoleTypWymaganieWartości i limityDomyślnie
PolemodelTypstringWymaganieWymaganeWartości i limity
vidu-q1-reference
Warunki: Użyj dokładnie tego selektora trasowania Ailoot.
Domyślnie—
Poleaspect_ratioTypstringWymaganieOpcjonalneWartości i limity
16:9, 1:1, 9:16
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
PoledurationTypintegerWymaganieOpcjonalneWartości i limity
4, 8
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
Poleend_imageTypstringWymaganieOpcjonalneWartości i limity
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
PoleimageTypstring or array<string>WymaganieOpcjonalneWartości i limity
Warunki: Podaj rzeczywisty dostępny URL obrazu. Lista jest akceptowana tylko wtedy, gdy schemat parametru przewiduje tablicę.
Domyślnie—
PolepromptTypstringWymaganieWymaganeWartości i limity
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
PoleresolutionTypstringWymaganieOpcjonalneWartości i limity
360p, 720p, 1080p
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
Parametry i cykl życia metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, prompt
ParametroptionalKontraktaspect_ratio, duration, end_image, image, resolution
Parametrmaterial_typesKontrakttext, image
ParametrconditionsKontraktUżyj dokładnie tego selektora trasowania Ailoot., Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną., Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną., Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną., Podaj rzeczywisty dostępny URL obrazu. Lista jest akceptowana tylko wtedy, gdy schemat parametru przewiduje tablicę., Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną., Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.

Aliasy metody: /v1/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/media/assets

GET /v1/media/assets/{asset_id}

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.

KonfiguracjaTabela stawekPrzewidywana ilośćIlość do rozliczeniaOpłata
KonfiguracjaBazowe stawki za tokenyTabela stawekStawka podstawowaPrzewidywana ilość—Ilość do rozliczenia—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
KonfiguracjaZa żądanieTabela stawek—Przewidywana ilość—Ilość do rozliczeniajedno żądanieOpłata
Wejście · Szacunek tylko do porównania $0.8 za żądanie
KonfiguracjaSzacowany koszt generowaniaTabela stawek—Przewidywana ilośćszacunek dla jednego generowaniaIlość do rozliczenia—Opłata
Wyjście · Szacowany koszt generowania · Szacunek tylko do porównania $0.8 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 →

Przykładowe żądania

Ailoot Ultra · Video

curl · utwórz raz i zachowaj kompletny wynikOdczytaj pierwotne zadanieZapisz każdy ukończony zasób należący do Ciebie
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
: "${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "vidu-q1-reference", "prompt": "A cat is walking on grass.", "image": "YOUR_ACCESSIBLE_IMAGE_URL"}')
p['image']=os.environ['AILOOT_IMAGE_URL']
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
# Submit once. Retain the complete result, original identifiers and every response header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
    raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
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())
roles={}
def visit(v,path=""):
    if isinstance(v,dict):
        for k,x in v.items(): visit(x,path+"/"+k)
    elif isinstance(v,list):
        for i,x in enumerate(v): visit(x,path+"/"+str(i))
    elif isinstance(v,str):
        u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
        if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
            roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
    target=Path(f"asset-{i}.bin")
    subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
    raw=target.read_bytes()
    if not raw: raise SystemExit("Empty asset; retain original status and metadata")
    ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
    name=f"asset-{i}.{ext}"
    if target.name!=name: target.rename(name)
    manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS

Odbieranie i zapisywanie wyników

Ailoot Ultra · Video

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Zachowaj wszystkie ukończone wyniki

Zapisz każde ukończone wideo lub zwrócony plik; pobierz każdy faktycznie zwrócony URL zasobu.

Zachowaj kompletną odpowiedź i nagłówki, pierwotne identyfikatory, wszystkie rzeczywiste wyniki oraz wszystkie pola użycia i rozliczeń. Zapisz każdy unikalny zasób należący do użytkownika i zachowaj wszystkie role, które na niego wskazują.

Jeśli trzeba sprawdzić pierwotną odpowiedź

Zachowaj zwrócone publiczne id zadania lub operacji oraz wszystkie nagłówki. Odczytuj wyłącznie pierwotne zadanie; unknown ani result_pending_check nie uprawniają do ponownego utworzenia.

Pola odpowiedzi
PoleTyp
PoleidTypstring
Polepolling_urlTypstring
Poleprovider_task_idTypstring
Poletask_idTypstring
PolestatusTypstring
Polevideo_urlTypstring
Błędy i dalsze kroki
OdpowiedźWarunekNastępny krok
Odpowiedź400 · invalid_request_errorWarunekWymagane pole, selektor modelu, typ lub postać danych wejściowych są nieprawidłowe.Następny krokPrzed przygotowaniem osobnego żądania sprawdź zwrócone szczegóły walidacji.
OdpowiedźWarunekOryginalne żądanie lub wynik są nieznane albo wymagają sprawdzenia.Następny krokZachowaj oryginalne identyfikatory i nagłówki; odczytuj tylko obsługiwane rekordy statusu lub biblioteki. Nie wysyłaj ponownie żądania utworzenia.

Aliasy

Aliasy modelu

Ailoot Ultra vidu-q1-reference

Aliasy ścieżek metod

/v1/videos/generations

Powiązane ID modeli

vidu-q1-reference

FAQ · Vidu Q1 Reference
Jakie dane wejściowe i wyniki są dostępne?

POST /v1/videos · vidu-q1-reference: text, image → video

Jakich pól używa żądanie?

POST /v1/videos · vidu-q1-reference: model, aspect_ratio, duration, end_image, image, prompt, resolution

Więcej szczegółów

Połącz Ailoot z Claude Code, OpenCode, Hermes albo własną aplikacją.

Firma i jej portfel projektów

Firma i jej portfel projektów: miliony klientów; miesięczna sprzedaż liczona w miliardach.

Kupuj tokeny z rabatem.

Rabat subskrypcji do regularnej pracy. Kody promocyjne — do 50% na tokeny.

Subskrypcja
Wybierz plan z rabatem do regularnych żądań.
Kod promocyjny do 50%
Wpisz kod przy zakupie. Cena zostanie przeliczona według aktualnej promocji.
Koszty w historii
Model, tokeny i kwota są zapisywane dla każdego żądania.

Wybierz subskrypcję · Sprawdź ceny modeli

Połącz API z produktem, który sprzedajesz.

SaaS, aplikacje i boty na warunkach oferty i umowy licencyjnej Ailoot. Do odsprzedaży poproś o licencję resellerską.

Aplikacja komercyjna
Wbuduj generowanie tekstu, obrazów, wideo i dźwięku w płatne funkcje usługi.
Licencja resellerska
Prześlij opis projektu i schemat dostępu. Poproś o pisemne warunki używania i odsprzedaży.
Dokumenty na stronie
Oferta, umowa licencyjna i polityka przetwarzania danych są dostępne przed połączeniem.

Poproś o licencję resellerską · Oferta i umowa licencyjna