gpt-image-1 als auch das neueste gpt-image-2, sowie die über dieselbe Schnittstelle zugänglichen Modelle der nano-banana / nano-banana-2-lite / nano-banana-2 / nano-banana-pro Reihe.
Dieses Dokument beschreibt hauptsächlich den Ablauf der Nutzung der OpenAI Images Edits API, mit der wir die offiziellen OpenAI Bildbearbeitungsfunktionen einfach nutzen können.
Antragsprozess
Um die OpenAI Images Edits API zu nutzen, müssen Sie zunächst zum Ace Data Cloud Dashboard gehen, um Ihr API-Token zu erhalten, das Sie für später aufbewahren sollten.
Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, die Sie zur Registrierung und Anmeldung einlädt. 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 Dashboard Ihr Guthaben aufladen.
📘 Vollständige Dokumentation: OpenAI Images Edits API →
GPT-Image-2 Modell
gpt-image-2 bietet im Bereich der Bildbearbeitung im Vergleich zu gpt-image-1 deutliche Verbesserungen:
- Struktur bleibt stabiler: Beim Wechseln von Haut, Farben oder Hintergründen wird das Layout und die Komposition des Originalbildes kaum beeinträchtigt.
- Text bleibt genauer erhalten: Bilder mit Text wie Infografiken, Plakaten, Menüs usw. sind nach der Bearbeitung weiterhin klar und lesbar.
- Unterstützt URL-Direktübertragung: Neben dem traditionellen
multipart/form-dataDatei-Upload unterstütztgpt-image-2auch die Übertragung von Bild-URLs im JSON-Format, ohne dass die Bilder zuerst lokal heruntergeladen werden müssen, was sich hervorragend für die Integration in Server-Pipelines eignet. - Unterstützt base64-Direktübertragung: Entsprechend den offiziellen Vorgaben kann das
image-Feld auch direkt base64 (z. B.data:image/png;base64,...oder rohes base64) übertragen werden, sodass lokale Bilder nicht zuerst auf einen Bildhost hochgeladen werden müssen, um bearbeitet zu werden. - Unterstützt hochauflösende Neuzeichnung: Sie können ein 1K-Originalbild übergeben und über den
size-Parameter eine 2K / 4K-Ausgabe anfordern, wobei das Modell während des Bearbeitungsprozesses gleichzeitig die Vergrößerung durchführt.
Linienvarianten (:official / :reverse)
gpt-image-2 verwendet standardmäßig die Standardlinie. Durch den Suffix des Modellnamens können Sie die Linie explizit auswählen:
gpt-image-2:official: Offizieller Kanal, stabil und konform. Die Kosten werden durch die Token für die Texteingabe, die Token für die Bildbearbeitung und die Token für die Bildausgabe bestimmt, und die Abrechnung erfolgt basierend auf dem tatsächlichen Verbrauch in der Antwort; die auf der Seite angezeigten Preise für Qualität/Größe dienen nur zur Schätzung; die Preise für die maximale Nutzungspakete betragen etwa 80 % des offiziellen OpenAI-Preises. Der Dienst wird automatisch zwischen verfügbaren Kanälen umschalten, die Fähigkeiten und Kosten richten sich nach den tatsächlich zurückgegebenen Ergebnissen.gpt-image-2:reverse: Vollständig äquivalent zum Standardgpt-image-2, bietet ein besseres Preis-Leistungs-Verhältnis, der Preis bleibt gleich.
:officialAbrechnungsformel Endkosten = Token für Texteingabe + Token für Bildeingabe (nur Bearbeitung) + Token für Bildausgabe. Der auf der Seite angezeigte Preis fürquality × sizeist eine Schätzung vor der Anfrage, die tatsächlichen Kosten basieren auf demusageder erfolgreichen Antwort. Zum Beispiel kostet die Bildausgabe fürlow,1024x1024normalerweise etwa 0,0505 Credits, zuzüglich einer geringen Anzahl von Eingabetoken; bei Verwendung vonautokann das Modell eine höhere Qualität wählen, die vorab genehmigte Menge wird konservativ auf der höheren Stufe überprüft.
Unterstützte size Werte
Die Formatvalidierung und die Generierungsschnittstelle für size sind identisch – gpt-image-2 benötigt nur, dass size auto, leer oder im Format WIDTHxHEIGHT vorliegt, jede andere Form führt zu einem 400-Fehler. Standardmäßig werden gpt-image-2 und :reverse pro Bild einheitlich abgerechnet; :official berechnet gleichzeitig die Token für Texteingabe, Referenzbild und Bildausgabe, wobei das Originalbild, die Größe und die Qualität die endgültigen Kosten beeinflussen können.
Größenbeschränkungen: Benutzerdefinierte Größen müssen sicherstellen, dass sowohl Breite als auch Höhe Vielfache von 16 sind, die lange Seite ≤ 3840 und die Gesamtpixelzahl ≤ 8.294.400 beträgt, Überschreitungen führen zu einem 4xx-Fehler.
Zum Beispiel: Wenn das OriginalbildHier sind zwei verschiedene reale Beispiele, um die Editierfähigkeiten von1024x1024ist undsizeauf2048x2048gesetzt wird, wird das Modell gemäß den Bearbeitungsanweisungen neu gezeichnet und ein 2K-Bild ausgegeben; wennsizeauf3840x2160gesetzt wird, wird ein 4K-Breitbild ausgegeben. Die Abrechnung für die drei Größen vongpt-image-2und:reverseist identisch;:officialrichtet sich nach dem tatsächlichen Tokenverbrauch. Das Weglassen dessize-Feldes ist vollständig äquivalent zur expliziten Angabe vonauto:gpt-image-2wird zuerst die klaren Größenabsichten aus den Eingabeaufforderungen lesen, einschließlich Pixel, Verhältnis, Hoch- oder Querformat, Auflösungsstufen (z. B. 4K / hochauflösend) oder benannte Leinwände. Wenn Größenabsichten erkannt werden, wird die geplante spezifische Größe verwendet; wenn in der Eingabeaufforderung keine Größenanforderungen vorhanden sind oder die automatische Bestimmung nicht verfügbar ist, wird auf die Größe des ersten Referenzbildes zurückgegriffen. Die endgültige spezifische Größe wird vor der Anfrage auf Vielfache von 16 normalisiert, wobei die langen Seiten- und Gesamtpixelbeschränkungen berücksichtigt werden; wenn eine absolute Kontrolle erforderlich ist, geben Sie bitte direktWIDTHxHEIGHTan. Nach Abschluss der Generierung wird nicht automatisch erneut versucht, um unterschiedliche Ausgabepixel zu vermeiden, um wiederholte Generierungskosten zu vermeiden. Über dennParameter Diegpt-image-2Editier-API unterstütztn > 1: Eine Anfrage kann die entsprechende Anzahl an Editierergebnissen zurückgeben. Standardmäßig wirdgpt-image-2und:reversenach der Anzahl der erfolgreichen Bilder abgerechnet;:officialwird nach dem tatsächlichen Tokenverbrauch der gesamten Antwort abgerechnet (Werte fürnvon 1–10). Gilt auch fürgpt-image-1/gpt-image-1.5, sowie die Seriennano-banana/nano-banana-2-lite/nano-banana-2/nano-banana-pro. Beachten Sie, dassresponse_format=b64_jsonnurn=1unterstützt, bein>1verwenden Sie bitte die Standard-URL-Rückgabe. Wenn einige Bilder nicht erfolgreich generiert werden, werden nur die erfolgreichen Teile zurückgegeben und abgerechnet.
gpt-image-2 zu erleben.
Aufrufmethode eins: JSON + Bild-URL (empfohlen)
Senden Sie die Anfrage direkt imapplication/json Format, das image Feld füllt eine Bild-URL aus, das Modell wird das Bild abrufen und gemäß dem prompt bearbeiten.
Zum Beispiel, das folgende Originalbild ist ein mit gpt-image-2 generiertes wissenschaftliches Diagramm:


