Skip to main content
Dieser Artikel beschreibt eine Integrationsanleitung für die Kling Videos Generation API, die es ermöglicht, offizielle Kling-Videos durch Eingabe benutzerdefinierter Parameter zu generieren.

Antragsprozess

Um die Kling Videos Generation API zu nutzen, gehen Sie zunächst zur Ace Data Cloud Konsole, um Ihr API-Token zu erhalten und für zukünftige Verwendung aufzubewahren. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, wo Sie sich registrieren und anmelden können. Nach Abschluss werden Sie automatisch zur aktuellen Seite zurückgeleitet. Ein API-Token reicht aus, um auf alle Dienste der Plattform zuzugreifen, es ist nicht erforderlich, für jeden Dienst separat zu beantragen. Bei der ersten Beantragung erhalten Sie ein kostenloses Kontingent, um es kostenlos auszuprobieren; wenn das Kontingent erschöpft ist, können Sie im Konsolenbereich Ihr Guthaben aufladen.
📘 Vollständige Dokumentation: Kling Videos Generation API →

Grundlegende Nutzung

Zunächst sollten Sie die grundlegende Nutzung verstehen, indem Sie den Eingabewort prompt, die Generierungsaktion action, das Referenzbild der ersten Frame start_image_url und das Modell model eingeben, um das verarbeitete Ergebnis zu erhalten. Zuerst müssen Sie ein einfaches action-Feld übergeben, dessen Wert text2video ist. Es umfasst hauptsächlich drei Aktionen: Text zu Video (text2video), Bild zu Video (image2video), Video erweitern (extend). Dann müssen wir auch das Modell model eingeben, das derzeit 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 umfasst. Die spezifischen Inhalte sind wie folgt:

Hier sehen wir, dass wir die Request-Header festgelegt haben, einschließlich:
  • accept: In welchem Format Sie die Antwort erhalten möchten, hier eingetragen als application/json, also im JSON-Format.
  • authorization: Der Schlüssel zur API-Nutzung, den Sie nach der Beantragung direkt auswählen können.
Außerdem haben wir den Request-Body festgelegt, einschließlich:
  • model: Das Modell zur Videoerzeugung, hauptsächlich 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 Videoerzeugung, wählbare Werte sind Standardmodus std, Hochgeschwindigkeitsmodus pro und nativer 4K-Modus 4k. Dabei unterstützt 4k nur kling-v3 und kling-v3-omni und ist nicht mit camera_control (Kamerasteuerung) kompatibel.
  • action: Die Aktion dieser Videoerzeugungsaufgabe, die hauptsächlich drei Aktionen umfasst: Text zu Video (text2video), Bild zu Video (image2video), Video erweitern (extend).
  • start_image_url: Wenn die Aktion Bild zu Video (image2video) gewählt wird, muss der Link zum Referenzbild der ersten Frame hochgeladen werden.
  • end_image_url: Optional beim Bild zu Video, um das Endbild anzugeben.
  • duration: Die Videolänge in Sekunden. kling-v3 und kling-v3-omni unterstützen eine Ganzzahl 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 und kling-v2-6 (nur im Pro-Modus). Standardmäßig auf false.
  • aspect_ratio: Das Seitenverhältnis des Videos, optional, unterstützt 16:9, 9:16, 1:1, standardmäßig 16:9.
  • cfg_scale: Stärke der Relevanz, Bereich [0,1], je größer, desto mehr entspricht es dem Eingabewort.
  • camera_control: Optional, Parameter zur Steuerung der Kamerabewegung, unterstützt Typ/Einfach-Voreinstellungen sowie horizontal, vertikal, schwenken, neigen, rollen, zoomen usw.
  • negative_prompt: Optional, unerwünschte Gegenworte, maximal 200 Zeichen.
  • image_list: Omni-Referenzbildliste, geeignet für die Modelle kling-o1 und kling-v3-omni, siehe unten „Omni-Alleskönner-Referenz“.
  • video_list: Omni-Referenzvideoliste (unterstützt Videobearbeitung), geeignet für die Modelle kling-o1 und kling-v3-omni, siehe unten „Omni-Alleskönner-Referenz“.
  • prompt: Eingabewort.
  • callback_url: URL, an die das Ergebnis zurückgerufen werden soll.
  • async: Optional, wenn auf true gesetzt, gibt die Schnittstelle sofort task_id zurück, ohne dass callback_url bereitgestellt werden muss, und die Ergebnisse können dann über die entsprechende Aufgabenabfrage-Schnittstelle abgerufen werden.
