GetVibe bietet Mediengenerierung über eine asynchrone Job-API zusätzlich zu seinen Textmodell-APIs an. Der Pfad für Medienanfragen entspricht nicht den OpenAI-Chat-Completions: Sie senden einen Generierungsjob, erhalten eine Job-ID und rufen anschließend dessen Status und Ergebnis ab. Bild-, Video- und Audio-/Sprachmodelle haben unterschiedliche Eingaben und Abrechnungseinheiten. Wählen Sie daher aus dem Medienmodellkatalog, anstatt davon auszugehen, dass für jedes Modell dasselbe Anfrageformat funktioniert.
Modell finden und Anforderungen prüfen
Nutzen Sie den Medienkatalog und /v1/models?type=image,video,audio, um die für Ihr Konto verfügbaren Medientypen anzuzeigen. Prüfen Sie die genaue ID des jeweiligen Modells, die akzeptierte Eingabe, die unterstützten Optionen, das Ausgabeformat und die Preiseinheit. Ein Bildmodell kann nach Ausgabeeinstellungen abrechnen; bei Video kann die Abrechnung von Dauer und Auflösung abhängen; Sprachmodelle können nach Textlänge, Dauer oder einer anderen dokumentierten Einheit abrechnen. Vergleichen Sie diese Preise nicht so, als würde es sich bei allen um Text-Token handeln.
gpt-image-2 ist eines der Bildmodelle im Katalog. Auf der Modellseite und in der Mediendokumentation sind unterstützte Seitenverhältnisse, Auflösung sowie Optionen für Generierung und Bearbeitung aufgeführt. Videomodelle haben eigene Eingaben und können mehr Zeit benötigen. Sprachfunktionen unterscheiden sich je nach Modell. Prüfen Sie daher den aktuellen Medieneintrag, bevor Sie in Ihrer Benutzeroberfläche eine bestimmte Operation versprechen.
Bildjob senden
Bewahren Sie den Schlüssel auf Ihrem Server auf. Dies ist die dokumentierte asynchrone Struktur für eine Text-zu-Bild-Anfrage: Der Prompt ist ein Feld auf oberster Ebene, und die Generierungsoptionen befinden sich in opts.
curl https://getvibeapi.com/api/media/generate \
-H "Authorization: Bearer $GETVIBE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "Eine klare redaktionelle Illustration eines Schreibtischs für Entwickler, kein Text",
"opts": {"aspect_ratio":"16:9", "resolution":"1K", "mode":"text-to-image"}
}'Speichern Sie die zurückgegebene jobId zusammen mit Ihrem eigenen Benutzer- und Aufgaben-Datensatz. Diese Anfrage startet die Generierung. Sie gibt den fertigen Bildinhalt nicht direkt inline zurück.
Abfragen oder Webhook empfangen
Bei einer kleinen Integration können Sie den Job-Endpunkt in einem moderaten Intervall abfragen und stoppen, sobald der Job einen terminalen Status erreicht. Zu den Statuswerten gehören submitting, processing, success, fail und expired. Abfragen im Abstand von wenigen Millisekunden erzeugen zusätzlichen Datenverkehr, ohne die Generierung zu beschleunigen. Konfigurieren Sie für Produktions-Batches den dokumentierten Webhook und gestalten Sie den Callback idempotent, damit doppelte Zustellungen keine doppelten Assets erzeugen.
curl "https://getvibeapi.com/api/media/jobs/$JOB_ID" \
-H "Authorization: Bearer $GETVIBE_API_KEY"Rufen Sie bei Erfolg die Ergebnis-URLs ab und kopieren Sie die Medien in einen von Ihnen kontrollierten Speicher, wenn sie langfristig aufbewahrt werden müssen. Bewahren Sie bei einem Fehler die Job-ID für den Support auf und zeigen Sie eine hilfreiche Fehlermeldung an. Wiederholen Sie nicht jeden Fehler: Eine ungültige Option wird erneut fehlschlagen, und eine doppelte Generierung kann eine weitere Gebühr verursachen.
Video und Sprache erfordern modellspezifische Verarbeitung
Prüfen Sie bei Video vor dem Absenden die Dauer, die Bildgröße, die Anforderungen an die Bildkonditionierung und die unterstützten Optionen des Modells. Validieren Sie URLs zu externen Quellen und stellen Sie sicher, dass sie erreichbar sind. Machen Sie den Jobfortschritt sichtbar, da das Rendern länger dauern kann als die Textgenerierung. Nutzen Sie für Batches den dokumentierten Webhook-Ablauf, anstatt eine interaktive Seite offen zu halten.
Unterscheiden Sie bei Sprache und Audio zwischen Sprachgenerierung sowie Transkription oder Audioverständnis. Diese Funktionen haben unterschiedliche Eingabe- und Ausgabemodalitäten. Stimmen Sie Endpunkt und Payload auf die Modellkarte ab, legen Sie, sofern angeboten, Text- oder Dau limits fest und speichern Sie zurückgegebenes Audio in einem Format, das Ihr Player akzeptiert. Versprechen Sie nicht, dass jedes Medienmodell Sprache erzeugen kann.
Budget und Fehlerverhalten
Prüfen Sie vor einem Batch den aktuellen Preis des Medienmodells und kalkulieren Sie in seiner tatsächlichen Abrechnungseinheit. Der Preis eines Textmodells ist kein Näherungswert für die Bild- oder Videogenerierung. Führen Sie ein Beispiel mit genau der Auflösung, Dauer oder den Spracheinstellungen aus, die für die Produktion vorgesehen sind. Protokollieren Sie Job-ID, Modell, Optionen, Dauer, terminalen Status und abgerechnete Nutzung. Legen Sie eine maximale Batchgröße sowie eine manuelle Prüfung für kostenintensive oder kundenorientierte Ausgaben fest.
Halten Sie Prompts und Medien-URLs aus allgemeinen Logs heraus, sofern Ihre Datenschutzrichtlinie dies nicht erlaubt. Maskieren Sie Zugangsdaten, setzen Sie Upload-Limits durch und vermeiden Sie es, private generierte Assets als öffentliche URLs bereitzustellen. Bewahren Sie bei Bearbeitungen das ursprüngliche Asset separat auf, bis das Ergebnis geprüft wurde.
Checkliste vor dem Produktionseinsatz
- Bestätigen Sie die genaue Modell-ID, Modalität und Eingabeanforderungen.
- Bewahren Sie den API-Schlüssel auf dem Server auf.
- Verwenden Sie den dokumentierten Prompt auf oberster Ebene und die modellspezifischen Optionen.
- Speichern Sie Job-IDs und gestalten Sie die Verarbeitung von Abfragen/Webhooks idempotent.
- Definieren Sie das Verhalten bei Fehlern und beim Ablauf.
- Kalkulieren Sie anhand der tatsächlichen Abrechnungseinheit des Modells.
- Kopieren Sie erfolgreiche Ausgaben in einen Speicher, wenn sie dauerhaft erhalten bleiben müssen.
Lesen Sie vor der Veröffentlichung die Dokumentation zu Mediengenerierung, Medien-Webhooks und Medienmodellen. Die öffentliche Modellliste und die unterstützten Optionen können sich ändern. Diese Seiten und der Live-Katalog sind die Referenz für Ihr Konto.
Quell-Assets sicher verarbeiten
Verwenden Sie für Bild-zu-Bild- oder bildkonditioniertes Video die für das jeweilige Modell dokumentierte Upload- oder URL-Methode. Stellen Sie sicher, dass eine Quell-URL für den Generierungsdienst öffentlich erreichbar ist und keine Anmeldung über Ihre Browsersitzung erfordert. Vermeiden Sie es, langlebige signierte URLs in Prompts einzubetten, die in Logs kopiert werden können. Setzen Sie in Ihrer eigenen Anwendung Prüfungen für Uploadgröße und Content-Type durch, bevor Sie Benutzerdateien akzeptieren.
Bewahren Sie bei der Generierung aus einem von Benutzern bereitgestellten Bild die Originaldatei auf und verfolgen Sie Einwilligungs- und Aufbewahrungsanforderungen. Ein generiertes Ergebnis kann erkennbare Details der Quelle enthalten. Wenden Sie daher vor der Weitergabe die Datenschutz- und Moderationsregeln Ihres Produkts an.
Benutzeroberfläche an Jobstatus ausrichten
Zeigen Sie nach der Rückgabe der Job-ID einen übermittelten Status, während der Verarbeitung einen Verarbeitungsstatus und klare terminale Status für Erfolg, Fehler oder Ablauf an. Ermöglichen Sie es Benutzern, die Seite sicher zu verlassen, wenn der Job asynchron fortgesetzt wird, und stellen Sie den Status anschließend wieder her, indem Sie Ihren eigenen gespeicherten Job-Datensatz abrufen. Verhindern Sie durch Deaktivieren der Senden-Schaltfläche oder mithilfe einer eigenen Idempotenzsicherung, dass ein Doppelklick doppelte Arbeit absendet.
Zeigen Sie bei einem Batch die Anzahl abgeschlossener, fehlgeschlagener und ausstehender Jobs getrennt an. Ein einzelner aggregierter Ladeindikator gibt keinen Hinweis darauf, ob ein lang laufender Videojob ordnungsgemäß läuft oder stecken geblieben ist. Verwenden Sie einen begrenzten Backoff für Abfragen und wechseln Sie zum dokumentierten Webhook-Pfad, sobald der Batch größer wird.
Ergebnisse mit einem Aufbewahrungsplan speichern
Behandeln Sie eine zurückgegebene Ergebnis-URL nicht als dauerhaften Speicher, sofern die Mediendokumentation dies nicht ausdrücklich vorsieht. Laden Sie erfolgreiche Ausgaben in Ihren Storage-Bucket herunter, wenn ein langfristiger Zugriff erforderlich ist, und speichern Sie anschließend die neue Objekt-ID in Ihrer Datenbank. Wenden Sie Zugriffskontrollen auf generierte Dateien an und definieren Sie das Löschverhalten, wenn ein Benutzer ein Projekt entfernt.
Speichern Sie die Modell-ID, Optionen, Prompt-Version, Job-ID, das Ergebnisobjekt, den terminalen Status und die abgerechnete Nutzung. So lässt sich eine spätere Supportfrage beantworten, ohne den vollständigen sensiblen Prompt zu protokollieren oder die Medien-URL für alle Teammitglieder offenzulegen.