Hinweis: DasimageFeld unterstützt auch die Eingabe eines Arrays, z.B."image": ["url1", "url2", "url3"], bis zu 16 Referenzbilder können gleichzeitig übergeben werden, damit das Modell mehrere Bilder zur Bearbeitung berücksichtigen kann.
base64 Direktübertragung:image(und jedes Element im Array) kann neben der URL auch base64 sein —data:image/png;base64,...oder rohes base64 ist ebenfalls möglich, geeignet für lokale Bilder, die nicht zuerst auf einen Bildhost hochgeladen werden sollen. Zum Beispiel:
Aufrufmethode zwei: JSON + mehrere Referenzbilder
gpt-image-2 unterstützt die gleichzeitige Berücksichtigung mehrerer Bilder zur Generierung des Endergebnisses, z.B. mehrere Produktfotos in einem Geschenkkorb zusammenzuführen:
Szenario-Beispiel: Stilwechsel + Struktur beibehalten
Hier ist ein weiteres Beispiel, bei dem ein Holzregal durch ein modernes Wandregal ersetzt wird, aber die Anzahl und Anordnung der Bücher auf jeder Ebene strikt beibehalten wird. Originalbild (ein mitgpt-image-2 generiertes Holzregal):

task_id: e9544dba-727e-44a2-81e1-223d49869380):

