Freigeben über


Schnellstart: Generieren von Bildern mit Azure OpenAI in Azure AI Foundry-Modellen

Verwenden Sie diesen Leitfaden, um mit dem Generieren von Images mit Azure OpenAI in Ihrem Browser mit Azure KI Foundry zu beginnen.

Voraussetzungen

Gehe zu Azure KI Foundry

Navigieren Sie zu Azure KI Foundry, und melden Sie sich mit den Anmeldeinformationen für Ihre Azure OpenAI-Ressource an. Wählen Sie während oder nach dem Anmeldeworkflow das passende Verzeichnis, Azure-Abonnement und die Azure OpenAI-Ressource aus.

Erstellen oder wählen Sie auf der Azure KI Foundry-Startseite ein neues Projekt aus. Navigieren Sie auf der linken Navigationsleiste zur Seite Modelle und Endpunkte. Wählen Sie Modell bereitstellen und dann eines der DALL-E-Modelle aus der Liste aus. Schließen Sie den Bereitstellungsprozess ab.

Wählen Sie auf der Seite des Modells Im Playground öffnen aus.

Testen der Imagegenerierung

Beginnen Sie mit der Erkundung der Azure OpenAI-Funktionen mit einem No-Code-Ansatz mithilfe des Images Playgrounds. Geben Sie ihre Imageeingabeaufforderung in das Textfeld ein, und wählen Sie Generieren aus. Wenn das von der KI generierte Bild bereit ist, wird es auf der Seite angezeigt.

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn Azure OpenAI Ihren Prompt als schädlichen Inhalt erkennt, wird kein generiertes Bild zurückgegeben. Weitere Informationen dazu finden Sie unter Inhaltsfilterung.

Im Images Playground können Sie auch Python- und cURL-Codebeispiele anzeigen, die anhand Ihrer ausgewählten Einstellungen vorab eingefügt wurden. Wählen Sie Code anzeigen am oberen Rand der Seite aus. Sie können diesen Code verwenden, um eine Anwendung zu schreiben, die dieselbe Aufgabe erledigt.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

Verwenden Sie dieses Handbuch, um mit dem Aufrufen von Azure OpenAI in Azure AI Foundry Models Image Generation REST-APIs mithilfe von Python zu beginnen.

Voraussetzungen

Konfiguration

Abrufen von Schlüssel und Endpunkt

Um die Azure OpenAI-APIs erfolgreich aufzurufen, benötigen Sie die folgenden Informationen zu Ihrer Azure OpenAI-Ressource:

Variable Name Wert
Endpunkt api_base Der Endpunktwert befindet sich unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Sie finden den Endpunkt auch über die Seite Bereitstellungen im Azure KI Foundry-Portal. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/.
Schlüssel api_key Den Schlüsselwert finden Sie ebenfalls unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Azure generiert zwei Schlüssel für Ihre Ressource. Sie können beide Werte verwenden.

Wechseln Sie zu Ihrer Ressource im Azure-Portal. Wählen Sie im Navigationsbereich unter Ressourcenverwaltung die Option Schlüssel und Endpunkt aus. Kopieren Sie den Wert unter Endpunkt und einen Zugriffsschlüsselwert. Sie können entweder den Wert unter SCHLÜSSEL 1 oder unter SCHLÜSSEL 2 verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.

Screenshot der Seite „Schlüssel und Endpunkt“ für eine Azure OpenAI-Ressource im Azure-Portal.

Umgebungsvariablen

Erstellen und Zuweisen von beständigen Umgebungsvariablen für Ihren Schlüssel und Endpunkt.

Von Bedeutung

Wir empfehlen die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen , um zu vermeiden, dass Anmeldeinformationen mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.

Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, rotieren Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe von rollenbasierter Zugriffssteuerung und Netzwerkzugriffsbeschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.

Weitere Informationen zur Sicherheit von KI-Diensten finden Sie unter Authentifizieren von Anforderungen an Azure AI-Dienste.

setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE" 
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE" 

Erstellen einer neuen Python-Anwendung

