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.
Kommentar
API:et för bildgenerering skapar en bild från en textprompt. Den redigerar eller skapar inte variationer från befintliga avbildningar.
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
- En prenumeration på Azure. 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.
Kommentar
API:erna för bildgenerering levereras med ett filter för moderering av innehåll. 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. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
Använd den här guiden för att komma igång med att anropa REST API:er för Azure OpenAI-tjänstens avbildningsgenerering med hjälp av Python.
Förutsättningar
- En Azure-prenumeration. 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
dalle3
modell med din Azure-resurs. Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Inställning
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 | Name | 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å
prompt
till önskad text.Du måste också ersätta
<dalle3>
i URL:en med det distributionsnamn som du valde när du distribuerade DALL-E 3-modellen. Om du anger modellnamnet uppstår ett fel om du inte väljer ett distributionsnamn som är identiskt med det underliggande modellnamnet. Om du stöter på ett fel kontrollerar du att du inte har en fördubbling av/
vid separationen mellan slutpunkten och/openai/deployments
.import requests import time import os api_base = os.environ['AZURE_OPENAI_ENDPOINT'] # Enter your endpoint here api_key = os.environ['AZURE_OPENAI_API_KEY'] # Enter your API key here api_version = '2024-02-01' url = f"{api_base}/openai/deployments/<dalle3>/images/generations?api-version={api_version}" headers= { "api-key": api_key, "Content-Type": "application/json" } body = { # Enter your prompt text here "prompt": "A multi-colored umbrella on the beach, disposable camera", "size": "1024x1024", # supported values are “1792x1024”, “1024x1024” and “1024x1792” "n": 1, #The number of images to generate. Only n=1 is supported for DALL-E 3. "quality": "hd", # Options are “hd” and “standard”; defaults to standard "style": "vivid" # Options are “natural” and “vivid”; defaults to “vivid” } submission = requests.post(url, headers=headers, json=body) image_url = submission.json()['data'][0]['url'] print(image_url)
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
python
kommandot :python quickstart.py
Vänta en stund för att få svaret.
Utdat
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>"
}
]
}
API:erna för bildgenerering kommer med ett innehållsmoderationsfilter. 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 DALL-E.
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. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
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
- En Azure-prenumeration. 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
dalle3
modell med din Azure-resurs. Mer information finns i Skapa en resurs och distribuera en modell med Azure OpenAI.
Uppställning
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 | Name | 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
prompt
till önskad text. - Ändra värdet på
model
till 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.
Utdata
Azure OpenAI lagrar utdatabilden i den generated_image.png filen i den angivna katalogen. Skriptet visar även bilden i standardvisningsprogrammet.
API:er för bildgenerering levereras med ett innehållsmoderationsfilter. Om tjänsten identifierar din förfrågan 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. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
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 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
vision-quickstart
och gå till snabbstartsmappen med följande kommando:mkdir vision-quickstart && cd vision-quickstart
Skapa ett nytt konsolprogram med följande kommando:
dotnet new console
Installera OpenAI .NET-klientbiblioteket med kommandot dotnet add package:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6
För den rekommenderade nyckellösa autentiseringen med Microsoft Entra-ID installerar du Azure.Identity-paketet med:
dotnet add package Azure.Identity
Fö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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
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.cs
med 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 run
kommandot eller körningsknappen överst i Visual Studio:dotnet run
Utdata
URL:en för den genererade avbildningen skrivs ut till konsolen.
<SAS URL>
Kommentar
API:erna för bildgenerering levereras med ett innehållsmoderationsfilter. 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 bildgenererings-API:erna mer ingående med vägledningen för DALL-E.
- 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
vision-quickstart
och gå till snabbstartsmappen med följande kommando:mkdir vision-quickstart && cd vision-quickstart
Installera Apache Maven. Kör
mvn -v
sedan för att bekräfta att installationen har slutförts.Skapa en ny
pom.xml
fil 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-dependencies
Fö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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
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
Utdata
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.
Anteckning
API:erna för bildgenerering levereras med ett innehållsmoderationsfilter. Om tjänsten identifierar din uppmaning som skadligt innehåll returnerar den inte en genererad bild. 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 bildgenererings-API:erna mer ingående med vägledningen för DALL-E.
- 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
image-quickstart
och gå till snabbstartsmappen med följande kommando:mkdir image-quickstart && cd image-quickstart
Skapa
package.json
med följande kommando:npm init -y
Installera OpenAI-klientbiblioteket för JavaScript med:
npm install openai
Fö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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Varning
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.js
Skapa 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 login
Kör JavaScript-filen.
node index.js
Output
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>
Kommentar
API:erna för bildgenerering levereras med ett innehållsmoderationsfilter. Om tjänsten känner igen din uppmaning som skadligt innehåll, kommer tjänsten inte att returnera en genererad bild. 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 bildgenererings-API:erna mer ingående med vägledningen för DALL-E.
- 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
image-quickstart
och gå till snabbstartsmappen med följande kommando:mkdir image-quickstart && cd image-quickstart
Skapa
package.json
med följande kommando:npm init -y
package.json
Uppdatera till ECMAScript med följande kommando:npm pkg set type=module
Installera OpenAI-klientbiblioteket för JavaScript med:
npm install openai
Fö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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
Läs mer om nyckellös autentisering och inställning av miljövariabler.
Varning
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.ts
Skapa 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.json
Skapa 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.
tsc
Logga in på Azure med följande kommando:
az login
Kör koden med följande kommando:
node index.js
Utdata
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>
Anteckning
API:erna för bildskapande levereras med ett innehållsmodereringsfilter. Om tjänsten identifierar din anmodan som skadligt innehåll kommer den inte att returnera en genererad bild. 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 bildgenererings-API:erna mer ingående med vägledningen för DALL-E.
- 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
- Go 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal under Åtkomstkontroll (IAM)>Lägg till rolltilldelning.
Ställ in
Skapa en ny mapp
dall-e-quickstart
och gå till snabbstartsmappen med följande kommando:mkdir dall-e-quickstart && cd dall-e-quickstart
Fö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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
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.go
Kör
go mod tidy
för att installera nödvändiga beroenden:go mod tidy
Kör följande kommando för att köra exemplet:
go run quickstart.go
Utsignal
URL:en för den genererade avbildningen skrivs ut till konsolen.
Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>
Kommentar
API:erna för bildgenerering levereras med ett innehållsmoderationsfilter. Om tjänsten känner igen din fråga som skadligt innehåll returnerar den inte en genererad bild. 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. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
- Utforska bildgenererings-API:erna mer ingående med vägledningen för DALL-E.
- 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 Service-avbildningsgenerering med PowerShell.
Förutsättningar
- En Azure-prenumeration. 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 User
Tilldela rollen till ditt användarkonto. Du kan tilldela roller i Azure Portal 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 Portal. |
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 under Resurshanteringsmodelldistributioner> i Azure Portal. |
OPENAI_API_VERSION |
Läs mer om API-versioner. Du kan ändra versionen i koden eller använda en miljövariabel. |
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 login
Skapa 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å
prompt
till din önskade 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
Viktigt!
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 artikeln om Säkerhet för Azure AI-tjänster.
Kör skriptet med PowerShell:
./quickstart.ps1
Skriptet loopar tills den genererade avbildningen är klar.
Output
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.
API:erna för bildgenerering levereras med ett innehållsmoderering-filter. Om tjänsten identifierar 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. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.