Kling v2.1
Kling v2.1 genererer videoer ud fra et referencebillede og en skriftlig beskrivelse af bevægelsen. Den dokumenterede billede-til-video-post angiver valgmuligheder på fem og ti sekunder samt tilstandene std og pro til planlægning af sekvensen.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Kling v2.1 er en Kling-videomodel med billede-til-video-funktionalitet i det dokumenterede katalog. Begynd med et referencestillbillede, der fastlægger scenen, og beskriv derefter den bevægelse, der gør det til en brugbar indstilling. Et produktbillede, et illustreret miljø eller et billede af en figur kan levere den komposition, sekvensen udvikler sig fra.
Vælg en reference, der gør det muligt at forstå den planlagte handling. Et motiv placeret ved siden af en dør giver et tydeligt udgangspunkt for at gå ind i et rum; en genstand på en ryddelig overflade gør det lettere at undersøge dens kontur. Bevar referencen i dens oprindelige kvalitet, og gem den i tilknytning til det genererede klip.
Beskriv ét sammenhængende handlingsforløb. Angiv motivet, bevægelsesretningen og den ønskede sluttilstand. Ved en interaktion skal du forklare forholdet mellem deltagerne: hvem der rækker ud, hvad der berøres, og hvor handlingen slutter. Brug synlige detaljer, som kan kontrolleres i den resulterende sekvens.
Tilpas billedudsnittet til det sted, hvor indstillingen skal bruges. Den dokumenterede billede-til-video-post angiver liggende, stående og kvadratiske billedforhold samt valgmuligheder på fem og ti sekunder. Fastlæg, hvor motivet skal forblive inden for den valgte billedramme. En stående komposition og et bredt etableringsbillede stiller forskellige krav til den samme bevægelse.
De dokumenterede billede-til-video-kontroller omfatter genereringstilstandene std og pro. Gem den valgte tilstand sammen med resultatet, når du sammenligner forslag. Vurdér outputtet i forhold til beskrivelsen: den ønskede handling, kompositionen, motivets udseende og timingen. En tilstandsbetegnelse alene fortæller ikke, hvor godt en bestemt indstilling opfylder disse behov.
Brug kamerainstruktioner til at understøtte hændelsen. Et fast kamera kan vise en kropsstilling, der ændrer sig, en sidelæns bevægelse kan afsløre et miljø, og en fremadgående bevægelse kan fremhæve en detalje. Angiv det ønskede forhold mellem motiv og kameravinkel, så kamerabevægelsen ikke konkurrerer med den handling, seeren skal følge.
Gennemse kontinuiteten i hele klippet. Ved et produkt skal du undersøge form, mærkninger og materialets udseende, efterhånden som vinklen ændrer sig. Ved en person skal du undersøge ansigtstræk, hænder, beklædning og kontakt med genstande i nærheden. Kontrollér slutkompositionen i sammenhæng med den næste indstilling eller grafik i klipningen.
Gem den færdige video, referencen, prompten og de valgte indstillinger som én samlet registrering af indstillingen. Ved revision skal du identificere den konkrete visuelle afvigelse og bevare de dele, der allerede understøtter scenen. Sammenlign forslag ved samme afspilningsstørrelse og hastighed, så valget afspejler den bevægelse og komposition, publikum faktisk vil se.
Ailoot Ultra · Video POST /v1/videos kling-v2-1
kling-v2-1Start
Kling v2.1 genererer videoer ud fra et referencebillede og en skriftlig beskrivelse af bevægelsen. Den dokumenterede billede-til-video-post angiver valgmuligheder på fem og ti sekunder samt tilstandene std og pro til planlægning af sekvensen.
- Accepterede input
- Tekst · Billeder
- Resultater
- Video
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Video POST /v1/videos
- Inputtyper
text,image- Outputtyper
video
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser kling-v2-1 Betingelser: Brug præcis denne routingvælger for Ailoot. | Standard— |
Feltmode | Typestring | KravValgfrit | Værdier og grænser std, pro Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standardstd |
Feltaspect_ratio | Typestring | KravValgfrit | Værdier og grænser 16:9, 9:16, 1:1 Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standard— |
Feltduration | Typeinteger | KravValgfrit | Værdier og grænser 5, 10 Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standard— |
Feltend_image | Typestring | KravValgfrit | Værdier og grænser Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standard— |
Feltimage | Typestring or array<string> | KravPåkrævet | Værdier og grænser Betingelser: Angiv din faktiske tilgængelige billed-URL. En liste accepteres kun, hvis parameterskemaet angiver et array. | Standard— |
Feltnegative_prompt | Typestring | KravValgfrit | Værdier og grænser Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standard— |
Feltprompt | Typestring | KravPåkrævet | Værdier og grænser Betingelser: Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. | Standard— |
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, prompt, image |
Parameteroptional | Kontraktmode, aspect_ratio, duration, end_image, negative_prompt |
Parametermaterial_types | Kontrakttext, image |
Parameterconditions | KontraktBrug præcis denne routingvælger for Ailoot., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet., Angiv din faktiske tilgængelige billed-URL. En liste accepteres kun, hvis parameterskemaet angiver et array., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet., Brug det dokumenterede felt og de angivne valgmuligheder for den valgte model; udelad en valgfri værdi, hvis den ikke er angivet. |
Metodealiaser: /v1/videos/generations
Livscyklus: 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}
Priser
Sådan beregnes det endelige beløb
De viste satser bruges til at anslå omkostningen før genereringen. Det endelige beløb beregnes ud fra den registrerede omkostning for den oprindelige generering. Den målte varighed af outputtet og de anslåede mængder er ikke den endelige fakturerbare mængde.
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Estimerede takster til sammenligning
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Forventet mængde | Beløb |
|---|---|---|---|
| KonfigurationGrundpriser for tokens | TakstplanGrundtakst | Forventet mængde— | Beløb Input · Inputtokens · Estimat kun til sammenligning — / 1K tokens Output · Outputtokens · Estimat kun til sammenligning — / 1K tokens Input · Cachelæsning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning, 1 time · Estimat kun til sammenligning — / 1K tokens |
| KonfigurationAnslået genereringsomkostning | Takstplan— | Forventet mængdeestimat for én generering | Beløb Output · Anslået genereringsomkostning · Estimat kun til sammenligning $6 estimat før generering Dette estimat er hverken et ekstra gebyr eller en fast pris for den færdige generering. |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Video
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
Hent og gem resultater
Ailoot Ultra · Video
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Behold alle færdige resultater
Gem hver færdig video eller returneret fil; hent hver faktisk returneret fil-URL.
Behold hele svaret og alle headere, de oprindelige identifikatorer, hvert faktisk output og alle felter til forbrug og afregning. Gem hvert entydigt aktiv, du ejer, og behold alle roller, der henviser til det.
Hvis det oprindelige svar skal kontrolleres
Behold det returnerede offentlige opgave- eller operations-id og alle headere. Læs kun den oprindelige opgave; unknown eller result_pending_check giver ikke tilladelse til en ny oprettelse.
Svarfelter
| Felt | Type |
|---|---|
Feltid | Typestring |
Feltpolling_url | Typestring |
Feltprovider_task_id | Typestring |
Felttask_id | Typestring |
Feltstatus | Typestring |
Feltvideo_url | Typestring |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseEt påkrævet felt, en modelvælger, en type eller en inputrepræsentation er ugyldig. | Næste trinUndersøg de returnerede valideringsoplysninger, før du forbereder en separat anmodning. |
Svar | BetingelseDen oprindelige anmodning eller resultatet er ukendt eller skal kontrolleres. | Næste trinBevar de oprindelige identifikatorer og headere; læs kun understøttede status- eller biblioteksposter. Indsend ikke oprettelsesanmodningen igen. |
Aliaser
Modelaliaser
Ailoot Ultra kling-v2-1
Aliaser for metodestier
/v1/videos/generations
Relaterede kalder-ID’er
FAQ · Kling v2.1
- Hvilke input og resultater er tilgængelige?
POST /v1/videos·kling-v2-1:text,image→video- Hvilke felter bruger anmodningen?
POST /v1/videos·kling-v2-1:model,mode,aspect_ratio,duration,end_image,image,negative_prompt,prompt