Erstellen Sie eine neue Python-Datei namens quickstart.py. Öffnen Sie die Datei in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.

  1. Ersetzen Sie den Inhalt von quickstart.py durch den folgenden Code. Ändern Sie den Wert von prompt in den gewünschten Text. Legen Sie außerdem den Bereitstellungsnamen deployment fest, den Sie beim Bereitstellen des GPT-image-1-Modells ausgewählt haben.

    import os
    import requests
    import base64
    from PIL import Image
    from io import BytesIO
    
    # set environment variables
    endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    subscription_key = os.getenv("AZURE_OPENAI_API_KEY")
    
    deployment = "gpt-image-1" # the name of your GPT-image-1 deployment
    api_version = "2025-04-01-preview" # or later version
    
    def decode_and_save_image(b64_data, output_filename):
      image = Image.open(BytesIO(base64.b64decode(b64_data)))
      image.show()
      image.save(output_filename)
    
    def save_all_images_from_response(response_data, filename_prefix):
      for idx, item in enumerate(response_data['data']):
        b64_img = item['b64_json']
        filename = f"{filename_prefix}_{idx+1}.png"
        decode_and_save_image(b64_img, filename)
        print(f"Image saved to: '{filename}'")
    
    base_path = f'openai/deployments/{deployment}/images'
    params = f'?api-version={api_version}'
    
    generation_url = f"{endpoint}{base_path}/generations{params}"
    generation_body = {
      "prompt": "girl falling asleep",
      "n": 1,
      "size": "1024x1024",
      "quality": "medium",
      "output_format": "png"
    }
    generation_response = requests.post(
      generation_url,
      headers={
        'Api-Key': subscription_key,
        'Content-Type': 'application/json',
      },
      json=generation_body
    ).json()
    save_all_images_from_response(generation_response, "generated_image")
    
    # In addition to generating images, you can edit them.
    edit_url = f"{endpoint}{base_path}/edits{params}"
    edit_body = {
      "prompt": "girl falling asleep",
      "n": 1,
      "size": "1024x1024",
      "quality": "medium"
    }
    files = {
      "image": ("generated_image_1.png", open("generated_image_1.png", "rb"), "image/png"),
      # You can use a mask to specify which parts of the image you want to edit.
      # The mask must be the same size as the input image.
      # "mask": ("mask.png", open("mask.png", "rb"), "image/png"),
    }
    edit_response = requests.post(
      edit_url,
      headers={'Api-Key': subscription_key},
      data=edit_body,
      files=files
    ).json()
    save_all_images_from_response(edit_response, "edited_image")
    

    Das Skript führt einen API-Aufruf der synchronen Bildgenerierung durch.

    Von Bedeutung

    Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Weitere Informationen finden Sie unter Azure Key Vault.

  2. Führen Sie die Anwendung mit Befehl python aus:

    python quickstart.py
    

    Warten Sie einen Moment auf die Antwort.

Output

Die Ausgabe eines erfolgreichen Aufrufs der Bilderstellungs-API sieht wie im folgenden Beispiel aus. Das Feld url enthält eine URL, in der Sie das generierte Image herunterladen können. Die URL bleibt 24 Stunden aktiv.

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "url": "<URL_to_generated_image>",
            "revised_prompt": "<prompt_that_was_used>" 
        }
    ]
} 

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihren Prompt als schädlichen Inhalt erkennt, generiert er kein Bild. Weitere Informationen dazu finden Sie unter Inhaltsfilterung. Beispiele für Fehlerantworten finden Sie in der Anleitung zur Generierung von Bildern.

Das System gibt den Vorgangstatus Failed zurück, und der Wert error.code in der Nachricht wird auf contentFilter festgelegt. 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 ist die Fehlermeldung auf Generated image was filtered as a result of our safety system. festgelegt. Ein Beispiel:

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Generated image was filtered as a result of our safety system."
    }
}

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit dem Generieren von Bildern mit dem Azure OpenAI-SDK für Python zu beginnen.

Quellcode der Bibliothek | Paket | Beispiele

Voraussetzungen

Konfiguration

Abrufen von Schlüssel und Endpunkt

Um die Azure OpenAI-APIs erfolgreich aufzurufen, benötigen Sie die folgenden Informationen zu Ihrer Azure OpenAI-Ressource:

Variable Name Wert
Endpunkt api_base Der Endpunktwert befindet sich unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Sie finden den Endpunkt auch über die Seite Bereitstellungen im Azure KI Foundry-Portal. Ein Beispielendpunkt ist https://docs-test-001.openai.azure.com/.
Schlüssel api_key Den Schlüsselwert finden Sie ebenfalls unter Schlüssel und Endpunkt für Ihre Ressource im Azure-Portal. Azure generiert zwei Schlüssel für Ihre Ressource. Sie können beide Werte verwenden.

