Zum Hauptinhalt springen
Dieser Artikel stellt eine Anleitung zur Integration einer Kling Videos Generation API vor, mit der durch die Eingabe benutzerdefinierter Parameter offizielle Kling-Videos generiert werden können.

Antragsprozess

Um die Kling Videos Generation API zu verwenden, rufen Sie zunächst die Ace Data Cloud-Konsole auf, um Ihren API-Token zu erhalten und ihn für später aufzubewahren. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, wo Sie zur Registrierung und Anmeldung aufgefordert werden. Nach Abschluss kehren Sie automatisch zu dieser Seite zurück. Ein API-Token kann alle Dienste der Plattform aufrufen, ohne dass für jeden Dienst ein separater Antrag erforderlich ist. Bei der ersten Beantragung erhalten Sie kostenlose Kontingente zur kostenlosen Nutzung; bei unzureichendem Kontingent können Sie das allgemeine Guthaben in der Konsole aufladen.
📘 Vollständige Dokumentation: Kling Videos Generation API →

Grundlegende Verwendung

Lernen wir zunächst die grundlegende Verwendung kennen: Geben Sie einfach den Prompt prompt, die Generierungsaktion action, das Referenzbild des ersten Frames start_image_url sowie das Modell model ein, um das verarbeitete Ergebnis zu erhalten. Zunächst müssen Sie einfach ein Feld action übergeben, dessen Wert text2video ist. Es umfasst hauptsächlich drei Aktionen: Text-zu-Video (text2video), Bild-zu-Video (image2video) und Video-Erweiterung (extend). Anschließend müssen wir auch das Modell model eingeben. Derzeit gibt es hauptsächlich die Modelle kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-o1; die konkreten Inhalte sind wie folgt:

Hier sehen wir, dass wir die Request Headers festgelegt haben, einschließlich:
  • accept: Welches Format des Antwortergebnisses empfangen werden soll; hier wird application/json eingetragen, also das JSON-Format.
  • authorization: Der Schlüssel zum Aufrufen der API, der nach der Beantragung direkt über ein Dropdown ausgewählt werden kann.
Zusätzlich wurden Request Body-Parameter festgelegt, einschließlich:
  • model: Das Modell zur Generierung von Videos, hauptsächlich die Modelle kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-o1.
  • mode: Der Modus zur Generierung von Videos; optionale Werte sind Standardmodus std, Schnellmodus pro und nativer 4K-Modus 4k. Dabei unterstützt 4k nur kling-v3 und kling-v3-omni und ist nicht kompatibel mit camera_control (Kamerabewegungssteuerung).
  • action: Die Aktion dieser Video-Generierungsaufgabe, die hauptsächlich drei Aktionen umfasst: Text-zu-Video (text2video), Bild-zu-Video (image2video) und Video-Erweiterung (extend).
  • start_image_url: Der Link zum Referenzbild des ersten Frames, das hochgeladen werden muss, wenn die Bild-zu-Video-Aktion image2video ausgewählt wird.
  • end_image_url: Optional bei Bild-zu-Video, legt den letzten Frame fest.
  • duration: Videodauer in Sekunden. kling-v3 und kling-v3-omni unterstützen ganzzahlige Dauern von 3–15 Sekunden; kling-o1 unterstützt nur 5 Sekunden; andere Modelle unterstützen 5 oder 10 Sekunden.
  • generate_audio: Ob Audio synchron generiert werden soll, optional, boolescher Wert. Unterstützt kling-v3, kling-v3-omni sowie kling-v2-6 (nur im Pro-Modus). Der Standardwert ist false.
  • aspect_ratio: Seitenverhältnis des Videos, optional, unterstützt 16:9, 9:16, 1:1, Standard ist 16:9.
  • cfg_scale: Stärke der Relevanz, Bereich [0,1]; je größer, desto besser passt es zum Prompt.
  • camera_control: Optionaler Objektparameter zur Steuerung der Kamerabewegung, unterstützt die Voreinstellungen type/simple sowie Konfigurationen wie horizontal, vertical, pan, tilt, roll, zoom.
  • negative_prompt: Optionaler negativer Prompt für Inhalte, die nicht erscheinen sollen, maximal 200 Zeichen.
  • image_list: Omni-Referenzbildliste, geeignet für die Modelle kling-o1 und kling-v3-omni; zur Verwendung siehe unten „Omni-Allzweckreferenz“.
  • video_list: Omni-Referenzvideoliste (unterstützt Videobearbeitung), geeignet für die Modelle kling-o1 und kling-v3-omni; zur Verwendung siehe unten „Omni-Allzweckreferenz“.
  • prompt: Prompt.
  • callback_url: Die URL, an die das Ergebnis zurückgerufen werden soll.
  • async: Optional; wenn auf true gesetzt, gibt die Schnittstelle sofort task_id zurück. Es ist nicht erforderlich, callback_url bereitzustellen; anschließend wird das Ergebnis durch Abfragen über die entsprechende Aufgabenabfrageschnittstelle abgerufen.