Nach der Auswahl können Sie sehen, dass auf der rechten Seite auch der entsprechende Code generiert wurde, wie im Bild gezeigt:

Klicken Sie auf die Schaltfläche „Try“, um einen Test durchzuführen. Wie im obigen Bild gezeigt, haben wir folgendes Ergebnis erhalten:
Die Rückgabe enthält mehrere Felder, die wie folgt beschrieben werden:
  • success, der Status der Videoerzeugungsaufgabe.
  • task_id, die ID der Videoerzeugungsaufgabe.
  • video_id, die Video-ID der Videoerzeugungsaufgabe.
  • video_url, der Link zum Video der Videoerzeugungsaufgabe.
  • duration, die Dauer des Videos der Videoerzeugungsaufgabe.
  • state, der Status der Videoerzeugungsaufgabe.
Wir sehen, dass wir die gewünschten Videoinformationen erhalten haben. Wir müssen nur die Video-URL aus dem Ergebnis data abrufen, um das generierte Kling-Video zu erhalten. Wenn Sie den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel der CURL-Code ist wie folgt:

Modellfähigkeitsmatrix

Die Unterstützung der Parameter variiert stark zwischen den verschiedenen Modellen. Die folgende Matrix wurde aus der Kling offiziellen Video-Modelle-Dokumentation zusammengestellt. Bitte überprüfen Sie vor dem Aufruf, ob die aktuelle Kombination aus model / mode / duration die benötigten Funktionen unterstützt, andernfalls wird von der API ein 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; und ist inkompatibel mit camera_control.
  • end_image_url kann nur in Verbindung mit start_image_url bei action=image2video verwendet werden. Nur end_image_url (ohne start_image_url) wird abgelehnt.
  • kling-v3 / kling-v3-omni akzeptieren beliebige ganze Zahlen für duration zwischen 3–15 Sekunden; kling-o1 akzeptiert nur 5; andere Modelle akzeptieren nur 5 oder 10.
  • generate_audio ist standardmäßig false. Nur kling-v3, kling-v3-omni und kling-v2-6 (pro Modus) unterstützen dies.

Erweiterte Video-Funktionalität

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 Sie weiter generieren möchten. Die Video-ID wird basierend auf der grundlegenden Nutzung wie im folgenden Bild gezeigt abgerufen:

In diesem Fall sehen Sie, dass die Video-ID lautet:
Hinweis: Die video_id hier ist die ID des nach der Generierung erstellten Videos. Wenn Sie nicht wissen, wie man ein Video generiert, können Sie sich auf die grundlegende Nutzung im obigen Text beziehen.
Als nächstes müssen wir die nächsten Schritte ausfüllen, um die Eingabeaufforderungen für die benutzerdefinierte Videoerstellung zu erweitern, und können die folgenden Inhalte angeben:
  • model: Das Modell zur Videoerstellung, hauptsächlich kling-v1, kling-v1-5 und kling-v1-6.
  • mode: Der Modus zur Videoerstellung, wählbare Werte sind Standardmodus std, Hochgeschwindigkeitsmodus pro und nativer 4K-Modus 4k (nur kling-v3 und kling-v3-omni unterstützt, inkompatibel mit Kamerasteuerung).
  • duration: Die Videolänge dieser Videoerstellungsaufgabe, hauptsächlich 5s und 10s.
  • start_image_url: Wenn Sie die Bild-zu-Video-Aktion image2video auswählen, müssen Sie den Link zum Referenzbild des ersten Frames hochladen.
  • prompt: Eingabeaufforderung.
Ein Beispiel für die Eingabe sieht wie folgt aus:

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

Entsprechender Python-Code:
Wenn Sie auf Ausführen klicken, können Sie ein Ergebnis wie folgt sehen:
Es ist zu erkennen, dass der Inhalt des Ergebnisses mit dem oben genannten übereinstimmt, was die Funktion zur Erweiterung des Videos ermöglicht.

Omni All-in-One Referenz (Video-Bearbeitung / Referenzvideo / Mehrbildreferenz)

kling-o1 und kling-v3-omni sind zwei unabhängige Modelle, die beide die Fähigkeit zur „All-in-One-Referenz“ unterstützen. Basierend auf der Text-zu-Video-Aktion (action=text2video) können zusätzlich Referenzbilder oder Referenzvideos übergeben werden, um Mehrbildreferenzen, Referenzvideos und die direkte Bearbeitung vorhandener Videos zu ermöglichen. Kernvereinbarung: Referenzmaterialien müssen in der prompt in der Form &lt;&lt;<image_1>>>, &lt;&lt;<video_1>>> (Nummerierung beginnt bei 1) zitiert werden, um auf die entsprechenden Positionen in image_list / video_list zuzugreifen, damit das Modell diese Referenzen anwendet. Wenn nur Materialien übergeben werden, ohne sie in der Eingabeaufforderung zu zitieren, werden sie ignoriert.
Sicherheitshinweis: Die aktuelle API öffnet element_list nicht. Die IDs der Kling Element Library gehören dem Namensraum des Anbieterkontos. Vor der Bereitstellung einer isolierten Element Management API sollten Kunden image_list verwenden, um Hauptreferenzbilder zu übergeben.
Omni-Anfragen unterstützen kein negative_prompt, cfg_scale oder camera_control und mode=4k kann nicht verwendet werden. Wenn Referenzvideos enthalten sind, muss generate_audio auf false gesetzt sein.

Referenzvideo und Video-Editing (video_list)

video_list wird verwendet, um Referenzvideos zu übergeben, dies ist das am häufigsten verwendete Szenario dieser Funktionalität. Die Felder der Array-Elemente sind wie folgt:
  • video_url: Referenzvideolink, darf nicht leer sein. Anforderungen: Format MP4/MOV; Auflösung 720px–2160px; Dauer 3–10 Sekunden; Bildrate 24–60fps; Dateigröße ≤200MB; maximal 1 Video.
  • refer_type: Referenztyp, optional base (Standard, Basisvideo zum Bearbeiten, d.h. “direkte Bearbeitung des Videos”, Elemente können hinzugefügt, entfernt oder geändert werden, Komposition, Stil, Farbe, Wetter usw. können geändert werden) oder feature (Merkmalsreferenz, Bezug auf Stil / Kameraführung / Fortsetzung der nächsten Szene).
  • keep_original_sound: Ob der Originalton des Videos beibehalten werden soll, optional yes (beibehalten) oder no (entfernen).
Hinweis: Wenn ein Referenzvideo vorhanden ist, muss generate_audio auf false gesetzt werden. Videos mit refer_type=base dürfen keine Start- / Endbilder mehr spezifizieren.
Beispiel für CURL zur Bearbeitung eines vorhandenen Videos (Änderung des Videos in einen Anime-Stil):

Mehrere Bildreferenzen (image_list)

image_list wird verwendet, um Referenzbilder (Elemente / Szenen / Stile usw.) zu übergeben, die Felder der Array-Elemente sind wie folgt:
  • image_url: Referenzbildlink, 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. Wenn nicht übergeben, wird es als reines Referenzbild betrachtet; bei Angabe von first_frame / end_frame wird es jeweils als Start- / Endbild verwendet (entspricht start_image_url / end_image_url).
Bei der Verwendung muss im prompt auf &lt;&lt;<image_1>>>, &lt;&lt;<image_2>>> verwiesen werden. Mengenbeschränkung: Wenn kein Referenzvideo vorhanden ist, sind Referenzbilder ≤ 7; wenn ein Referenzvideo vorhanden ist, sind Referenzbilder ≤ 4. Wenn nur Start- / Endbilder übergeben werden, können auch direkt start_image_url / end_image_url verwendet werden, aber das Endbild muss zusammen mit dem Startbild verwendet werden.
Hinweis: Wenn sowohl start_image_url / end_image_url als auch image_list übergeben werden, werden Start- / Endbilder vor image_list angeordnet, was die Zuordnung von &lt;&lt;<image_N>>> beeinflussen kann. Es wird empfohlen, sich für eines zu entscheiden: Wenn Start- / Endbilder benötigt werden, direkt in image_list mit type angeben, nicht mit start_image_url / end_image_url mischen.
Beispiel für CURL zur Videoerstellung mit mehreren Bildreferenzen:

Asynchrone Rückrufe

Da die von der Kling Videos Generation API erzeugte Zeit relativ lang ist, etwa 1-2 Minuten, wird die HTTP-Anfrage bei langer Nichtantwort weiterhin verbunden, was zu einem zusätzlichen Systemressourcenverbrauch führt. Daher bietet diese API auch Unterstützung für asynchrone Rückrufe. Der gesamte Prozess ist: Wenn der Client die Anfrage startet, gibt er zusätzlich ein callback_url-Feld an. Nach dem Start der API-Anfrage gibt die API sofort ein Ergebnis zurück, das ein task_id-Feld enthält, das die aktuelle Aufgaben-ID darstellt. Wenn die Aufgabe abgeschlossen ist, werden die Ergebnisse des generierten Videos in Form von POST JSON an die vom Client angegebene callback_url gesendet, wobei auch das task_id-Feld enthalten ist, sodass die Aufgabenresultate über die ID verknüpft werden können. Hier ist ein Beispiel, um zu verstehen, wie man konkret vorgeht. Zunächst ist der Webhook-Rückruf ein Dienst, der HTTP-Anfragen empfangen kann. Entwickler sollten ihn durch die URL ihres eigenen HTTP-Servers ersetzen. Hier zur Veranschaulichung verwenden wir eine öffentliche Webhook-Beispielseite https://webhook.site/, auf dieser Seite erhält man eine Webhook-URL, wie im Bild gezeigt: Diese URL kann kopiert und 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 oben genannte Webhook-URL setzen und die entsprechenden Parameter ausfüllen, die genauen Inhalte sind wie im Bild gezeigt:

Nach dem Klicken auf Ausführen erhält man sofort ein Ergebnis, wie folgt:
Nach kurzer Wartezeit können wir unter https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 das Ergebnis des generierten Videos beobachten, wie im Bild gezeigt: Der Inhalt lautet:
Man kann sehen, dass im Ergebnis ein task_id-Feld vorhanden ist, die anderen Felder sind ähnlich wie oben, über dieses Feld kann die Aufgabe verknüpft werden.

Fehlerbehandlung

Bei der Verwendung der API, wenn ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die Informationen zurück. Zum Beispiel:
  • 400 token_mismatched: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 400 api_not_implemented: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 401 invalid_token: Unbefugt, ungültiger oder fehlender Autorisierungstoken.
  • 429 too_many_requests: Zu viele Anfragen, Sie haben das Kontingent überschritten.
  • 500 api_error: Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

Beispiel für Fehlerantworten

Schlussfolgerung

Durch dieses Dokument haben Sie gelernt, wie Sie die Kling Videos Generation API verwenden können, um Videos durch Eingabe von Stichwörtern und einem Referenzbild des ersten Frames zu generieren. Wir hoffen, dass dieses Dokument Ihnen hilft, die API besser zu integrieren und zu nutzen. Bei Fragen wenden Sie sich bitte jederzeit an unser technisches Support-Team.