Wechseln Sie zu Ihrer Ressource im Azure-Portal. Wählen Sie im Navigationsbereich unter Ressourcenverwaltung die Option Schlüssel und Endpunkt aus. Kopieren Sie den Wert unter Endpunkt und einen Zugriffsschlüsselwert. Sie können entweder den Wert unter SCHLÜSSEL 1 oder unter SCHLÜSSEL 2 verwenden. Wenn Sie jederzeit zwei Schlüssel zur Verfügung haben, können Sie die Schlüssel auf sichere Weise rotieren und neu generieren, ohne Dienstunterbrechungen zu verursachen.

Screenshot der Seite „Schlüssel und Endpunkt“ für eine Azure OpenAI-Ressource im Azure-Portal.

Umgebungsvariablen

Erstellen und Zuweisen von beständigen Umgebungsvariablen für Ihren Schlüssel und Endpunkt.

Von Bedeutung

Wir empfehlen die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen , um zu vermeiden, dass Anmeldeinformationen mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.

Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, rotieren Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe von rollenbasierter Zugriffssteuerung und Netzwerkzugriffsbeschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.

Weitere Informationen zur Sicherheit von KI-Diensten finden Sie unter Authentifizieren von Anforderungen an Azure AI-Dienste.

setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE" 
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE" 

Installieren des Python SDK

Öffnen Sie eine Eingabeaufforderung, und navigieren Sie zu Ihrem Projektordner. Installieren Sie das OpenAI Python SDK mithilfe des folgenden Befehls:

pip install openai

Installieren Sie auch die folgenden Bibliotheken:

pip install requests
pip install pillow 

Generieren von Bildern mit DALL-E

Erstellen Sie eine neue Python-Datei mit dem Namen quickstart.py. Öffnen Sie sie in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.

Ersetzen Sie den Inhalt von quickstart.py durch den folgenden Code.

from openai import AzureOpenAI
import os
import requests
from PIL import Image
import json

client = AzureOpenAI(
    api_version="2024-02-01",  
    api_key=os.environ["AZURE_OPENAI_API_KEY"],  
    azure_endpoint=os.environ['AZURE_OPENAI_ENDPOINT']
)

result = client.images.generate(
    model="dalle3", # the name of your DALL-E 3 deployment
    prompt="a close-up of a bear walking throughthe forest",
    n=1
)

json_response = json.loads(result.model_dump_json())

# Set the directory for the stored image
image_dir = os.path.join(os.curdir, 'images')

# If the directory doesn't exist, create it
if not os.path.isdir(image_dir):
    os.mkdir(image_dir)

# Initialize the image path (note the filetype should be png)
image_path = os.path.join(image_dir, 'generated_image.png')

# Retrieve the generated image
image_url = json_response["data"][0]["url"]  # extract image URL from response
generated_image = requests.get(image_url).content  # download the image
with open(image_path, "wb") as image_file:
    image_file.write(generated_image)

# Display the image in the default image viewer
image = Image.open(image_path)
image.show()
  1. Geben Sie Ihre Endpunkt-URL und ihren Schlüssel in die entsprechenden Felder ein.
  2. Ändern Sie den Wert von prompt in den gewünschten Text.
  3. Ändern Sie den Wert von model in den Namen des bereitgestellten DALL-E 3-Modells.

Von Bedeutung

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Weitere Informationen finden Sie unter Azure Key Vault.

Führen Sie die Anwendung mit Befehl python aus:

python quickstart.py

Warten Sie einen Moment auf die Antwort.

Output

Azure OpenAI speichert das Ausgabeimage in der Datei generated_image.png im angegebenen Verzeichnis. Das Skript zeigt das Bild auch in der standardmäßigen Bildanzeige an.

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihren Prompt als schädlichen Inhalt erkennt, generiert er kein Bild. Weitere Informationen dazu finden Sie unter Inhaltsfilterung.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit Azure OpenAI-SDK für C# Bilder zu generieren.