Nach der Auswahl können Sie feststellen, dass rechts ebenfalls der entsprechende Code generiert wurde, wie in der Abbildung gezeigt:

Klicken Sie auf die Schaltfläche „Try“, um zu testen. Wie in der obigen Abbildung gezeigt, erhalten wir hier folgendes Ergebnis:
Das zurückgegebene Ergebnis enthält mehrere Felder, die wie folgt vorgestellt werden:
  • success: Der Status der Video-Generierungsaufgabe zu diesem Zeitpunkt.
  • task_id: Die ID der Video-Generierungsaufgabe zu diesem Zeitpunkt.
  • video_id: Die Video-ID der Video-Generierungsaufgabe zu diesem Zeitpunkt.
  • video_url: Der Videolink der Video-Generierungsaufgabe zu diesem Zeitpunkt.
  • duration: Die Dauer des Videolinks der Video-Generierungsaufgabe zu diesem Zeitpunkt.
  • state: Der Status der Video-Generierungsaufgabe zu diesem Zeitpunkt.
Sie sehen, dass wir zufriedenstellende Videoinformationen erhalten haben. Wir müssen nur die generierten Kling-Videos über die Videolink-Adresse von data im Ergebnis abrufen. Wenn Sie außerdem den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren. Der CURL-Code lautet beispielsweise wie folgt:

Modellfähigkeitsmatrix

Die Unterstützung von Parametern unterscheidet sich je nach Modell erheblich. Die folgende Matrix wurde aus der offiziellen Kling-Dokumentation zu Video-Modellen zusammengestellt. Bitte überprüfen Sie vor dem Aufruf, ob die aktuelle Kombination aus model / mode / duration die von Ihnen benötigte Funktion unterstützt, andernfalls werden Fehler wie model/mode/duration(...) is not supported with image_tail zurückgegeben. Hinweise:
  • mode=4k wird nur von kling-v3 und kling-v3-omni unterstützt; außerdem schließt es sich mit camera_control (Kameraführung) gegenseitig aus.
  • end_image_url kann nur bei action=image2video zusammen mit start_image_url verwendet werden. Das alleinige Übergeben von end_image_url (ohne start_image_url) wird abgelehnt.
  • kling-v3 / kling-v3-omni akzeptieren jede ganzzahlige duration von 3–15 Sekunden; kling-o1 akzeptiert nur 5; die übrigen Modelle akzeptieren nur 5 oder 10.
  • generate_audio ist standardmäßig false. Es wird nur von kling-v3, kling-v3-omni und kling-v2-6 (Pro-Modus) unterstützt.

Funktion zur Videoerweiterung

