modele

Kling v2.1

Markdown · JSON

Kling v2.1

Kling v2.1 generuje wideo z obrazu referencyjnego i pisemnego opisu ruchu. Udokumentowany wpis dotyczący generowania wideo z obrazu wymienia czas trwania pięciu lub dziesięciu sekund oraz tryby std i pro do zaplanowania sekwencji.

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.

Kling v2.1 to model wideo Kling, który zgodnie z udokumentowanym katalogiem umożliwia generowanie wideo z obrazu. Zacznij od nieruchomego obrazu referencyjnego określającego scenę, a następnie opisz ruch, który zmieni go w użyteczne ujęcie. Zdjęcie produktu, ilustrowane otoczenie lub kadr z postacią mogą dostarczyć kompozycji, z której rozwinie się sekwencja.

Wybierz materiał referencyjny, który pozwala zrozumieć zamierzone działanie. Postać stojąca obok drzwi daje jasny punkt wyjścia do wejścia do pokoju; przedmiot umieszczony na niezagraconej powierzchni ułatwia ocenę jego obrysu. Zachowaj materiał referencyjny w oryginalnej jakości i powiąż go z wygenerowanym klipem.

Opisz jedno spójne działanie. Określ główny obiekt, kierunek ruchu i zamierzony stan końcowy. Przy interakcji wyjaśnij relacje między uczestnikami: kto sięga, co jest dotykane i gdzie kończy się działanie. Używaj widocznych szczegółów, które można sprawdzić w powstałej sekwencji.

Dostosuj kadr do miejsca wykorzystania. Udokumentowany wpis dotyczący generowania wideo z obrazu wymienia proporcje poziome, pionowe i kwadratowe oraz czas trwania pięciu lub dziesięciu sekund. Określ, gdzie w wybranym kadrze powinien pozostawać główny obiekt. Kompozycja pionowa i szerokie ujęcie wprowadzające stawiają inne wymagania temu samemu ruchowi.

Udokumentowane opcje generowania wideo z obrazu obejmują tryby generowania std i pro. Przy porównywaniu wariantów zachowaj wybrany tryb wraz z wynikiem. Oceniaj rezultat względem briefu: zamówionego działania, kompozycji, wyglądu głównego obiektu i rozłożenia akcji w czasie. Sama nazwa trybu nie mówi, jak dobrze dane ujęcie spełnia te potrzeby.

Użyj wskazówek dotyczących kamery, aby wspierać zdarzenie. Nieruchoma kamera może pokazać zmianę pozy, ruch boczny może odsłonić otoczenie, a ruch do przodu może podkreślić szczegół. Określ zamierzoną relację między głównym obiektem a punktem widzenia, aby ruch kamery nie konkurował z działaniem, które widz ma śledzić.

Sprawdź spójność całego klipu. W przypadku produktu obserwuj kształt, oznaczenia i wygląd materiału wraz ze zmianami punktu widzenia. W przypadku osoby obserwuj rysy twarzy, dłonie, ubranie i kontakt z pobliskimi przedmiotami. Sprawdź końcową kompozycję w kontekście następnego ujęcia lub grafiki w montażu.

Zapisz gotowe wideo, materiał referencyjny, prompt i wybrane ustawienia jako jeden zestaw danych ujęcia. Wprowadzając poprawki, wskaż konkretną rozbieżność wizualną i zachowaj elementy, które już służą scenie. Porównuj warianty przy tej samej wielkości obrazu i prędkości odtwarzania, aby wybór odpowiadał ruchowi i kompozycji, które rzeczywiście zobaczy odbiorca.

Ailoot Ultra · Video POST /v1/videos kling-v2-1

kling-v2-1

Kling /kling-v2-1

Start

Kling v2.1 generuje wideo z obrazu referencyjnego i pisemnego opisu ruchu. Udokumentowany wpis dotyczący generowania wideo z obrazu wymienia czas trwania pięciu lub dziesięciu sekund oraz tryby std i pro do zaplanowania sekwencji.

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
kling-v2-1
Warunki: Użyj dokładnie tego selektora trasowania Ailoot.
Domyślnie—
PolemodeTypstringWymaganieOpcjonalneWartości i limity
std, pro
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślniestd
Poleaspect_ratioTypstringWymaganieOpcjonalneWartości i limity
16:9, 9:16, 1:1
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
PoledurationTypintegerWymaganieOpcjonalneWartości i limity
5, 10
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>WymaganieWymaganeWartości i limity
Warunki: Podaj rzeczywisty dostępny URL obrazu. Lista jest akceptowana tylko wtedy, gdy schemat parametru przewiduje tablicę.
Domyślnie—
Polenegative_promptTypstringWymaganieOpcjonalneWartości i limity
Warunki: Użyj udokumentowanego pola dla wybranego modelu i podanych opcji; pomiń nieokreśloną wartość opcjonalną.
Domyślnie—
PolepromptTypstringWymaganieWymaganeWartości i limity
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, image
ParametroptionalKontraktmode, aspect_ratio, duration, end_image, negative_prompt
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ą., 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śćOpłata
KonfiguracjaBazowe stawki za tokenyTabela stawekStawka podstawowaPrzewidywana ilość—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
KonfiguracjaSzacowany koszt generowaniaTabela stawek—Przewidywana ilośćszacunek dla jednego generowaniaOpłata
Wyjście · Szacowany koszt generowania · Szacunek tylko do porównania $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 →

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": "kling-v2-1", "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 kling-v2-1

Aliasy ścieżek metod

/v1/videos/generations

Powiązane ID modeli

kling-v2-1

FAQ · Kling v2.1
Jakie dane wejściowe i wyniki są dostępne?

POST /v1/videos · kling-v2-1: text, image → video

Jakich pól używa żądanie?

POST /v1/videos · kling-v2-1: model, mode, aspect_ratio, duration, end_image, image, negative_prompt, prompt

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