Quellcode der Bibliothek | Paket (NuGet) | Beispiele

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Einrichten

  1. Erstellen Sie einen neuen Ordner vision-quickstart , und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Erstellen Sie eine neue Konsolenanwendung mit dem folgenden Befehl:

    dotnet new console
    
  3. Installieren Sie die OpenAI .NET-Clientbibliothek mit dem Befehl dotnet add package:

    dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6
    
  4. Installieren Sie für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID das Paket Azure.Identity mit:

    dotnet add package Azure.Identity
    
  5. Melden Sie sich für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID mit dem folgenden Befehl bei Azure an:

    az login
    

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

Den Schnellstart ausführen

Der Beispielcode in diesem Schnellstart verwendet Microsoft Entra ID für die empfohlene schlüssellose Authentifizierung. Wenn Sie einen API-Schlüssel verwenden möchten, können Sie das DefaultAzureCredential Objekt durch ein AzureKeyCredential Objekt ersetzen.

AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 

Führen Sie die folgenden Schritte aus, um die Schnellstartanleitung auszuführen:

  1. Ersetzen Sie den Inhalt von Program.cs durch den folgenden Code, und aktualisieren Sie die Platzhalterwerte durch Ihren eigenen.

    using Azure;
    using Azure.AI.OpenAI;
    using OpenAI.Images;
    using static System.Environment;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/";
    string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>";
    
    // Use the recommended keyless credential instead of the AzureKeyCredential credential.
    AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 
    //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key));
    
    // This must match the custom deployment name you chose for your model
    ImageClient chatClient = openAIClient.GetImageClient("dalle-3");
    
    var imageGeneration = await chatClient.GenerateImageAsync(
            "a happy monkey sitting in a tree, in watercolor",
            new ImageGenerationOptions()
            {
                Size = GeneratedImageSize.W1024xH1024
            }
        );
    
    Console.WriteLine(imageGeneration.Value.ImageUri);
    
  2. Führen Sie die Anwendung mit dem Befehl dotnet run oder der Schaltfläche „Ausführen“ oben in Visual Studio aus:

    dotnet run
    

Output

Die URL des generierten Bilds wird in der Konsole ausgegeben.

<SAS URL>

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihre Eingabeaufforderung als schädlichen Inhalt erkennt, gibt er kein generiertes Image zurück. Weitere Informationen finden Sie im Artikel zu Inhaltsfiltern.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource löschen. Vor dem Löschen der Ressource müssen Sie zunächst alle bereitgestellten Modelle löschen.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit dem Azure OpenAI-SDK für Java Bilder zu generieren.

Bibliothekquellcode | Artefakt (Maven) | Beispiele

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Einrichten

  1. Erstellen Sie einen neuen Ordner vision-quickstart , und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Installieren Sie Apache Maven. Führen Sie dann mvn -v aus, um die erfolgreiche Installation zu bestätigen.

  3. Erstellen Sie im Stammverzeichnis Ihres Projekts eine neue Datei pom.xml, und kopieren Sie folgende Code in diese Datei:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
         <modelVersion>4.0.0</modelVersion>
         <groupId>com.azure.samples</groupId>
         <artifactId>quickstart-dall-e</artifactId>
         <version>1.0.0-SNAPSHOT</version>
         <build>
             <sourceDirectory>src</sourceDirectory>
             <plugins>
             <plugin>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <version>3.7.0</version>
                 <configuration>
                 <source>1.8</source>
                 <target>1.8</target>
                 </configuration>
             </plugin>
             </plugins>
         </build>
         <dependencies>    
             <dependency>
                 <groupId>com.azure</groupId>
                 <artifactId>azure-ai-openai</artifactId>
                 <version>1.0.0-beta.3</version>
             </dependency>
             <dependency>
                 <groupId>com.azure</groupId>
                 <artifactId>azure-core</artifactId>
                 <version>1.53.0</version>
             </dependency>
             <dependency>
                 <groupId>com.azure</groupId>
                 <artifactId>azure-identity</artifactId>
                 <version>1.15.1</version>
             </dependency>
             <dependency>
                 <groupId>org.slf4j</groupId>
                 <artifactId>slf4j-simple</artifactId>
                 <version>1.7.9</version>
             </dependency>
         </dependencies>
     </project>
    
  4. Installieren Sie das Azure OpenAI SDK und Abhängigkeiten.

    mvn clean dependency:copy-dependencies
    
  5. Melden Sie sich für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID mit dem folgenden Befehl bei Azure an:

    az login
    

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

App starten

