Antragsprozess
Um die API zu nutzen, müssen Sie zunächst auf die entsprechende Seite der Wan Videos Generation API gehen und den entsprechenden Dienst beantragen. Nach dem Betreten der Seite klicken Sie auf die Schaltfläche „Acquire“, wie im Bild gezeigt:
Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach der Anmeldung werden Sie automatisch zur aktuellen Seite zurückgeleitet.
Bei der ersten Antragstellung gibt es ein kostenloses Kontingent, mit dem Sie die API kostenlos nutzen können.
Grundlegende Nutzung
Zunächst sollten Sie die grundlegende Nutzung verstehen, indem Sie die Eingabeaufforderungprompt, die Generierungsaktion action, das Referenzbild der ersten Frame image_url sowie 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 zwei Arten von Aktionen: Text-zu-Video (text2video) und Bild-zu-Video (image2video). Dann müssen wir auch das Modell model eingeben, das derzeit hauptsächlich die Modelle wan2.6-i2v, wan2.6-r2v, wan2.6-i2v-flash, wan2.6-t2v umfasst. Die spezifischen Inhalte sind wie folgt:

accept: In welchem Format Sie die Antwort erhalten möchten, hier eingetragen alsapplication/json, also im JSON-Format.authorization: Der Schlüssel zur Nutzung der API, den Sie nach der Beantragung direkt auswählen können.
model: Das Modell zur Generierung des Videos, hauptsächlichwan2.6-i2v,wan2.6-r2v,wan2.6-i2v-flash,wan2.6-t2v.action: Die Aktion dieser Videoerzeugungsaufgabe, die hauptsächlich drei Arten umfasst: Text-zu-Video (text2video), Bild-zu-Video (image2video). Bei Text-zu-Video wird derzeit nur das Modellwan2.6-t2vunterstützt, bei Bild-zu-Video werden derzeit nur die Modellewan2.6-i2v,wan2.6-r2v,wan2.6-i2v-flashunterstützt.image_url: Wenn die Aktion Bild-zu-Video (image2video) gewählt wird, muss der Link zum Referenzbild der ersten Frame hochgeladen werden. Derzeit werden nur die Modellewan2.6-i2v,wan2.6-i2v-flashunterstützt.reference_video_urls: Optional bei Bild-zu-Video, um die Referenzvideo-Links zur Generierung anzugeben. Derzeit wird nur das Modellwan2.6-r2vunterstützt.size: Gibt die Auflösung des generierten Videos an, im Format Breite*Höhe. Der Standardwert und die verfügbaren Enumerationswerte hängen vom Modellparameter ab. Die spezifischen Regeln können in der offiziellen Dokumentation nachgelesen werden.duration: Die Dauer der Videoerzeugung, hauptsächlich 5, 10, 15.shot_type: Optional, um den Typ der Videoaufnahme anzugeben, d.h. ob das Video aus einer kontinuierlichen Aufnahme oder mehreren wechselnden Aufnahmen besteht. Gültigkeitsbedingungen: Wirksam nur, wenn “prompt_extend”: true ist. Priorität der Parameter: shot_type > prompt. Zum Beispiel, wenn shot_type auf “single” gesetzt ist, wird das Modell auch dann ein Einzelbildvideo ausgeben, wenn im prompt „generiere ein Mehrbildvideo“ enthalten ist. Die spezifischen Regeln können in der offiziellen Dokumentation nachgelesen werden.negative_prompt: Optional, um unerwünschte Inhalte im Video zu beschreiben. Unterstützt Chinesisch und Englisch, die Länge darf 500 Zeichen nicht überschreiten, der übersteigende Teil wird automatisch abgeschnitten. Beispielwerte: niedrige Auflösung, Fehler, schlechteste Qualität, niedrige Qualität, Mängel, überflüssige Finger, schlechte Proportionen usw.resolution: Gibt die Auflösungsstufe des generierten Videos an, um die Klarheit des Videos (insgesamt Pixel) anzupassen. Das Modell skaliert automatisch auf eine ähnliche Gesamtpixelanzahl basierend auf der gewählten Auflösungsstufe, das Seitenverhältnis des Videos wird bestmöglich mit dem Seitenverhältnis des eingegebenen Bildes img_url übereinstimmen. Weitere Erklärungen finden Sie in der offiziellen Dokumentation.audio_url: URL der Audiodatei, das Modell wird diese Audio verwenden, um das Video zu generieren. Die Verwendung wird in der offiziellen Dokumentation beschrieben.audio: Ob ein Video mit Ton generiert werden soll. Priorität der Parameter: audio > audio_url. Wenn audio=false ist, wird das Video auch dann stumm sein, wenn audio_url übergeben wird, und die Abrechnung erfolgt nach stummen Videos, der Standardwert ist true.prompt_extend: Ob die intelligente Umschreibung von prompts aktiviert werden soll. Wenn aktiviert, wird ein großes Modell verwendet, um die Eingabeaufforderung intelligent umzuschreiben. Bei kürzeren prompts ist die Verbesserung der Ergebnisse deutlich, es erhöht jedoch die Bearbeitungszeit, der Standardwert ist true.prompt: Eingabeaufforderung.callback_url: Die URL, an die die Ergebnisse zurückgegeben werden sollen.

