Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd den här guiden för att komma igång med att generera avbildningar med Azure OpenAI i webbläsaren med Azure AI Foundry.
Förutsättningar
- Ett Azure-abonnemang. Skapa en kostnadsfritt.
- En Azure OpenAI-resurs som skapats i en region som stöds. Se Regiontillgänglighet. Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Gå till Azure AI Foundry
Bläddra till Azure AI Foundry och logga in med de autentiseringsuppgifter som är associerade med din Azure OpenAI-resurs. Under eller efter inloggningsarbetsflödet väljer du lämplig katalog, Azure-prenumeration och Azure OpenAI-resurs.
På landningssidan för Azure AI Foundry skapar eller väljer du ett nytt projekt. Gå till sidan Modeller + slutpunkter i det vänstra navigeringsfältet . Välj Distribuera modell och välj sedan en av DALL-E-modellerna i listan. Slutför distributionsprocessen.
På modellens sida väljer du Öppna på lekplatsen.
Prova bildgenerering
Börja utforska Azure OpenAI-funktioner med en metod utan kod via images playground. Ange din bildprompt i textrutan och välj Generera. När den AI-genererade avbildningen är klar visas den på sidan.
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om Azure OpenAI identifierar din fråga som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i Innehållsfiltrering.
I Images playground kan du också visa Python- och cURL-kodexempel, som är förfyllda enligt dina inställningar. Välj Visa kod längst upp på sidan. Du kan använda den här koden för att skriva ett program som slutför samma uppgift.
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen eller resursgruppen. Att ta bort resursgruppen innebär också att alla andra resurser som är kopplade till den tas bort.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Prova exempel på GitHub-lagringsplatsen Azure OpenAI-exempel.
- Se API-referensen
Använd den här guiden för att komma igång med att anropa REST-API:erna för Azure OpenAI i modellerna hos Azure AI Foundry med hjälp av Python.
Förutsättningar
- Ett Azure-abonnemang. Skapa en kostnadsfritt.
- Python 3.8 eller senare version.
- Följande Python-bibliotek har installerats:
os,requests,json. - En Azure OpenAI-resurs som skapats i en region som stöds. Se Regiontillgänglighet.
- Sedan måste du distribuera en
gpt-image-1-serie ellerdalle3modell med din Azure-resurs. Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Inställningar
Hämta nyckel och slutpunkt
Om du vill anropa Azure OpenAI-API:erna behöver du följande information om din Azure OpenAI-resurs:
| Variabel | Namn | Värde |
|---|---|---|
| Slutpunkt | api_base |
Slutpunktsvärdet finns under Nycklar och slutpunkt för resursen i Azure Portal. Du hittar även slutpunkten via sidan Distributioner i Azure AI Foundry-portalen. En exempelslutpunkt är: https://docs-test-001.openai.azure.com/. |
| Nyckel | api_key |
Nyckelvärdet finns också under Nycklar och slutpunkt för resursen i Azure Portal. Azure genererar två nycklar för din resurs. Du kan använda något av värdena. |
Gå till resursen i Azure Portal. I navigeringsfönstret väljer du Nycklar och slutpunkt under Resurshantering. Kopiera slutpunktsvärdet och ett åtkomstnyckelvärde. Du kan använda antingen värdet KEY 1 eller KEY 2 . Om du alltid har två nycklar kan du rotera och återskapa nycklar på ett säkert sätt utan att orsaka avbrott i tjänsten.
Miljövariabler
Skapa och tilldela beständiga miljövariabler för din nyckel och slutpunkt.
Viktigt!
Vi rekommenderar Microsoft Entra-ID-autentisering med hanterade identiteter för Azure-resurser för att undvika att lagra autentiseringsuppgifter med dina program som körs i molnet.
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder API-nycklar lagrar du dem säkert i Azure Key Vault, roterar nycklarna regelbundet och begränsar åtkomsten till Azure Key Vault med hjälp av rollbaserad åtkomstkontroll och begränsningar för nätverksåtkomst. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Skapa ett nytt Python-program
Skapa en ny Python-fil med namnet quickstart.py. Öppna den nya filen i önskad redigerare eller IDE.
Ersätt innehållet i quickstart.py med följande kod. Ändra värdet på
prompttill önskad text.deploymentAnge även det distributionsnamn som du valde när du distribuerade GPT-image-1-modellen.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")Skriptet gör ett synkront API-anrop för bildgenerering.
Viktigt!
Kom ihåg att ta bort nyckeln från koden när du är klar och publicera aldrig nyckeln offentligt. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. Mer information finns i Azure Key Vault.
Kör programmet med
pythonkommandot :python quickstart.pyVänta en stund för att få svaret.
Utgång
Utdata från ett API-anrop för lyckad bildgenerering ser ut som i följande exempel. Fältet url innehåller en URL där du kan ladda ned den genererade avbildningen. URL:en förblir aktiv i 24 timmar.
{
"created": 1698116662,
"data": [
{
"url": "<URL_to_generated_image>",
"revised_prompt": "<prompt_that_was_used>"
}
]
}
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten känner igen din fråga som skadligt innehåll genereras ingen bild. Mer information finns i Innehållsfiltrering. Exempel på felsvar finns i instruktioner för bildgenerering.
Systemet returnerar en åtgärdsstatus för Failed och error.code värdet i meddelandet är inställt på contentFilter. Här är ett exempel:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Det är också möjligt att den genererade avbildningen filtreras. I det här fallet är felmeddelandet inställt på Generated image was filtered as a result of our safety system.. Här är ett exempel:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen eller resursgruppen. Att ta bort resursgruppen innebär också att alla andra resurser som är kopplade till den tas bort.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Prova exempel på GitHub-lagringsplatsen Azure OpenAI-exempel.
- Se API-referensen
Använd den här guiden för att komma igång med att generera avbildningar med Azure OpenAI SDK för Python.
Bibliotekskällkod | Paket | Exempel
Förutsättningar
- Ett Azure-abonnemang. Skapa en kostnadsfritt.
- Python 3.8 eller senare version.
- En Azure OpenAI-resurs som skapats i en kompatibel region. Se Regiontillgänglighet.
- Sedan måste du distribuera en
dalle3modell med din Azure-resurs. Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Inställningar
Hämta nyckel och slutpunkt
Om du vill anropa Azure OpenAI-API:erna behöver du följande information om din Azure OpenAI-resurs:
| Variabel | Namn | Värde |
|---|---|---|
| Slutpunkt | api_base |
Slutpunktsvärdet finns under Nycklar och slutpunkt för resursen i Azure Portal. Du hittar även slutpunkten via sidan Distributioner i Azure AI Foundry-portalen. En exempelslutpunkt är: https://docs-test-001.openai.azure.com/. |
| Nyckel | api_key |
Nyckelvärdet finns också under Nycklar och slutpunkt för resursen i Azure Portal. Azure genererar två nycklar för din resurs. Du kan använda något av värdena. |
Gå till resursen i Azure Portal. I navigeringsfönstret väljer du Nycklar och slutpunkt under Resurshantering. Kopiera slutpunktsvärdet och ett åtkomstnyckelvärde. Du kan använda antingen värdet KEY 1 eller KEY 2 . Om du alltid har två nycklar kan du rotera och återskapa nycklar på ett säkert sätt utan att orsaka avbrott i tjänsten.
Miljövariabler
Skapa och tilldela beständiga miljövariabler för din nyckel och slutpunkt.
Viktigt!
Vi rekommenderar Microsoft Entra-ID-autentisering med hanterade identiteter för Azure-resurser för att undvika att lagra autentiseringsuppgifter med dina program som körs i molnet.
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder API-nycklar lagrar du dem säkert i Azure Key Vault, roterar nycklarna regelbundet och begränsar åtkomsten till Azure Key Vault med hjälp av rollbaserad åtkomstkontroll och begränsningar för nätverksåtkomst. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Installera Python SDK
Öppna en kommandotolk och bläddra till projektmappen. Installera OpenAI Python SDK med hjälp av följande kommando:
pip install openai
Installera även följande bibliotek:
pip install requests
pip install pillow
Generera avbildningar med DALL-E
Skapa en ny Python-fil, quickstart.py. Öppna den i önskad redigerare eller IDE.
Ersätt innehållet i quickstart.py med följande kod.
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()
- Ange din slutpunkts-URL och nyckel i lämpliga fält.
- Ändra värdet på
prompttill önskad text. - Ändra värdet på
modeltill namnet på din driftsatta DALL-E 3-modell.
Viktigt!
Kom ihåg att ta bort nyckeln från koden när du är klar och publicera aldrig nyckeln offentligt. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. Mer information finns i Azure Key Vault.
Kör programmet med python kommandot :
python quickstart.py
Vänta en stund för att få svaret.
Utgång
Azure OpenAI lagrar utdatabilden i den generated_image.png filen i den angivna katalogen. Skriptet visar även bilden i standardvisningsprogrammet.
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten känner igen din fråga som skadligt innehåll genereras ingen bild. Mer information finns i Innehållsfiltrering.
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen eller resursgruppen. Att ta bort resursgruppen innebär också att alla andra resurser som är kopplade till den tas bort.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Prova exempel på GitHub-lagringsplatsen Azure OpenAI-exempel.
- Se API-referensen
Använd den här guiden för att komma igång med att generera avbildningar med Azure OpenAI SDK för C#.
Bibliotekets källkod | Paket (NuGet) | Exempel
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- .NET 7 utvecklingspaket (SDK)
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
vision-quickstartoch gå till snabbstartsmappen med följande kommando:mkdir vision-quickstart && cd vision-quickstartSkapa ett nytt konsolprogram med följande kommando:
dotnet new consoleInstallera OpenAI .NET-klientbiblioteket med kommandot dotnet add package:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID installerar du Azure.Identity-paketet med:
dotnet add package Azure.IdentityFör den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID loggar du in på Azure med följande kommando:
az login
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Kör snabbstarten
Exempelkoden i den här snabbstarten använder Microsoft Entra-ID för rekommenderad nyckellös autentisering. Om du föredrar att använda en API-nyckel kan du ersätta DefaultAzureCredential-objektet med ett AzureKeyCredential objekt.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Följ dessa steg för att köra snabbstarten:
Ersätt innehållet i
Program.csmed följande kod och uppdatera platshållarvärdena med dina egna.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);Kör programmet med hjälp av
dotnet runkommandot eller körningsknappen överst i Visual Studio:dotnet run
Utgång
URL:en för den genererade avbildningen skrivs ut till konsolen.
<SAS URL>
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten identifierar din begäran som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i artikeln om innehållsfilter .
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen. Innan du tar bort resursen måste du först ta bort alla distribuerade modeller.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Fler exempel finns på GitHub-lagringsplatsen Azure OpenAI Samples.
Använd den här guiden för att komma igång med att generera avbildningar med Azure OpenAI SDK för Java.
Bibliotekskällkod | Artifact (Maven) | Exempel
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Den aktuella versionen av Java Development Kit (JDK)
- Installera Apache Maven.
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
vision-quickstartoch gå till snabbstartsmappen med följande kommando:mkdir vision-quickstart && cd vision-quickstartInstallera Apache Maven. Kör
mvn -vsedan för att bekräfta att installationen har slutförts.Skapa en ny
pom.xmlfil i roten av projektet och kopiera följande kod till den:<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>Installera Azure OpenAI SDK och beroenden.
mvn clean dependency:copy-dependenciesFör den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID loggar du in på Azure med följande kommando:
az login
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Kör appen
Exempelkoden i den här snabbstarten använder Microsoft Entra-ID för rekommenderad nyckellös autentisering. Om du föredrar att använda en API-nyckel kan du ersätta DefaultAzureCredential-objektet med ett AzureKeyCredential objekt.
OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint(endpoint)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Följ de här stegen för att skapa ett konsolprogram för taligenkänning.
Skapa en ny fil med namnet Quickstart.java i samma projektrotkatalog.
Kopiera följande kod till 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); } }Kör det nya konsolprogrammet för att generera en avbildning:
javac Quickstart.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" Quickstart
Utgång
URL:en för den genererade avbildningen skrivs ut till konsolen.
Image location URL that provides temporary access to download the generated image is <SAS URL>.
Completed getImages.
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten identifierar din begäran som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i artikeln om innehållsfilter .
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen. Innan du tar bort resursen måste du först ta bort alla distribuerade modeller.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Fler exempel finns på GitHub-lagringsplatsen Azure OpenAI Samples
Använd den här guiden för att komma igång med att generera bilder med Azure OpenAI SDK för JavaScript.
Referensdokumentation | Källkod | Paket (npm) | Exempel
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- LTS-versioner av Node.js
- Azure CLI används för lösenordslös autentisering i en lokal utvecklingsmiljö och skapar den nödvändiga kontexten genom att logga in med Azure CLI.
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
image-quickstartoch gå till snabbstartsmappen med följande kommando:mkdir image-quickstart && cd image-quickstartSkapa
package.jsonmed följande kommando:npm init -yInstallera OpenAI-klientbiblioteket för JavaScript med:
npm install openaiFör den rekommenderade lösenordslösa autentiseringen:
npm install @azure/identity
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Försiktighet
Om du vill använda den rekommenderade nyckellösa autentiseringen med SDK:t kontrollerar du att AZURE_OPENAI_API_KEY miljövariabeln inte har angetts.
Generera avbildningar med DALL-E
index.jsSkapa filen med följande kod: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); });Logga in på Azure med följande kommando:
az loginKör JavaScript-filen.
node index.js
Utgång
URL:en för den genererade avbildningen skrivs ut till konsolen.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten identifierar din begäran som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i artikeln om innehållsfilter .
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen. Innan du tar bort resursen måste du först ta bort alla distribuerade modeller.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Fler exempel finns på GitHub-lagringsplatsen Azure OpenAI Samples.
Använd den här guiden för att komma igång med att generera bilder med Azure OpenAI SDK för JavaScript.
Referensdokumentation | Källkod | Paket (npm) | Exempel
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- LTS-versioner av Node.js
- TypeScript
- Azure CLI används för lösenordslös autentisering i en lokal utvecklingsmiljö och skapar den nödvändiga kontexten genom att logga in med Azure CLI.
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
image-quickstartoch gå till snabbstartsmappen med följande kommando:mkdir image-quickstart && cd image-quickstartSkapa
package.jsonmed följande kommando:npm init -ypackage.jsonUppdatera till ECMAScript med följande kommando:npm pkg set type=moduleInstallera OpenAI-klientbiblioteket för JavaScript med:
npm install openaiFör den rekommenderade lösenordslösa autentiseringen:
npm install @azure/identity
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Försiktighet
Om du vill använda den rekommenderade nyckellösa autentiseringen med SDK:t kontrollerar du att AZURE_OPENAI_API_KEY miljövariabeln inte har angetts.
Generera avbildningar med DALL-E
index.tsSkapa filen med följande kod: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); });tsconfig.jsonSkapa filen för att transpilera TypeScript-koden och kopiera följande kod 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"] }Transpilera från TypeScript till JavaScript.
tscLogga in på Azure med följande kommando:
az loginKör koden med följande kommando:
node index.js
Utgång
URL:en för den genererade avbildningen skrivs ut till konsolen.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten identifierar din begäran som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i artikeln om innehållsfilter .
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen. Innan du tar bort resursen måste du först ta bort alla distribuerade modeller.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Fler exempel finns på GitHub-lagringsplatsen Azure OpenAI Samples.
Använd den här guiden för att komma igång med att generera avbildningar med Azure OpenAI SDK för Go.
Bibliotekskällkod | Paket | Exempel
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Gå 1,8+
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
dall-e-quickstartoch gå till snabbstartsmappen med följande kommando:mkdir dall-e-quickstart && cd dall-e-quickstartFör den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID loggar du in på Azure med följande kommando:
az login
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Kör snabbstarten
Exempelkoden i den här snabbstarten använder Microsoft Entra-ID för rekommenderad nyckellös autentisering. Om du föredrar att använda en API-nyckel kan du ersätta NewDefaultAzureCredential-implementeringen med NewKeyCredential.
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
credential, err := azidentity.NewDefaultAzureCredential(nil)
client, err := azopenai.NewClient(azureOpenAIEndpoint, credential, nil)
Så här kör du exemplet:
Skapa en ny fil med namnet quickstart.go. Kopiera följande kod till filen 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) } }Kör följande kommando för att skapa en ny Go-modul:
go mod init quickstart.goKör
go mod tidyför att installera nödvändiga beroenden:go mod tidyKör följande kommando för att köra exemplet:
go run quickstart.go
Utgång
URL:en för den genererade avbildningen skrivs ut till konsolen.
Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>
Anmärkning
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten identifierar din begäran som skadligt innehåll returnerar den inte en genererad avbildning. Mer information finns i artikeln om innehållsfilter .
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen eller resursgruppen. Att ta bort resursgruppen innebär också att alla andra resurser som är kopplade till den tas bort.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.
- Fler exempel finns på GitHub-lagringsplatsen Azure OpenAI Samples.
Använd den här guiden för att komma igång med att anropa API:er för Azure OpenAI i Azure AI Foundry Models-avbildningsgenerering med PowerShell.
Förutsättningar
- Ett Azure-abonnemang. Skapa en kostnadsfritt.
- För den här uppgiften rekommenderas den senaste versionen av PowerShell 7 eftersom exemplen använder nya funktioner som inte är tillgängliga i Windows PowerShell 5.1.
- En Azure OpenAI-resurs som skapats i en region som stöds (se Regiontillgänglighet). Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Krav för Microsoft Entra-ID
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID måste du:
- Installera Azure CLI som används för nyckellös autentisering med Microsoft Entra-ID.
-
Cognitive Services UserTilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure-portalen under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Hämta resursinformation
Du måste hämta följande information för att autentisera ditt program med din Azure OpenAI-resurs:
| Variabelnamn | Värde |
|---|---|
AZURE_OPENAI_ENDPOINT |
Det här värdet finns i avsnittet Nycklar och slutpunkter när du undersöker din resurs från Azure-portalen. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Det här värdet motsvarar det anpassade namn som du valde för distributionen när du distribuerade en modell. Det här värdet finns underResurshanteringsmodelldistributioner> i Azure-portalen. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Generera avbildningar
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID loggar du in på Azure med följande kommando:
az loginSkapa en ny PowerShell-fil med namnet quickstart.ps1. Öppna den sedan i önskad redigerare eller IDE.
Ersätt innehållet i quickstart.ps1 med följande kod. Ange din slutpunkts-URL och nyckel i lämpliga fält. Ändra värdet på
prompttill önskad 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_pathViktigt!
För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter som PowerShell Secret Management med Azure Key Vault. Mer information om säkerhet för autentiseringsuppgifter finns i den här säkerhetsartikeln .
Kör skriptet med PowerShell:
./quickstart.ps1Skriptet loopar tills den genererade avbildningen är klar.
Utgång
PowerShell begär avbildningen från Azure OpenAI och lagrar utdatabilden i den generated_image.png filen i den angivna katalogen. För enkelhetens skull returneras den fullständiga sökvägen för filen i slutet av skriptet.
Bild-API:erna levereras med ett filter för innehållsmoderering. Om tjänsten känner igen din fråga som skadligt innehåll genereras ingen bild. Mer information finns i Innehållsfiltrering.
Rensa resurser
Om du vill rensa och ta bort en Azure OpenAI-resurs kan du ta bort resursen eller resursgruppen. Att ta bort resursgruppen innebär också att alla andra resurser som är kopplade till den tas bort.
Nästa steg
- Utforska bild-API:erna mer ingående med guide till bild-API:et.