Der Beispielcode in diesem Schnellstart verwendet Microsoft Entra ID für die empfohlene schlüssellose Authentifizierung. Wenn Sie einen API-Schlüssel verwenden möchten, können Sie das DefaultAzureCredential Objekt durch ein AzureKeyCredential Objekt ersetzen.

OpenAIAsyncClient client = new OpenAIClientBuilder()
    .endpoint(endpoint)
    .credential(new DefaultAzureCredentialBuilder().build())
    .buildAsyncClient();

Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung für die Spracherkennung zu erstellen.

  1. Erstellen Sie eine neue Datei mit dem Namen Quickstart.java im selben Projektstammverzeichnis.

  2. Kopieren Sie den folgenden Code in Quickstart.java:

    import com.azure.ai.openai.OpenAIAsyncClient;
    import com.azure.ai.openai.OpenAIClientBuilder;
    import com.azure.ai.openai.models.ImageGenerationOptions;
    import com.azure.ai.openai.models.ImageLocation;
    import com.azure.core.credential.AzureKeyCredential;
    import com.azure.core.models.ResponseError;
    
    import java.util.concurrent.TimeUnit;
    
    public class Quickstart {
    
        public static void main(String[] args) throws InterruptedException {
    
            String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT");
    
            // Use the recommended keyless credential instead of the AzureKeyCredential credential.
    
            OpenAIAsyncClient client = new OpenAIClientBuilder()
                .endpoint(endpoint)
                .credential(new DefaultAzureCredentialBuilder().build())
                .buildAsyncClient();
    
            ImageGenerationOptions imageGenerationOptions = new ImageGenerationOptions(
                "A drawing of the Seattle skyline in the style of Van Gogh");
            client.getImages(imageGenerationOptions).subscribe(
                images -> {
                    for (ImageLocation imageLocation : images.getData()) {
                        ResponseError error = imageLocation.getError();
                        if (error != null) {
                            System.out.printf("Image generation operation failed. Error code: %s, error message: %s.%n",
                                error.getCode(), error.getMessage());
                        } else {
                            System.out.printf(
                                "Image ___location URL that provides temporary access to download the generated image is %s.%n",
                                imageLocation.getUrl());
                        }
                    }
                },
                error -> System.err.println("There was an error getting images." + error),
                () -> System.out.println("Completed getImages."));
    
            // The .subscribe() creation and assignment isn't a blocking call.
            // The thread sleeps so the program does not end before the send operation is complete. 
            // Use .block() instead of .subscribe() for a synchronous call.
            TimeUnit.SECONDS.sleep(10);
        }
    }
    
  3. Führen Sie die neue Konsolenanwendung aus, um ein Image zu generieren:

    javac Quickstart.java -cp ".;target\dependency\*"
    java -cp ".;target\dependency\*" Quickstart
    

Output

Die URL des generierten Bilds wird in der Konsole ausgegeben.

Image ___location URL that provides temporary access to download the generated image is <SAS URL>.
Completed getImages.

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihre Eingabeaufforderung als schädlichen Inhalt erkennt, gibt er kein generiertes Image zurück. Weitere Informationen finden Sie im Artikel zu Inhaltsfiltern.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource löschen. Vor dem Löschen der Ressource müssen Sie zunächst alle bereitgestellten Modelle löschen.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit dem Azure OpenAI-SDK für JavaScript Bilder zu generieren.

Referenzdokumentation | Quellcode | Paket (NPM) | Beispiele

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Einrichten

  1. Erstellen Sie einen neuen Ordner image-quickstart , und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:

    mkdir image-quickstart && cd image-quickstart
    
  2. Erstellen Sie package.json mit dem folgenden Befehl:

    npm init -y
    
  3. Installieren Sie die OpenAI-Clientbibliothek für JavaScript mit:

    npm install openai
    
  4. Für die empfohlene kennwortlose Authentifizierung:

    npm install @azure/identity
    

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

Vorsicht

Um die empfohlene schlüssellose Authentifizierung mit dem SDK zu verwenden, stellen Sie sicher, dass die Umgebungsvariable AZURE_OPENAI_API_KEY nicht festgelegt ist.