Wenn Sie ein bereits generiertes Kling-Video weiter generieren möchten, können Sie den Parameter action auf extend setzen und die ID des Videos eingeben, das weiter generiert werden soll. Die Video-ID wird anhand der grundlegenden Verwendung abgerufen, wie in der folgenden Abbildung dargestellt:

Hier können Sie sehen, dass die ID des Videos lautet:
Beachten Sie, dass video_id im Video hier die ID des generierten Videos ist. Wenn Sie nicht wissen, wie man ein Video generiert, können Sie sich auf die grundlegende Verwendung oben beziehen, um ein Video zu generieren.
Als Nächstes müssen wir unbedingt den Hinweistext ausfüllen, der im nächsten Schritt erweitert werden soll, um die Videogenerierung anzupassen. Dann können die folgenden Inhalte angegeben werden:
  • model: Das Modell zur Videogenerierung, hauptsächlich die Modelle kling-v1, kling-v1-5 und kling-v1-6.
  • mode: Der Modus zur Videogenerierung; mögliche Werte sind der Standardmodus std, der Schnellmodus pro und der native 4K-Modus 4k (nur von kling-v3 und kling-v3-omni unterstützt, nicht kompatibel mit Kameraführungssteuerung).
  • duration: Die Videodauer dieser Videogenerierungsaufgabe, hauptsächlich 5 s und 10 s.
  • start_image_url: Beim Auswählen der Bild-zu-Video-Aktion image2video ist der Link zum hochzuladenden Referenzbild des Anfangsbildes erforderlich.
  • prompt: Hinweistext.
Ein Ausfüllbeispiel lautet wie folgt:

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

Der entsprechende Python-Code:
Klicken Sie auf „Ausführen“, und Sie werden feststellen, dass Sie ein Ergebnis wie folgt erhalten:
Es ist ersichtlich, dass der Ergebnisinhalt mit dem oben genannten übereinstimmt, wodurch die Funktion zur Videoerweiterung umgesetzt wird.

Omni-Universalreferenz (Videobearbeitung / Referenzvideo / Mehrbildreferenz)

kling-o1 und kling-v3-omni sind zwei unabhängige Modelle, die beide die Fähigkeit der „Universalreferenz“ unterstützen. Auf Grundlage von Text-zu-Video (action=text2video) können zusätzlich Referenzbilder oder Referenzvideos übergeben werden, um Mehrbildreferenzen, Referenzvideos sowie die direkte Bearbeitung vorhandener Videos zu ermöglichen. Kernvereinbarung: Referenzmaterial muss im prompt in der Form &lt;&lt;<image_1>>>, &lt;&lt;<video_1>>> (die Nummerierung beginnt bei 1) referenziert werden, um das Material an der entsprechenden Position in image_list / video_list zu verwenden; nur dann wendet das Modell diese Referenzen an. Wenn nur Material übergeben wird, ohne es im Hinweistext zu referenzieren, wird das Material ignoriert.
Sicherheitshinweis: Die aktuelle API stellt element_list nicht bereit. Die IDs der Kling Element Library sind nicht mandantenisoliert; verwenden Sie vor der Bereitstellung einer mandantenisolierten Element-Management-API bitte image_list, um Referenzbilder des Subjekts zu übergeben.
Omni-Anfragen unterstützen weder negative_prompt, cfg_scale noch camera_control und können auch nicht mode=4k verwenden. Wenn Referenzvideos enthalten sind, muss generate_audio auf false gesetzt sein.

Referenzvideo und Videobearbeitung (video_list)