Aufrufmethode drei: multipart/form-data (kompatibel mit OpenAI SDK)
Wenn Sie bereits das offizielle OpenAI Python SDK verwenden, ist die ursprünglichemultipart/form-data Upload-Methode ebenfalls anwendbar, ändern Sie einfach model in gpt-image-2:
OPENAI_BASE_URL auf https://api.acedata.cloud/openai setzen und OPENAI_API_KEY auf den erhaltenen Token setzen:
Nano Banana Modellreihe
Dienano-banana Reihe hat ebenfalls den Zugriff auf /openai/images/edits im Bearbeitungsszenario, ändern Sie model einfach in eines der untenstehenden Modelle.
Wichtig: Unterstützte Parameter Nano Banana greift über eine Anpassungsschicht auf das OpenAI-Protokoll zu und unterstützt nur die folgenden Parameter:model,prompt,image,n.
imagekann sowohl durchmultipart/form-datahochgeladene Dateien (lokale Dateien werden automatisch in base64 umgewandelt) als auch durch Formularfelder, die direkt Bild-URL-Strings übergeben, bereitgestellt werden.- Parameter wie
mask,size,response_formatwerden nicht unterstützt; sie werden ignoriert, wenn sie ausgefüllt sind.n > 1wird unterstützt (1–10) und gibt die entsprechende Anzahl an Bearbeitungsergebnissen zurück und berechnet diese.- Die Rückgabestruktur folgt dem OpenAI-Format (
data[].url), abercreatedist fest auf0gesetzt, undb64_jsonwird nicht zurückgegeben,revised_promptist immer gleich dem ursprünglichenprompt.
Aufruf über Formular + Bild-URL

Aufruf über Formular + lokale Datei
Asynchrone Rückruf
Diecallback_url asynchrone Rückruffunktion ist auch für nano-banana wirksam, der Aufrufprozess ist identisch mit anderen Modellen, siehe den Abschnitt Asynchrone Rückrufe weiter unten.
Grundlegende Verwendung
Jetzt können Sie den Code verwenden, um Aufrufe zu tätigen, unten ist der Aufruf über CURL:authorization, den Sie einfach aus der Dropdown-Liste auswählen können. Ein weiterer Parameter ist model, model ist die Modellkategorie, die wir von der OpenAI-Website verwenden möchten, hier haben wir hauptsächlich 1 Modell, Details finden Sie in den bereitgestellten Modellen. Ein weiterer Parameter ist prompt, prompt ist der Hinweis, den wir eingeben, um das Bild zu generieren. Der letzte Parameter ist image, dieser Parameter benötigt den Pfad des Bildes, das bearbeitet werden soll, das Bild, das bearbeitet werden muss, ist wie unten gezeigt:
Hinweis:image[]kann mehrmals wiederholt werden, um mehrere Referenzbilder hochzuladen, z. B.-F "image[]=@a.png" -F "image[]=@b.png", die GPT Image Modellreihe unterstützt maximal 16 Bilder (jedes nicht größer als 50 MB, im Format png/webp/jpg). Bei Überschreitung der Anzahl wird 400 zurückgegeben.

OPENAI_BASE_URL, die auf https://api.acedata.cloud/openai gesetzt werden kann, und eine weitere Variable für die Anmeldeinformationen OPENAI_API_KEY, dieser Wert wird aus authorization abgerufen, unter Mac OS können Sie die Umgebungsvariablen mit folgendem Befehl setzen:
gift-basket.png generiert wird, das Ergebnis sieht wie folgt aus:

gpt-image-1 und gpt-image-2, wobei gpt-image-2 das derzeit empfohlene Modell ist. Weitere Informationen finden Sie im obigen Abschnitt GPT-Image-2 Modell.
Asynchrone Rückrufe
Da die Bearbeitungszeit für Bilder über die OpenAI Images Edits API relativ lang sein kann, bleibt die HTTP-Anfrage bei längerer Nichtreaktion der 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 Ablauf ist folgender: Wenn der Client die Anfrage stellt, gibt er zusätzlich ein Feldcallback_url an. Nach der API-Anfrage 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 Bildbearbeitung in Form von POST JSON an die vom Client angegebene callback_url gesendet, wobei auch das Feld task_id enthalten ist, sodass das Ergebnis der Aufgabe über die ID verknüpft werden kann.
Im Folgenden werden wir 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. Zur Vereinfachung der Demonstration verwenden wir 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/3d32690d-6780-4187-a65c-870061e8c8ab.
Als Nächstes können wir das Feld callback_url auf die oben genannte Webhook-URL setzen und die entsprechenden Parameter wie im folgenden Code gezeigt ausfüllen:
task_id, das data-Feld enthält die gleichen Bildbearbeitungsergebnisse wie bei der synchronen Anfrage. Über das Feld task_id kann die Aufgabe verknüpft werden.
Fehlerbehandlung
Bei der API-Anfrage, 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 Rate-Limit überschritten.500 api_error: Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