Generieren von Bildern mit DALL-E

  1. Erstellen Sie die Datei index.js mit dem folgenden Code:

    const { AzureOpenAI } = require("openai");
    const { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } = require("@azure/identity");
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "dall-e-3";
    
    // The prompt to generate images from
    const prompt = "a monkey eating a banana";
    const numberOfImagesToGenerate = 1;
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    async function main() {
      console.log("== Image Generation ==");
    
      const client = getClient();
    
      const results = await client.images.generate({
        prompt,
        size: "1024x1024",
        n: numberOfImagesToGenerate,
        model: "",
        style: "vivid", // or "natural"
      });
    
      for (const image of results.data) {
        console.log(`Image generation result URL: ${image.url}`);
      }
    }
    
    main().catch((err) => {
      console.error("The sample encountered an error:", err);
    });
    
  2. Melden Sie sich mithilfe des folgenden Befehls bei Azure an:

    az login
    
  3. Führen Sie die JavaScript-Datei aus.

    node index.js
    

Output

Die URL des generierten Bilds wird in der Konsole ausgegeben.

== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihre Eingabeaufforderung als schädlichen Inhalt erkennt, gibt er kein generiertes Image zurück. Weitere Informationen finden Sie im Artikel zu Inhaltsfiltern.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource löschen. Vor dem Löschen der Ressource müssen Sie zunächst alle bereitgestellten Modelle löschen.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit dem Azure OpenAI-SDK für JavaScript Bilder zu generieren.

Referenzdokumentation | Quellcode | Paket (NPM) | Beispiele

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Einrichten

  1. Erstellen Sie einen neuen Ordner image-quickstart , und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:

    mkdir image-quickstart && cd image-quickstart
    
  2. Erstellen Sie package.json mit dem folgenden Befehl:

    npm init -y
    
  3. Mit dem folgenden Befehl aktualisieren Sie package.json auf ECMAScript.

    npm pkg set type=module
    
  4. Installieren Sie die OpenAI-Clientbibliothek für JavaScript mit:

    npm install openai
    
  5. Für die empfohlene kennwortlose Authentifizierung:

    npm install @azure/identity
    

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

Vorsicht

Um die empfohlene schlüssellose Authentifizierung mit dem SDK zu verwenden, stellen Sie sicher, dass die Umgebungsvariable AZURE_OPENAI_API_KEY nicht festgelegt ist.

Generieren von Bildern mit DALL-E

  1. Erstellen Sie die Datei index.ts mit dem folgenden Code:

    import { AzureOpenAI } from "openai";
    import { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } from "@azure/identity";
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "dall-e-3";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    async function main() {
      console.log("== Image Generation ==");
    
      const client = getClient();
    
      const results = await client.images.generate({
        prompt,
        size: "1024x1024",
        n: numberOfImagesToGenerate,
        model: "",
        style: "vivid", // or "natural"
      });
    
      for (const image of results.data) {
        console.log(`Image generation result URL: ${image.url}`);
      }
    }
    
    main().catch((err) => {
      console.error("The sample encountered an error:", err);
    });
    
  2. Erstellen Sie die Datei tsconfig.json, um den TypeScript-Code zu transpilieren, und kopieren Sie den folgenden Code für ECMAScript.

    {
        "compilerOptions": {
          "module": "NodeNext",
          "target": "ES2022", // Supports top-level await
          "moduleResolution": "NodeNext",
          "skipLibCheck": true, // Avoid type errors from node_modules
          "strict": true // Enable strict type-checking options
        },
        "include": ["*.ts"]
    }
    
  3. Transpilieren Sie aus TypeScript nach JavaScript.

    tsc
    
  4. Melden Sie sich mithilfe des folgenden Befehls bei Azure an:

    az login
    
  5. Führen Sie den Code mithilfe des folgenden Befehls aus:

    node index.js
    

Output

Die URL des generierten Bilds wird in der Konsole ausgegeben.

== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihre Eingabeaufforderung als schädlichen Inhalt erkennt, gibt er kein generiertes Image zurück. Weitere Informationen finden Sie im Artikel zu Inhaltsfiltern.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource löschen. Vor dem Löschen der Ressource müssen Sie zunächst alle bereitgestellten Modelle löschen.

Nächste Schritte

Verwenden Sie diesen Leitfaden, um mit dem Azure OpenAI-SDK für Go Bilder zu generieren.

Quellcode der Bibliothek | Paket | Beispiele

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Einrichten

  1. Erstellen Sie einen neuen Ordner dall-e-quickstart , und wechseln Sie mit dem folgenden Befehl zum Schnellstartordner:

    mkdir dall-e-quickstart && cd dall-e-quickstart
    
  2. Melden Sie sich für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID mit dem folgenden Befehl bei Azure an:

    az login
    

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

