Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Bildgenerierungsmodelle von OpenAI erstellen Bilder anhand von vom Benutzer bereitgestellten Textvorgaben und optionalen Bildern. In diesem Artikel wird erläutert, wie Sie diese Modelle verwenden, Optionen konfigurieren und von den erweiterten Bildgenerierungsfunktionen in Azure profitieren können.
Prerequisites
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Eine Azure OpenAI-Ressource, die in einer unterstützten Region erstellt wurde. Weitere Informationen finden Sie unter Regionale Verfügbarkeit.
- Stellen Sie ein
dall-e-3
- odergpt-image-1
-Serienmodell mit Ihrer Azure OpenAI-Ressource bereit. Weitere Informationen zu Bereitstellungen finden Sie unter Erstellen einer Ressource und Bereitstellen eines Modells mit Azure OpenAI.- GPT-image-1-Modelle sind neuer und bieten eine Reihe von Verbesserungen gegenüber DALL-E 3. Sie sind in eingeschränktem Zugriff verfügbar: Beantragen Sie den Zugriff mit diesem Formular.
Überblick
- Verwenden Sie die Bildgenerierung über die Bildgenerierung-API oder die Antwort-API.
- Experimentieren mit der Bildgenerierung im Bild-Playground
- Entdecken Sie die Inhaltsfilterung und beantragen Sie die Abmeldung [hier](URL:
- Informationen zu Token für die Bildgenerierung
Aspekt | GPT-Image-1 | DALL·E 3 |
---|---|---|
Eingabe- / Ausgabemodalitäten & Format | Akzeptiert Text + Bildeingaben ; Gibt Bilder nur in Base64 aus (keine URL-Option). | Akzeptiert Texteingaben (primäre Eingabe); Eingeschränkte Bildbearbeitungseingaben (mit Maske). Gibt als URL oder Base64 aus. |
Bildgrößen/Auflösungen | 1024×1024, 1024×1536, 1536×1024 | 1024×1024, 1024×1792, 1792×1024 |
Qualitätsoptionen |
low , medium , high (Standard = hoch) |
standard , hd ; Formatoptionen: natural , vivid |
Anzahl der Bilder pro Anforderung | 1–10 Bilder pro Anforderung (n Parameter) |
Nur 1 Bild pro Anforderung (n darf 1 sein) |
Bearbeiten (Inpainting / Variationen) | Ja – unterstützt Inpainting und Variationen mit Maske + Prompt | Ja – unterstützt Inpainting und Variationen |
Stärken | Bessere Genauigkeit, Realismus, multimodale Kontextnutzung, stark bei der Bearbeitung von Anweisungen | Stark bei schneller Reaktion, natürliche Textdarstellung, stilistische Vielfalt, kohärentes Bildgenerieren |
Aufrufen der Bildgenerierungs-API
Der folgende Befehl zeigt die einfachste Methode zum Verwenden eines Bildmodells mit Code. Wenn Sie diese Modelle zum ersten Mal programmgesteuert verwenden, beginnen Sie mit der Schnellstartanleitung.
Senden Sie eine POST-Anforderung an:
https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/generations?api-version=<api_version>
URL:
Ersetzen Sie die folgenden Werte:
-
<your_resource_name>
ist der Name Ihrer Azure OpenAI-Ressource. -
<your_deployment_name>
ist der Name Ihrer DALL-E 3- oder GPT-image-1-Modellimplementierung. -
<api_version>
ist die Version der API, die Sie verwenden möchten. Beispiel:2025-04-01-preview
.
Erforderliche Header:
-
Content-Type
:application/json
-
api-key
:<your_API_key>
Body:
Es folgt ein Beispiel für den Anforderungstext. Sie geben eine Reihe von Optionen an, die in späteren Abschnitten definiert sind.
{
"prompt": "A multi-colored umbrella on the beach, disposable camera",
"model": "gpt-image-1",
"size": "1024x1024",
"n": 1,
"quality": "high"
}
Tip
Informationen zu Tokenkosten für die Bildgenerierung finden Sie unter Imagetoken.
Output
Die Antwort eines erfolgreichen API-Aufrufs zur Bilderzeugung sieht wie im folgenden Beispiel aus. Das b64_json
Feld enthält die Ausgabebilddaten.
{
"created": 1698116662,
"data": [
{
"b64_json": "<base64 image data>"
}
]
}
Note
Der Parameter response_format
wird für GPT-image-1 nicht unterstützt, was immer base64-codierte Bilder zurückgibt.
Streaming
Sie können Bildgenerierungsanfragen an gpt-image-1
streamen, indem Sie den Parameter stream
auf true
und den Parameter partial_images
auf einen Wert zwischen 0 und 3 setzen.
import base64
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default"
)
client = OpenAI(
base_url = "https://RESOURCE-NAME-HERE/openai/v1/",
api_key=token_provider,
default_headers={"api_version":"preview"}
)
stream = client.images.generate(
model="gpt-image-1",
prompt="A cute baby sea otter",
n=1,
size="1024x1024",
stream=True,
partial_images = 2
)
for event in stream:
if event.type == "image_generation.partial_image":
idx = event.partial_image_index
image_base64 = event.b64_json
image_bytes = base64.b64decode(image_base64)
with open(f"river{idx}.png", "wb") as f:
f.write(image_bytes)
API-Anrufablehnung
Prompts und Bilder werden gemäß unseren Inhaltsrichtlinien gefiltert. Die API gibt einen Fehler zurück, wenn ein Prompt oder ein Bild markiert ist.
Wenn Ihre Eingabeaufforderung gekennzeichnet ist, wird der error.code
Wert in der Nachricht auf contentFilter
gesetzt. Ein Beispiel:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Es ist auch möglich, dass das generierte Image selbst gefiltert wird. In diesem Fall wird die Fehlermeldung auf Das generierte Bild wurde von unserem Sicherheitssystem gefiltert. festgelegt. Ein Beispiel:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Schreiben effektiver Text-zu-Bild-Prompts
Ihre Prompts sollten den Inhalt beschreiben, den Sie im Bild sehen möchten, sowie den visuellen Stil des Bilds.
Berücksichtigen Sie beim Schreiben von Eingabeaufforderungen, dass die Bild-APIs einen Inhaltsmoderationsfilter enthalten. Wenn der Dienst Ihren Prompt als schädlichen Inhalt erkennt, generiert er kein Bild. Weitere Informationen dazu finden Sie unter Inhaltsfilterung.
Tip
Einen ausführlichen Überblick darüber, wie Sie Ihre Textprompts optimieren können, um verschiedene Arten von Bildern zu generieren, finden Sie im Leitfaden zum Erstellen von Bildprompts.
Angeben von API-Optionen
Die folgenden API-Textkörperparameter sind für Bildgenerierungsmodelle verfügbar.
Size
Geben Sie die Größe der generierten Bilder an. Muss eines von 1024x1024
, 1024x1536
oder 1536x1024
für GPT-image-1-Modelle sein. Quadratische Bilder können schneller generiert werden.
Quality
Es gibt drei Optionen für die Bildqualität: low
, medium
, und high
. Bilder mit geringerer Qualität können schneller generiert werden.
Der Standardwert ist high
.
Number
Sie können zwischen einem und 10 Bildern in einem einzelnen API-Aufruf generieren. Der Standardwert ist 1
.
Benutzer-ID
Verwenden Sie den Benutzerparameter , um einen eindeutigen Bezeichner für den Benutzer anzugeben, der die Anforderung stellt. Diese Kennung ist nützlich für die Verfolgung und Überwachung von Nutzungsmustern. Der Wert kann eine beliebige Zeichenfolge sein, z. B. eine Benutzer-ID oder E-Mail-Adresse.
Ausgabeformat
Verwenden Sie den parameter output_format , um das Format des generierten Bilds anzugeben. Unterstützte Formate sind PNG
und JPEG
. Der Standardwert lautet PNG
.
Note
WEBP-Bilder werden in Azure OpenAI in Azure AI Foundry Models nicht unterstützt.
Compression
Verwenden Sie den parameter output_compression , um die Komprimierungsebene für das generierte Bild anzugeben. Geben Sie eine ganze Zahl zwischen 0
und 100
ein, wobei 0
keine Komprimierung und 100
maximale Komprimierung ist. Der Standardwert lautet 100
.
Streaming
Verwenden Sie den Stream-Parameter , um Streamingantworten zu aktivieren. Wenn auf true
gesetzt, gibt die API Teilbilder zurück, sobald sie generiert werden. Diese Funktion bietet Benutzern ein schnelleres visuelles Feedback und verbessert die wahrgenommene Latenz. Legen Sie den parameter partial_images fest, um zu steuern, wie viele Teilbilder generiert werden (1-3).
Aufrufen der Bildbearbeitungs-API
Mit der Bildbearbeitungs-API können Sie vorhandene Bilder anhand von Textvorgaben, die Sie eingeben, ändern. Der API-Aufruf ähnelt dem API-Aufruf der Bildgenerierung, Sie müssen aber auch ein Eingabebild bereitstellen.
Important
Das Eingabebild muss kleiner als 50 MB sein und muss eine PNG- oder JPG-Datei sein.
Important
gpt-image-1-mini
Unterstützt derzeit keine Bildbearbeitungen.
Senden Sie eine POST-Anforderung an:
https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/edits?api-version=<api_version>
URL:
Ersetzen Sie die folgenden Werte:
-
<your_resource_name>
ist der Name Ihrer Azure OpenAI-Ressource. -
<your_deployment_name>
ist der Name Ihrer DALL-E 3- oder GPT-image-1-Modellimplementierung. -
<api_version>
ist die Version der API, die Sie verwenden möchten. Beispiel:2025-04-01-preview
.
Erforderliche Header:
-
Content-Type
:multipart/form-data
-
api-key
:<your_API_key>
Body:
Es folgt ein Beispiel für den Anforderungstext. Sie geben eine Reihe von Optionen an, die in späteren Abschnitten definiert sind.
Important
Die Bildbearbeitungs-API verwendet mehrteilige/Formulardaten, nicht JSON-Daten. Das folgende Beispiel zeigt Beispielformulardaten, die an eine cURL-Anforderung angefügt werden.
-F "image[]=@beach.png" \
-F 'prompt=Add a beach ball in the center' \
-F "model=gpt-image-1" \
-F "size=1024x1024" \
-F "n=1" \
-F "quality=high"
API-Antwortausgabe
Die Antwort eines erfolgreichen API-Aufrufs für die Bildbearbeitung sieht wie im folgenden Beispiel aus. Das b64_json
Feld enthält die Ausgabebilddaten.
{
"created": 1698116662,
"data": [
{
"b64_json": "<base64 image data>"
}
]
}
Angeben von Bildbearbeitungs-API-Optionen
Die folgenden API-Textkörperparameter sind für Bildbearbeitungsmodelle verfügbar, zusätzlich zu den Parametern, die für Bildgenerierungsmodelle verfügbar sind.
Image
Der Bildwert gibt die Bilddatei an, die Sie bearbeiten möchten.
Eingabetreue
Der Parameter input_fidelity steuert, wie viel Aufwand das Modell in die Übereinstimmung mit dem Stil und den Features, insbesondere Gesichtsmerkmalen, von Eingabebildern einfügt.
Mit diesem Parameter können Sie subtile Bearbeitungen an einem Bild vornehmen, ohne dass nicht verwandte Bereiche geändert werden. Wenn Sie hohe Eingabetreue verwenden, bleiben Gesichter genauer als im Standardmodus erhalten.
Important
Die gpt-image-1-mini
Eingabetreue wird vom Modell nicht unterstützt.
Mask
Der Parameter mask verwendet den gleichen Typ wie der Haupteingabeparameter image. Er definiert den Bereich des Bilds, den das Modell bearbeiten soll, wobei in diesen Bereichen vollständig transparente Pixel (Alpha von Null) verwendet werden. Die Maske muss eine PNG-Datei sein und dieselben Abmessungen wie das Eingabebild aufweisen.
Streaming
Verwenden Sie den Stream-Parameter , um Streamingantworten zu aktivieren. Wenn auf true
gesetzt, gibt die API Teilbilder zurück, sobald sie generiert werden. Diese Funktion bietet Benutzern ein schnelleres visuelles Feedback und verbessert die wahrgenommene Latenz. Legen Sie den parameter partial_images fest, um zu steuern, wie viele Teilbilder generiert werden (1-3).