success, der Status der Videoerzeugungsaufgabe zu diesem Zeitpunkt.task_id, die ID der Videoerzeugungsaufgabe zu diesem Zeitpunkt.video_url, der Link zum Video der Videoerzeugungsaufgabe zu diesem Zeitpunkt.state, der Status der Videoerzeugungsaufgabe zu diesem Zeitpunkt.
Bild-zu-Video-Funktion
如果 Sie möchten, dass ein Video basierend auf einem Referenzbild oder einem Referenzvideo generiert wird, können Sie den Parameteraction auf image2video setzen und die Links zum Referenzbild oder Referenzvideo eingeben. Anschließend müssen wir die nächsten Schritte ausfüllen, um die Eingabeaufforderungen zur Anpassung des generierten Videos zu definieren. Sie können die folgenden Inhalte angeben:
model:Das Modell zur Generierung des Videos, hauptsächlichwan2.6-i2v,wan2.6-r2v,wan2.6-i2v-flash,wan2.6-t2vModelle.image_url:Wenn die Videoerstellung durch Bildverwendungimage2videogewählt wird, muss der Link zum Referenzbild der ersten Frame hochgeladen werden. Derzeit werden nur die Modellewan2.6-i2v,wan2.6-i2v-flashunterstützt.reference_video_urls:Optional bei der Videoerstellung durch Bild, um den Link zum Referenzvideo anzugeben. Derzeit wird nur das Modellwan2.6-r2vunterstützt.prompt:Eingabeaufforderung.


Asynchrone Rückrufe
Da die von der Wan Videos Generation API generierte Zeit relativ lang ist, etwa 1-2 Minuten, bleibt die HTTP-Anfrage bei langer Nichtreaktion des API verbunden, was zu einem zusätzlichen Verbrauch von Systemressourcen führt. Daher bietet diese API auch Unterstützung für asynchrone Rückrufe. Der gesamte Prozess ist: Wenn der Client die Anfrage stellt, gibt er zusätzlich ein Feldcallback_url an. Nachdem der Client die API-Anfrage gestellt hat, gibt die API sofort ein Ergebnis zurück, das ein Feld task_id enthält, das die aktuelle Aufgaben-ID darstellt. Wenn die Aufgabe abgeschlossen ist, wird das Ergebnis der Videoerstellung in Form von POST JSON an die vom Client angegebene callback_url gesendet, wobei auch das Feld task_id enthalten ist, sodass die Aufgabenresultate über die ID verknüpft werden können.
Lassen Sie uns anhand eines Beispiels verstehen, wie dies konkret funktioniert.
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 verwenden wir zur Demonstration eine öffentliche Webhook-Beispielwebsite https://webhook.site/, auf der Sie eine Webhook-URL erhalten können, wie im Bild gezeigt:
Kopieren Sie diese URL, um sie als Webhook zu verwenden. Das Beispiel hier lautet https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3.
Anschließend können wir das Feld callback_url auf die oben genannte Webhook-URL setzen und die entsprechenden Parameter ausfüllen, wie im Bild gezeigt:

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 beobachten, wie im Bild gezeigt:
Der Inhalt lautet:
task_id enthält, und die anderen Felder sind ähnlich wie oben, sodass die Aufgabenverknüpfung über dieses Feld erfolgen kann.
Fehlerbehandlung
Wenn beim Aufruf der API 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 Rate-Limit überschritten.500 api_error:Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