Den Schnellstart ausführen

Der Beispielcode in diesem Schnellstart verwendet Microsoft Entra ID für die empfohlene schlüssellose Authentifizierung. Wenn Sie einen API-Schlüssel verwenden möchten, können Sie die Implementierung von NewDefaultAzureCredential durch NewKeyCredential ersetzen.

azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
credential, err := azidentity.NewDefaultAzureCredential(nil)
client, err := azopenai.NewClient(azureOpenAIEndpoint, credential, nil)

So führen Sie das Beispiel aus:

  1. Erstellen Sie eine neue Datei mit dem Namen "quickstart.go". Kopieren Sie den folgenden Code in die Datei "quickstart.go ".

     package main
    
    import (
    	"context"
    	"fmt"
    	"net/http"
    	"os"
    	"log"
    
    	"github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai"
    	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
    	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
    )
    
    func main() {
    	azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
    	modelDeploymentID := "dall-e-3"
    
    	credential, err := azidentity.NewDefaultAzureCredential(nil)
    	if err != nil {
    		log.Printf("ERROR: %s", err)
    		return
    	}
    
    	client, err := azopenai.NewClient(
    		azureOpenAIEndpoint, credential, nil)
    	if err != nil {
    		log.Printf("ERROR: %s", err)
    		return
    	}
    
    	resp, err := client.GetImageGenerations(context.TODO(), azopenai.ImageGenerationOptions{
    		Prompt:         to.Ptr("A painting of a cat in the style of Dali."),
    		ResponseFormat: to.Ptr(azopenai.ImageGenerationResponseFormatURL),
    		DeploymentName: to.Ptr(modelDeploymentID),
    	}, nil)
    
    	if err != nil {
    		// Implement application specific error handling logic.
    		log.Printf("ERROR: %s", err)
    		return
    	}
    
    	for _, generatedImage := range resp.Data {
    		// The underlying type for the generatedImage is determined by the value of
    		// ImageGenerationOptions.ResponseFormat. 
    		// In this example we use `azopenai.ImageGenerationResponseFormatURL`,
    		// so the underlying type will be ImageLocation.
    
    		resp, err := http.Head(*generatedImage.___URL)
    
    		if err != nil {
    			// Implement application specific error handling logic.
    			log.Printf("ERROR: %s", err)
    			return
    		}
    
    		fmt.Fprintf(os.Stderr, "Image generated, HEAD request on URL returned %d\nImage URL: %s\n", resp.StatusCode, *generatedImage.___URL)
    	}
    }
    
  2. Führen Sie den folgenden Befehl aus, um ein neues Go-Modul zu erstellen:

     go mod init quickstart.go
    
  3. Führen Sie go mod tidy aus, um die erforderlichen Abhängigkeiten zu installieren.

    go mod tidy
    
  4. Führen Sie den folgenden Befehl aus, um das Beispiel auszuführen:

     go run quickstart.go
    

Output

Die URL des generierten Bilds wird in der Konsole ausgegeben.

Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>

Hinweis

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihre Eingabeaufforderung als schädlichen Inhalt erkennt, gibt er kein generiertes Image zurück. Weitere Informationen finden Sie im Artikel zu Inhaltsfiltern.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

Verwenden Sie dieses Handbuch, um mit dem Aufrufen von Azure OpenAI in Azure AI Foundry Models Image Generation APIs mit PowerShell zu beginnen.

Voraussetzungen

Voraussetzungen für Microsoft Entra ID

Für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID müssen Sie:

  • Installieren Sie die Azure CLI , die für die schlüssellose Authentifizierung mit der Microsoft Entra-ID verwendet wird.
  • Weisen Sie Ihrem Benutzerkonto die Cognitive Services User-Rolle zu. Sie können Rollen im Azure-Portal unter Zugriffssteuerung (IAM)>Rollenzuweisung hinzufügen zuweisen.

Abrufen von Ressourceninformationen

Sie müssen die folgenden Informationen abrufen, um Ihre Anwendung bei Ihrer Azure OpenAI-Ressource zu authentifizieren:

