Videogenerierung, Zugang und Nutzung
Die Erstellung eines Videos mit Amazon Nova Reel ist ein asynchroner Prozess, der in der Regel etwa 90 Sekunden für ein 6-Sekunden-Video und etwa 14 bis 17 Minuten für ein 2-Minuten-Video dauert. Nachdem Sie die Generierung eines Videos gestartet haben, wird das Video in einen Amazon-S3-Bucket in Ihrem Konto geschrieben. Da Amazon Bedrock in Ihrem Auftrag eine Datei in einen Amazon-S3-Bucket schreibt, muss die von Ihnen verwendete AWS-Rolle über Berechtigungen verfügen, welche die entsprechenden Amazon Bedrock- und Amazon-S3-Aktionen sowie die s3:PutObject-Aktion zulassen. Für die Generierung eines Videos sind mindestens folgende Aktionsberechtigungen erforderlich:
-
bedrock:InvokeModel -
s3:PutObject
Wir empfehlen jedoch die folgenden zusätzlichen Maßnahmen, damit Sie den Status von Videogenerierungsaufträgen verfolgen können:
-
bedrock:GetAsyncInvoke -
bedrock:ListAsyncInvokes
Nach Abschluss der Videogenerierung werden das Video und die einzelnen Aufnahmen in dem von Ihnen angegebenen Amazon-S3-Bucket gespeichert. Amazon Nova erstellt für jede Aufruf-ID einen Ordner. Dieser Ordner enthält die Dateien manifest.json, output.mp4 und generation-status.json, die durch die Anfrage zur Videogenerierung erstellt wurden.
Themen
Einen Auftrag zur Videogenerierung starten
Um die Erstellung eines Videos zu initiieren, rufen Sie start_async_invoke() auf. Dadurch wird ein neuer Aufruf-Auftrag erstellt. Nach Abschluss des Auftrags speichert Amazon Nova das erstellte Video automatisch in einem von Ihnen angegebenen Amazon-S3-Bucket.
start_async_invoke() verwendet die folgenden Argumente:
-
modelld (Erforderlich) – Die zu verwendende Modell-ID. Für Amazon Nova Reel ist dies „amazon.nova-reel-v1:1“
-
modelInput (Erforderlich) – Definiert alle für das Amazon-Nova-Reel-Modell spezifischen Parameter zur Videogenerierung. Weitere Informationen finden Sie unter Eingabeparameter für die Videogenerierung.
-
OutputDataConfig (Erforderlich) – Definiert, wo das generierte Video gespeichert werden soll. Der Wert muss die folgende Struktur aufweisen:
{ "s3OutputDataConfig": { "s3Uri":string (S3 URL starting with "s3://")} }
Eingabeparameter für die Videogenerierung
In den folgenden Parameterbeschreibungen finden Sie Informationen zum Generieren von Videos mit Amazon Nova Reel.
Der Vorgang der Videogenerierung führt dazu, dass die folgenden Dateien in das von Ihnen angegebene Amazon-S3-Ziel geschrieben werden:
-
manifest.json – Eine Datei, die zu Beginn des Auftrags erstellt wird und die Anforderungs-ID enthält.
-
video-generation-status.json – Diese Datei wird geschrieben, unabhängig davon, ob der Auftrag erfolgreich ist oder fehlschlägt. Wenn ein Auftrag fehlschlägt, enthält er detaillierte Informationen darüber, welcher Teil des Auftrags fehlgeschlagen ist und welche Maßnahmen zur Behebung des Fehlers zu ergreifen sind.
-
output.mp4 – Das komplette Multi-Shot-Video. Wird nur geschrieben, wenn der Auftrag erfolgreich ist.
-
shot_N.mp4 – Jede einzelne Einstellung wird auch als eigenes Video bereitgestellt. Der Dateiname folgt dem Format „shot_0001.mp4“ „shot_0002.mp4“ usw. Diese Dateien werden nur geschrieben, wenn der gesamte Auftrag erfolgreich ist.
Der Fortschritt der Videogenerierungsaufträge wird überprüft
Es gibt zwei Möglichkeiten, den Fortschritt eines Videogenerierungsauftrags zu überprüfen. Wenn Sie über einen Verweis auf den Aufruf-ARN verfügen, der beim Starten des Aufrufs zurückgegeben wurde, können Sie die get_async_invoke()-Methode der Amazon Bedrock-Laufzeit verwenden.
response = bedrock_runtime.get_async_invoke( invocationArn="arn:AWS:bedrock:us-east-1:account-id:async-invoke/invocation-id" ) status = response["status"] print(f"Status: {status}")
Der Status eines Auftrags lautet „Abgeschlossen“, „InProgress“ oder „Fehlgeschlagen“. Weitere Informationen zur Verwendung der get_async_invoke()-Methode finden Sie in der Async-Invoke-API-Dokumentation.
Wenn Sie keinen Verweis auf den Aufruf-ARN haben oder wenn Sie den Status mehrerer Aufträge gleichzeitig überprüfen möchten, können Sie die list_async_invokes()-Methode der Amazon Bedrock-Laufzeit verwenden.
invocations_details = bedrock_runtime.list_async_invokes( maxResults=10, # (Optional) statusEquals="InProgress", # (Optional) Can be "Completed", "InProgress", or "Failed". Omit this argument to list all jobs, regardless of status. # Note: There are other supported arguments not demonstrated here. ) print(json.dumps(invocations_details, indent=2, default=str))
Weitere Informationen zur Verwendung der list_async_invokes()-Methode finden Sie in der Async-Invoke-API-Dokumentation.
Zugriff auf die Ergebnisse eines Videogenerierungsauftrags
Nach dem erfolgreichen Abschluss oder Scheitern eines Videogenerierungsauftrags wird eine JSON-Datei zu Ihrem Amazon-S3-Bucket hinzugefügt. Diese Datei enthält Metadaten zu den Einstellungen, die für das Video erstellt wurden. Die Datei erhält die Bezeichnung video-generation-status.json.
Für eine erfolgreiche Anfrage zur Videogenerierung enthält die Datei die Position jeder einzelnen Einstellung, aus der das vollständige Video besteht. Bei einer fehlgeschlagenen Anfrage enthält die Datei die Fehlermeldung und zusätzliche Details darüber, warum der Versuch fehlgeschlagen ist.
Das Schema dieser JSON-Datei ist unten aufgeführt.
{ "schemaVersion": string, "shots": [{ "status": enum, // where success is generation + upload "location": string, "failureType": enum, "failureMessage": string, }, ... ], "fullVideo": { "status": enum, // where success is generation + upload "location": string, "failureType": enum, "failureMessage": string, } }
-
schemaVersion – Die Version des JSON-Schemas.
-
shots – Stellt Informationen zu jeder Einstellung im Video bereit.
-
status – Der Abschlussstatus (ERFOLGREICH oder FEHLGESCHLAGEN) der Einstellung.
-
location – Der Dateiname und der Amazon-S3-Speicherort, an dem die Einstellung gespeichert wird. Der Speicherort ist erst verfügbar, wenn alle Einstellungen erfolgreich generiert und das vollständige Video an den Amazon-S3-Speicherort hochgeladen wurde.
-
failureType – Gibt den Grund für den Fehler an.
-
failureMessage – Stellt weitere Informationen zur Fehlerursache bereit.
-
-
fullVideo – Stellt Informationen zum vollständigen Video bereit.
-
status – Der Abschlussstatus (ERFOLGREICH oder FEHLGESCHLAGEN) des vollständigen Videos.
-
location – Der Dateiname und der Amazon-S3-Speicherort, an dem das vollständige Video gespeichert wird.
-
failureType – Gibt den Grund für den Fehler an.
-
failureMessage – Stellt weitere Informationen zur Fehlerursache bereit.
-
Mögliche Fehlergründe und Meldungen sind
-
INTERNAL_SERVER_EXCEPTION – „Auf Serverseite ist etwas schiefgelaufen.“
-
RAI_VIOLATION_OUTPUT_VIDEO_DEFLECTION – „Der generierte Inhalt wurde von unseren Inhaltsfiltern blockiert.“
-
RATE_LIMIT_EXCEEDED – „Die Servicekapazitätsgrenze wurde erreicht. Bitte versuchen Sie es später noch einmal.“
-
ABGEBROCHEN – „Die Anfrage wurde abgebrochen.“