video_list wird zur Übergabe von Referenzvideos verwendet und ist das häufigste Anwendungsszenario dieser Funktion. Die Felder der Array-Elemente sind wie folgt:
  • video_url: Link zum Referenzvideo, darf nicht leer sein. Maximal 1 MP4/MOV-Video, Dateigröße ≤200MB, Bildrate 24–60fps. kling-o1 erfordert eine Dauer von 3–10 Sekunden sowie Breite und Höhe jeweils von 700–2160px; kling-v3-omni erfordert eine Dauer von 3–15,5 Sekunden, Breite und Höhe jeweils von 700–4553px, Gesamtpixel ≤8.294.400 und ein Seitenverhältnis von 0,4–2.
  • refer_type: Referenztyp, optional base (Standard, zu bearbeitendes Basisvideo, d. h. „das Video direkt bearbeiten“, Elemente können hinzugefügt/entfernt/geändert, die Komposition, der Stil, die Farben, das Wetter usw. geändert werden) oder feature (Merkmalsreferenz, deren Stil / Kameraführung / Fortsetzung der nächsten Aufnahme referenziert wird).
  • keep_original_sound: Ob das Originalaudio des Videos beibehalten werden soll, optional yes (beibehalten) oder no (entfernen).
Hinweis: Wenn ein Referenzvideo vorhanden ist, muss generate_audio auf false gesetzt sein. Für Videos mit refer_type=base dürfen keine Start- / Endframes angegeben werden.
Ein CURL-Beispiel für die Bearbeitung eines vorhandenen Videos (Ändern des Videos in einen Anime-Stil) lautet wie folgt:

Mehrbildreferenz (image_list)

image_list wird zur Übergabe von Referenzbildern (Elemente / Szenen / Stile usw.) verwendet. Die Felder der Array-Elemente sind wie folgt:
  • image_url: Link zum Referenzbild, darf nicht leer sein. Anforderungen: Format .jpg/.jpeg/.png; Dateigröße ≤10MB; kürzeste Seite ≥300px; Seitenverhältnis 1:2,5 ~ 2,5:1.
  • type: Optional. Ohne Übergabe wird es als reines Referenzbild verwendet; bei Übergabe von first_frame / end_frame wird es jeweils als Startframe / Endframe verwendet (entspricht start_image_url / end_image_url).
Bei der Verwendung muss im prompt mit &lt;&lt;<image_1>>>, &lt;&lt;<image_2>>> darauf verwiesen werden. Mengenbegrenzung: Ohne Referenzvideo sind ≤ 7 Referenzbilder möglich; mit Referenzvideo sind ≤ 4 Referenzbilder möglich. Wenn nur Start- / Endframes übergeben werden, können auch direkt start_image_url / end_image_url verwendet werden, aber der Endframe muss zusammen mit dem Startframe verwendet werden.
Hinweis: Wenn gleichzeitig start_image_url / end_image_url und image_list übergeben werden, werden die Start- / Endframes vor image_list angeordnet, was die Zuordnung der Nummerierung von &lt;&lt;<image_N>>> beeinflussen kann. Es wird empfohlen, eine der beiden Optionen zu wählen: Wenn Start- / Endframes benötigt werden, geben Sie sie direkt über type in image_list an und mischen Sie dies nicht mit start_image_url / end_image_url.
CURL-Beispiel für die Generierung eines Videos mit Mehrbildreferenz:

Asynchroner Callback

Da die Generierungszeit der Kling Videos Generation API relativ lang ist und etwa 1–2 Minuten dauert, würde die HTTP-Anfrage bei einer längeren Nichtreaktion der API die Verbindung dauerhaft offen halten, was zu zusätzlichem Verbrauch von Systemressourcen führt. Daher unterstützt diese API auch asynchrone Callbacks. Der gesamte Ablauf ist: Wenn der Client eine Anfrage startet, gibt er zusätzlich ein Feld callback_url an. Nachdem der Client die API-Anfrage gestartet hat, gibt die API sofort ein Ergebnis zurück, das ein Feld task_id enthält, welches die ID der aktuellen Aufgabe darstellt. Nachdem die Aufgabe abgeschlossen ist, wird das Ergebnis des generierten Videos in Form von POST JSON an die vom Client angegebene callback_url gesendet, die ebenfalls das Feld task_id enthält, sodass die Aufgabenergebnisse über die ID zugeordnet werden können. Im Folgenden erfahren wir anhand eines Beispiels, wie dies konkret funktioniert. Zunächst ist der Webhook-Callback ein Dienst, der HTTP-Anfragen empfangen kann. Entwickler sollten ihn durch die URL eines selbst eingerichteten HTTP-Servers ersetzen. Zur einfachen Demonstration wird hier die öffentliche Webhook-Beispielwebsite https://webhook.site/ verwendet. Beim Öffnen dieser Website erhalten Sie eine Webhook-URL, wie in der Abbildung gezeigt: Kopieren Sie diese URL, dann kann sie als Webhook verwendet werden. Das Beispiel hier ist https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3. Als Nächstes können wir das Feld callback_url auf die obige Webhook-URL setzen und gleichzeitig die entsprechenden Parameter ausfüllen. Der konkrete Inhalt ist in der Abbildung dargestellt:

Klicken Sie auf Ausführen. Sie werden feststellen, dass sofort ein Ergebnis zurückgegeben wird, wie folgt:
Nach kurzer Zeit können wir unter https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 das Ergebnis des generierten Videos beobachten, wie in der Abbildung gezeigt: Der Inhalt lautet wie folgt:
Sie können sehen, dass das Ergebnis ein Feld task_id enthält. Die anderen Felder ähneln denen oben, und über dieses Feld kann die Zuordnung der Aufgaben realisiert werden.

Fehlerbehandlung

Wenn beim Aufruf der API ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die entsprechende Information zurück. Zum Beispiel:
  • 400 token_mismatched: Bad request, possibly due to missing or invalid parameters.
  • 400 api_not_implemented: Bad request, possibly due to missing or invalid parameters.
  • 401 invalid_token: Unauthorized, invalid or missing authorization token.
  • 429 too_many_requests: Too many requests, you have exceeded the rate limit.
  • 500 api_error: Internal server error, something went wrong on the server.

Beispiel für Fehlerantworten

Fazit

Durch dieses Dokument haben Sie bereits verstanden, wie Sie die Kling Videos Generation API verwenden können, um durch die Eingabe von Prompt-Wörtern sowie einem Referenzbild des ersten Frames Videos zu generieren. Wir hoffen, dass dieses Dokument Ihnen helfen kann, diese API besser anzubinden und zu verwenden. Falls Sie Fragen haben, kontaktieren Sie jederzeit unser technisches Support-Team.

Kling 3.0 Turbo

model="kling-v3-turbo" unterstützt Text-zu-Video und Bild-zu-Video mit erstem Frame, mit einer Dauer von ganzzahligen 3–15 Sekunden. mode="std" gibt 720p aus, mode="pro" gibt 1080p aus. Dieses Modell verfügt über natives Audio und bietet keinen Schalter zum Deaktivieren; lassen Sie generate_audio weg oder setzen Sie es auf true. Dieses Modell unterstützt keinen Endframe, keine Kamerafahrtsobjekte, keine eigenständigen negativen Prompts oder cfg_scale. Beschreiben Sie im prompt direkt die Inhalte, die benötigt werden oder deren Auftreten vermieden werden soll.

Videos mit mehreren Szenen

kling-v3 und kling-v3-omni unterstützen multi_shot=true. shot_type="intelligence" erstellt basierend auf dem prompt automatisch ein Storyboard; shot_type="customize" stellt über multi_prompt 1–6 Storyboards bereit, wobei jeder Eintrag einen bei 1 fortlaufend ansteigenden index, einen prompt mit maximal 512 Zeichen und eine ganzzahlige duration von mindestens 1 Sekunde enthält. Die Summe der Dauer aller Storyboards muss der gesamten duration entsprechen. Benutzerdefinierte Storyboards verwenden keinen globalen prompt. Mehrszenenvideos werden entsprechend dem ausgewählten Modell, der Bildqualität, der Audiokonfiguration und der Gesamtdauer abgerechnet.