Variablenname Wert
AZURE_OPENAI_ENDPOINT Diesen Wert finden Sie im Abschnitt Schlüssel und Endpunkt, wenn Sie die Ressource über das Azure-Portal untersuchen.
AZURE_OPENAI_DEPLOYMENT_NAME Dieser Wert entspricht dem benutzerdefinierten Namen, den Sie bei der Bereitstellung eines Modells ausgewählt haben. Diesen Wert finden Sie unter Ressourcenverwaltung>Modellbereitstellungen im Azure-Portal.
OPENAI_API_VERSION Erfahren Sie mehr über API-Versionen.

Sie können die Version im Code ändern oder eine Umgebungsvariable verwenden.

Erfahren Sie mehr über schlüssellose Authentifizierung und das Festlegen von Umgebungsvariablen.

Generieren von Bildern

  1. Melden Sie sich für die empfohlene schlüssellose Authentifizierung mit Microsoft Entra ID mit dem folgenden Befehl bei Azure an:

    az login
    
  2. Erstellen Sie eine neue PowerShell-Datei namensquickstart.ps1. Öffnen Sie diese anschließend in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE.

  3. Ersetzen Sie den Inhalt von quickstart.ps1 durch den folgenden Code. Geben Sie Ihre Endpunkt-URL und ihren Schlüssel in die entsprechenden Felder ein. Ändern Sie den Wert von prompt in den gewünschten Text.

     # Azure OpenAI metadata variables
     $openai = @{
         api_base    = $Env:AZURE_OPENAI_ENDPOINT 
         api_version = '2023-06-01-preview' # This can change in the future.
     }
    
     # Use the recommended keyless authentication via bearer token.
     $headers = [ordered]@{
         #'api-key' = $Env:AZURE_OPENAI_API_KEY
         'Authorization' = "Bearer $($Env:DEFAULT_AZURE_CREDENTIAL_TOKEN)"
     }
    
     # Text to describe image
     $prompt = 'A painting of a dog'
    
     # Adjust these values to fine-tune completions
     $body = [ordered]@{
         prompt = $prompt
         size   = '1024x1024'
         n      = 1
     } | ConvertTo-Json
    
     # Call the API to generate the image and retrieve the response
     $url = "$($openai.api_base)/openai/images/generations:submit?api-version=$($openai.api_version)"
    
     $submission = Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Post -ContentType 'application/json' -ResponseHeadersVariable submissionHeaders
    
     $operation_location = $submissionHeaders['operation-___location'][0]
     $status = ''
     while ($status -ne 'succeeded') {
         Start-Sleep -Seconds 1
         $response = Invoke-RestMethod -Uri $operation_location -Headers $headers
         $status   = $response.status
     }
    
     # Set the directory for the stored image
     $image_dir = Join-Path -Path $pwd -ChildPath 'images'
    
     # If the directory doesn't exist, create it
     if (-not(Resolve-Path $image_dir -ErrorAction Ignore)) {
         New-Item -Path $image_dir -ItemType Directory
     }
    
     # Initialize the image path (note the filetype should be png)
     $image_path = Join-Path -Path $image_dir -ChildPath 'generated_image.png'
    
     # Retrieve the generated image
     $image_url = $response.result.data[0].url  # extract image URL from response
     $generated_image = Invoke-WebRequest -Uri $image_url -OutFile $image_path  # download the image
     return $image_path
    

    Von Bedeutung

    Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie die PowerShell-Geheimnisverwaltung mit Azure Key Vault. Weitere Informationen zur Sicherheit von Anmeldeinformationen finden Sie in diesem Sicherheitsartikel .

  4. Führen Sie das Skript mit PowerShell aus:

    ./quickstart.ps1
    

    Das Skript durchläuft eine Schleife, bis das generierte Bild fertig ist.

Output

PowerShell fordert das Bild von Azure OpenAI an und speichert das ausgegebene Bild in der Datei generated_image.png im angegebenen Verzeichnis. Der Einfachheit halber wird der vollständige Pfad für die Datei am Ende des Skripts zurückgegeben.

Die Bild-APIs enthalten einen Inhaltsmoderationsfilter. Wenn der Dienst Ihren Prompt als schädlichen Inhalt erkennt, generiert er kein Bild. Weitere Informationen dazu finden Sie unter Inhaltsfilterung.

Bereinigen von Ressourcen

Wenn Sie eine Azure OpenAI-Ressource bereinigen und entfernen möchten, können Sie die Ressource selbst oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte