kling-v1
kling-v1 erstellt ein Video aus einem Textprompt mit ausdrücklich gewähltem Modus std oder pro. Legen Sie Einstellungsdauer und Promptparameter fest und rufen Sie anschließend alle fertigen Videoergebnisse über Ailoot ab.
Über das Modell
Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.
Verwenden Sie kling-v1 mit model, prompt und mode unter /v1/videos. Wählen Sie std oder pro und beschreiben Sie die Einstellung in einem Prompt mit bis zu 500 Zeichen. Die Anfrage stellt eine Dauer von fünf oder zehn Sekunden, aspect_ratio, model_name, cfg_scale und einen negative_prompt mit bis zu 200 Zeichen bereit.
Nutzen Sie den verfügbaren Promptraum für das dominierende Motiv, eine Handlung, die Umgebung und die Kameraführung. Stellen Sie kompositionsbestimmende Details vor schmückende Formulierungen. Der Parameter cfg_scale akzeptiert Werte von 0 bis 1; bewahren Sie die gewählte Einstellung mit dem Briefing auf, wenn Sie später eine Variante vergleichen.
Verfolgen Sie die ursprüngliche Anfrage-ID, statt einen zweiten Vorgang zur Fortschrittsprüfung anzulegen. Das Ergebnis verwendet data.task_status und data.task_result.videos[].url; succeed kennzeichnet den Abschluss. Speichern Sie jedes fertige Video und die vollständige zugehörige Antwort und prüfen Sie anschließend die gesamte Einstellung anhand des Prompts.
Ailoot Ultra · Video POST /v1/videos kling-v1
kling-v1Start
kling-v1 erstellt ein Video aus einem Textprompt mit ausdrücklich gewähltem Modus std oder pro. Legen Sie Einstellungsdauer und Promptparameter fest und rufen Sie anschließend alle fertigen Videoergebnisse über Ailoot ab.
- Zulässige Eingaben
- Text
- Ergebnisse
- Video
In Ailoot verfügbar · Eingaben und Methoden
Ailoot Ultra · Video POST /v1/videos
- Eingabetypen
text- Ausgabetypen
video
| Feld | Typ | Anforderung | Werte und Limits | Standard |
|---|---|---|---|---|
Feldmodel | Typstring | AnforderungErforderlich | Werte und Limits kling-v1 Bedingungen: Verwenden Sie genau diesen Ailoot-Routingselektor. | Standard— |
Feldprompt | Typstring | AnforderungErforderlich | Werte und Limits Maximale Länge: 500 Bedingungen: | Standard— |
Feldmode | Typstring | AnforderungErforderlich | Werte und Limits std, pro Bedingungen: | Standard— |
Feldmodel_name | Typstring | AnforderungOptional | Werte und Limits Bedingungen: Optionale Überschreibung des nativen Werts. Lassen Sie sie weg, um das ausgewählte Modell automatisch zu verwenden; ein ausdrücklich angegebener Wert bleibt erhalten. | Standard— |
Feldcfg_scale | Typnumber | AnforderungOptional | Werte und Limits Minimum: 0 Maximum: 1 Bedingungen: | Standard— |
Feldaspect_ratio | Typstring | AnforderungOptional | Werte und Limits Bedingungen: | Standard— |
Feldnegative_prompt | Typstring | AnforderungOptional | Werte und Limits Maximale Länge: 200 Bedingungen: | Standard— |
Feldduration | Typinteger | AnforderungOptional | Werte und Limits 5, 10 Bedingungen: | Standard— |
Methodenparameter und Lebenszyklus
| Parameter | Vertrag |
|---|---|
Parametercontent_type | Vertragapplication/json |
Parameterrequired | Vertragmodel, prompt, mode |
Parameteroptional | Vertragmodel_name, cfg_scale, aspect_ratio, negative_prompt, duration |
Parametermaterial_types | Vertragtext |
Parameterconditions | VertragVerwenden Sie genau diesen Ailoot-Routingselektor., Optionale Überschreibung des nativen Werts. Lassen Sie sie weg, um das ausgewählte Modell automatisch zu verwenden; ein ausdrücklich angegebener Wert bleibt erhalten. |
Methodenaliasnamen: /v1/videos/generations
Lebenszyklus: 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}
Tarife
So wird die endgültige Gebühr berechnet
Die angezeigten Tarife dienen zur Kostenschätzung vor der Generierung. Der endgültige Betrag wird aus den für die ursprüngliche Generierung erfassten Kosten berechnet. Die gemessene Ausgabedauer und prognostizierte Mengen sind nicht die endgültige abrechenbare Menge.
Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.
- Schnellmodus
- Nicht angegeben Wenn der Schnellmodus ausgewählt ist
- Flex-Modus
- Nicht angegeben Wenn der Modus flex ausgewählt ist
- Maximaler Denkaufwand
- Nicht angegeben Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird
Geschätzte Tarife zum Vergleich
Preise nach Konfiguration
Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.
| Konfiguration | Tarifstaffel | Prognostizierte Menge | Gebühr |
|---|---|---|---|
| KonfigurationBasistarife für Token | TarifstaffelGrundtarif | Prognostizierte Menge— | Gebühr Eingabe · Eingabetoken · Schätzung nur zum Vergleich — / 1K Token Ausgabe · Ausgabetoken · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Lesen · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Schreiben · Schätzung nur zum Vergleich — / 1K Token Eingabe · Cache-Schreiben, 1 Stunde · Schätzung nur zum Vergleich — / 1K Token |
| KonfigurationGeschätzte Generierungskosten | Tarifstaffel— | Prognostizierte MengeSchätzung für eine Generierung | Gebühr Ausgabe · Geschätzte Generierungskosten · Schätzung nur zum Vergleich $6 Schätzung vor der Generierung Diese Schätzung ist weder eine zusätzliche Gebühr noch ein fester Tarif für die abgeschlossene Generierung. |
Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →
Beispielanfragen
Ailoot Ultra · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "kling-v1", "prompt": "A happy holiday scene at the beach.", "mode": "pro"}')
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
Ergebnisse abrufen und speichern
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}
Alle fertiggestellten Ergebnisse aufbewahren
Speichern Sie jedes fertiggestellte Video oder jede zurückgegebene Datei; rufen Sie jede tatsächlich zurückgegebene Datei-URL ab.
Bewahren Sie die vollständige Antwort und die Header, ursprüngliche Kennungen, jede tatsächliche Ausgabe sowie alle Verbrauchs- und Abrechnungsfelder auf. Speichern Sie jedes eindeutige, Ihnen zugeordnete Asset und bewahren Sie jede darauf verweisende Rolle auf.
Wenn die ursprüngliche Antwort geprüft werden muss
Bewahren Sie die zurückgegebene öffentliche Aufgaben- oder Vorgangs-ID und sämtliche Header auf. Lesen Sie ausschließlich die ursprüngliche Aufgabe aus; unknown oder result_pending_check berechtigt nicht zu einer weiteren Erstellung.
Antwortfelder
| Feld | Typ |
|---|---|
Feldid | Typstring |
Feldpolling_url | Typstring |
Feldprovider_task_id | Typstring |
Felddata.task_id | Typstring |
Felddata.task_status | Typstring |
Felddata.task_result.videos[].url | Typstring |
Fehler und nächste Schritte
| Antwort | Bedingung | Nächster Schritt |
|---|---|---|
Antwort400 · invalid_request_error | BedingungEin Pflichtfeld, die Modellauswahl, der Typ oder die Eingabedarstellung ist ungültig. | Nächster SchrittPrüfen Sie die zurückgegebenen Validierungsdetails, bevor Sie eine separate Anfrage vorbereiten. |
Antwort | BedingungDie ursprüngliche Anfrage oder ihr Ergebnis ist unbekannt oder muss geprüft werden. | Nächster SchrittBewahren Sie die ursprünglichen Kennungen und Header auf; lesen Sie nur unterstützte Status- oder Bibliothekseinträge. Senden Sie den Erstellungsauftrag nicht erneut. |
Aliasnamen
Modellaliasnamen
Ailoot Ultra kling-v1
Aliasnamen für Methodenpfade
/v1/videos/generations
Zugehörige Aufrufer-IDs
FAQ · kling-v1
- Welche Eingaben und Ergebnisse sind verfügbar?
POST /v1/videos·kling-v1:text→video- Welche Felder verwendet die Anfrage?
POST /v1/videos·kling-v1:model,prompt,mode,model_name,cfg_scale,aspect_ratio,negative_prompt,duration- Welche Grenzen gelten?
POST /v1/videos·kling-v1:prompt.maximum_length:500;cfg_scale.minimum:0;cfg_scale.maximum:1;negative_prompt.maximum_length:200