Quickstart: Installatiekopieën genereren met Azure OpenAI Service
Notitie
Met de API voor het genereren van afbeeldingen wordt een afbeelding gemaakt op basis van een tekstprompt. Er worden geen variaties van bestaande installatiekopieën bewerkt of gemaakt.
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met Azure OpenAI in uw browser.
Vereisten
- Een Azure-abonnement. Maak gratis een account.
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio. Zie beschikbaarheid van regio's.
- Vervolgens moet u een
dalle3
model implementeren met uw Azure-resource. Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Ga naar Azure OpenAI Studio
Blader naar Azure OpenAI Studio en meld u aan met de referenties die zijn gekoppeld aan uw Azure OpenAI-resource. Selecteer tijdens of na de aanmeldingswerkstroom de juiste map, het Azure-abonnement en de Azure OpenAI-resource.
Selecteer op de landingspagina van Azure OpenAI Studio de optie Images Playground om de API's voor het genereren van afbeeldingen te gebruiken. Selecteer Instellingen boven aan de pagina en controleer of in de vervolgkeuzelijst Implementatie uw DALL-E 3-implementatie is geselecteerd.
Het genereren van installatiekopieën uitproberen
Begin met het verkennen van de mogelijkheden van Azure OpenAI met een no-code-benadering via de afbeeldingen-speeltuin. Voer uw afbeeldingsprompt in het tekstvak in en selecteer Genereren. Wanneer de door AI gegenereerde afbeelding gereed is, wordt deze weergegeven op de pagina.
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als Azure OpenAI uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde installatiekopieën geretourneerd. Zie Inhoudsfiltering voor meer informatie.
In de speeltuin Afbeeldingen kunt u ook Python- en cURL-codevoorbeelden bekijken, die vooraf zijn ingevuld volgens uw instellingen. Selecteer Code weergeven boven aan de pagina. U kunt deze code gebruiken om een toepassing te schrijven die dezelfde taak voltooit.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Probeer voorbeelden in de GitHub-opslagplaats azure OpenAI-voorbeelden.
- Zie de API-verwijzing
Gebruik deze handleiding om aan de slag te gaan met het aanroepen van de REST API's van de Azure OpenAI Service-installatiekopieën met behulp van Python.
Vereisten
- Een Azure-abonnement. Maak gratis een account.
- Python 3.8 of nieuwere versie.
- De volgende Python-bibliotheken zijn geïnstalleerd:
os
,requests
,json
. - Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio. Zie beschikbaarheid van regio's.
- Vervolgens moet u een
dalle3
model implementeren met uw Azure-resource. Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u de Azure OpenAI-API's wilt aanroepen, hebt u de volgende informatie nodig over uw Azure OpenAI-resource:
Variabel | Naam | Weergegeven als |
---|---|---|
Eindpunt | api_base |
De eindpuntwaarde bevindt zich onder Sleutels en Eindpunt voor uw resource in Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
Code | api_key |
De sleutelwaarde bevindt zich ook onder Sleutels en Eindpunt voor uw resource in Azure Portal. Azure genereert twee sleutels voor uw resource. U kunt beide waarden gebruiken. |
Ga naar uw resource in Azure Portal. Selecteer sleutels en eindpunt in het navigatiedeelvenster onder Resourcebeheer. Kopieer de eindpuntwaarde en een toegangssleutelwaarde. U kunt de waarde KEY 1 of KEY 2 gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een nieuwe Python-toepassing maken
Maak een nieuw Python-bestand met de naam quickstart.py. Open het nieuwe bestand in de gewenste editor of IDE.
Vervang de inhoud van quickstart.py door de volgende code. Wijzig de waarde van
prompt
de gewenste tekst.U moet ook in de URL vervangen door
<dalle3>
de implementatienaam die u hebt gekozen bij het implementeren van het DALL-E 3-model. Als u de modelnaam invoert, treedt er een fout op, tenzij u een implementatienaam hebt gekozen die identiek is aan de naam van het onderliggende model. Als er een fout optreedt, controleert u of u geen verdubbeling van de/
scheiding tussen uw eindpunt en/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)
Het script maakt een api-aanroep voor het genereren van synchrone installatiekopieën.
Belangrijk
Vergeet niet om de sleutel uit uw code te verwijderen wanneer u klaar bent en plaats uw sleutel nooit openbaar. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. Zie Azure Key Vault voor meer informatie.
De toepassing uitvoeren met de opdracht
python
:python quickstart.py
Wacht even om het antwoord te krijgen.
Uitvoer
De uitvoer van een geslaagde API-aanroep voor het genereren van afbeeldingen ziet eruit als in het volgende voorbeeld. Het url
veld bevat een URL waar u de gegenereerde afbeelding kunt downloaden. De URL blijft 24 uur actief.
{
"created": 1698116662,
"data": [
{
"url": "<URL_to_generated_image>",
"revised_prompt": "<prompt_that_was_used>"
}
]
}
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen afbeelding gegenereerd. Zie Inhoudsfiltering voor meer informatie. Zie de handleiding DALL-E voor voorbeelden van foutreacties.
Het systeem retourneert een bewerkingsstatus van Failed
en de error.code
waarde in het bericht is ingesteld op contentFilter
. Hier volgt een voorbeeld:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Het is ook mogelijk dat de gegenereerde installatiekopieën zelf worden gefilterd. In dit geval is het foutbericht ingesteld op Generated image was filtered as a result of our safety system.
. Hier volgt een voorbeeld:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Probeer voorbeelden in de GitHub-opslagplaats azure OpenAI-voorbeelden.
- Zie de API-verwijzing
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor Python.
Broncode van de bibliotheek | Pakket | Voorbeelden
Vereisten
- Een Azure-abonnement. Maak gratis een account.
- Python 3.8 of nieuwere versie.
- Een Azure OpenAI-resource die is gemaakt in een compatibele regio. Zie beschikbaarheid van regio's.
- Vervolgens moet u een
dalle3
model implementeren met uw Azure-resource. Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u de Azure OpenAI-API's wilt aanroepen, hebt u de volgende informatie nodig over uw Azure OpenAI-resource:
Variabel | Naam | Weergegeven als |
---|---|---|
Eindpunt | api_base |
De eindpuntwaarde bevindt zich onder Sleutels en Eindpunt voor uw resource in Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
Code | api_key |
De sleutelwaarde bevindt zich ook onder Sleutels en Eindpunt voor uw resource in Azure Portal. Azure genereert twee sleutels voor uw resource. U kunt beide waarden gebruiken. |
Ga naar uw resource in Azure Portal. Selecteer sleutels en eindpunt in het navigatiedeelvenster onder Resourcebeheer. Kopieer de eindpuntwaarde en een toegangssleutelwaarde. U kunt de waarde KEY 1 of KEY 2 gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
De Python SDK installeren
Open een opdrachtprompt en blader naar de projectmap. Installeer de OpenAI Python SDK met behulp van de volgende opdracht:
pip install openai
Installeer ook de volgende bibliotheken:
pip install requests
pip install pillow
Afbeeldingen genereren met DALL-E
Maak een nieuw Python-bestand quickstart.py. Open deze in uw favoriete editor of IDE.
Vervang de inhoud van quickstart.py door de volgende 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()
- Voer uw eindpunt-URL en -sleutel in de juiste velden in.
- Wijzig de waarde van
prompt
de gewenste tekst. - Wijzig de waarde van
model
het geïmplementeerde DALL-E 3-model in de naam van het geïmplementeerde DALL-E 3-model.
Belangrijk
Vergeet niet om de sleutel uit uw code te verwijderen wanneer u klaar bent en plaats uw sleutel nooit openbaar. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. Zie Azure Key Vault voor meer informatie.
De toepassing uitvoeren met de opdracht python
:
python quickstart.py
Wacht even om het antwoord te krijgen.
Uitvoer
Azure OpenAI slaat de uitvoerafbeelding op in het generated_image.png-bestand in de opgegeven map. In het script wordt ook de afbeelding weergegeven in de standaardafbeeldingsviewer.
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen afbeelding gegenereerd. Zie Inhoudsfiltering voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Probeer voorbeelden in de GitHub-opslagplaats azure OpenAI-voorbeelden.
- Zie de API-verwijzing
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor C#.
Voorbeelden van broncodepakket | voor bibliotheken (NuGet) |
Vereisten
- Een Azure-abonnement - Een gratis abonnement maken
- De .NET 7 SDK
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een nieuwe .NET Core-app maken
Gebruik in een consolevenster (zoals cmd, PowerShell of Bash) de opdracht dotnet new
om een nieuwe console-app te maken met de naam azure-openai-quickstart
. Met deze opdracht maakt u een eenvoudig 'Hallo wereld'-project met één C#-bronbestand: Program.cs.
dotnet new console -n azure-openai-quickstart
Wijzig uw map in de zojuist gemaakte app-map. U kunt de toepassing maken met:
dotnet build
De build-uitvoer mag geen waarschuwingen of fouten bevatten.
...
Build succeeded.
0 Warning(s)
0 Error(s)
...
De OpenAI .NET SDK installeren
Installeer de clientbibliotheek met:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6
Afbeeldingen genereren met DALL-E
Open het program.cs-bestand in de projectmap en vervang de inhoud door de volgende code:
using Azure;
using Azure.AI.OpenAI;
using OpenAI.Images;
using static System.Environment;
string endpoint = GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string key = GetEnvironmentVariable("AZURE_OPENAI_API_KEY");
AzureOpenAIClient azureClient = new(
new Uri(endpoint),
new AzureKeyCredential(key));
// This must match the custom deployment name you chose for your model
ImageClient chatClient = azureClient.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);
Bouw en voer de toepassing uit vanuit uw toepassingsmap met de volgende opdrachten:
dotnet build
dotnet run
Uitvoer
De URL van de gegenereerde afbeelding wordt afgedrukt naar de console.
https://dalleproduse.blob.core.windows.net/private/images/b7ac5e55-f1f8-497a-8d0e-8f51446bf538/generated_00.png?se=2024-07-12T13%3A47%3A56Z&sig=Zri37iYVTVtc52qzTFBOqPgSHvXwEhcO86Smv2ojB%2FE%3D&ske=2024-07-17T12%3A15%3A44Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2024-07-10T12%3A15%3A44Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde afbeelding geretourneerd. Zie het artikel over het inhoudsfilter voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Bekijk de GitHub-opslagplaats azure OpenAI-voorbeelden voor meer voorbeelden.
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor Java.
Voorbeelden van broncodeartefact (Maven) | van bibliotheek |
Vereisten
- Een Azure-abonnement - Een gratis abonnement maken
- De huidige versie van de Java Development Kit (JDK)
- Het hulpprogramma Gradle of een andere afhankelijkheidsbeheerder.
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een nieuwe Java-toepassing maken
Maak een nieuw Gradle-project.
Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.
mkdir myapp && cd myapp
Voer de opdracht gradle init
uit vanuit uw werkmap. Met deze opdracht maakt u essentiële buildbestanden voor Gradle, inclusief build.gradle.kts, dat tijdens runtime wordt gebruikt om de toepassing te maken en te configureren.
gradle init --type basic
Wanneer u wordt gevraagd om een DSL te kiezen, selecteert u Kotlin.
De Java SDK installeren
Deze quickstart maakt gebruik van de Gradle-afhankelijkheidsmanager. U vindt de clientbibliotheek en informatie voor andere afhankelijkheidsbeheerders in de Maven Central Repository.
Zoek build.gradle.kts en open het met uw favoriete IDE of teksteditor. Kopieer het vervolgens in de volgende buildconfiguratie. Deze configuratie definieert het project als een Java-toepassing waarvan het toegangspunt de klasse OpenAIQuickstart is. De Azure AI Vision-bibliotheek wordt geïmporteerd.
plugins {
java
application
}
application {
mainClass.set("OpenAIQuickstart")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-openai", version = "1.0.0-beta.3")
implementation("org.slf4j:slf4j-simple:1.7.9")
}
Afbeeldingen genereren met DALL-E
Maak een Java-bestand.
Voer de volgende opdracht uit vanuit uw werkmap om een projectbronmap te maken:
mkdir -p src/main/java
Navigeer naar de nieuwe map en maak een bestand met de naam OpenAIQuickstart.java.
Open OpenAIQuickstart.java in de gewenste editor of IDE en plak de volgende code.
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; /** * Sample demonstrates how to get the images for a given prompt. */ public class OpenAIQuickstart { /** * Runs the sample algorithm and demonstrates how to get the images for a given prompt. * * @param args Unused. Arguments to the program. */ public static void main(String[] args) throws InterruptedException { // Get key and endpoint from environment variables: String azureOpenaiKey = System.getenv("AZURE_OPENAI_API_KEY"); String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT"); OpenAIAsyncClient client = new OpenAIClientBuilder() .endpoint(endpoint) .credential(new AzureKeyCredential(azureOpenaiKey)) .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 is not a blocking call. For the purpose of this example, we sleep // the thread so the program does not end before the send operation is complete. Using .block() instead of // .subscribe() will turn this into a synchronous call. TimeUnit.SECONDS.sleep(10); } }
Ga terug naar de hoofdmap van het project en bouw de app met:
gradle build
Voer het vervolgens uit met de
gradle run
opdracht:gradle run
Uitvoer
De URL van de gegenereerde afbeelding wordt afgedrukt naar de console.
Image location URL that provides temporary access to download the generated image is https://dalleproduse.blob.core.windows.net/private/images/d2ea917f-8802-4ad6-8ef6-3fb7a15c8482/generated_00.png?se=2023-08-25T23%3A11%3A28Z&sig=%2BKa5Mkb9U88DfvxoBpyAjamYRzwb7aVCEucM6XJC3wQ%3D&ske=2023-08-31T15%3A27%3A47Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-24T15%3A27%3A47Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02.
Completed getImages.
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde afbeelding geretourneerd. Zie het artikel over het inhoudsfilter voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Bekijk de GitHub-opslagplaats met Azure OpenAI-voorbeelden voor meer voorbeelden
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor JavaScript.
Voorbeelden van broncodepakket (npm) | referentiedocumentatie | |
Vereisten
- Een Azure-abonnement - Een gratis abonnement maken
- LTS-versies van Node.js
- Azure CLI die wordt gebruikt voor verificatie zonder wachtwoord in een lokale ontwikkelomgeving, maakt de benodigde context door u aan te melden met de Azure CLI.
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een Node-toepassing maken
Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map. Voer vervolgens de npm init
opdracht uit om een knooppunttoepassing te maken met een package.json-bestand .
npm init
De clientbibliotheek installeren
Installeer de clientbibliotheken met:
npm install openai @azure/identity
Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.
Afbeeldingen genereren met DALL-E
Maak een nieuw bestand met de naam ImageGeneration.js en open het in de code-editor van uw voorkeur. Kopieer de volgende code naar het ImageGeneration.js-bestand :
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"];
// Required Azure OpenAI deployment name and API version
const apiVersion = "2024-07-01";
const deploymentName = "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);
});
Voer het script uit met de volgende opdracht:
node ImageGeneration.js
Uitvoer
De URL van de gegenereerde afbeelding wordt afgedrukt naar de console.
== Batch Image Generation ==
Image generation result URL: https://dalleproduse.blob.core.windows.net/private/images/5e7536a9-a0b5-4260-8769-2d54106f2913/generated_00.png?se=2023-08-29T19%3A12%3A57Z&sig=655GkWajOZ9ALjFykZF%2FBMZRPQALRhf4UPDImWCQoGI%3D&ske=2023-09-02T18%3A53%3A23Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-26T18%3A53%3A23Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Image generation result URL: https://dalleproduse.blob.core.windows.net/private/images/5e7536a9-a0b5-4260-8769-2d54106f2913/generated_01.png?se=2023-08-29T19%3A12%3A57Z&sig=B24ymPLSZ3HfG23uojOD9VlRFGxjvgcNmvFo4yPUbEc%3D&ske=2023-09-02T18%3A53%3A23Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-26T18%3A53%3A23Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde afbeelding geretourneerd. Zie het artikel over het inhoudsfilter voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Bekijk de GitHub-opslagplaats azure OpenAI-voorbeelden voor meer voorbeelden.
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor JavaScript.
Voorbeelden van broncodepakket (npm) | referentiedocumentatie | |
Vereisten
- Een Azure-abonnement - Een gratis abonnement maken
- LTS-versies van Node.js
- TypeScript
- Azure CLI die wordt gebruikt voor verificatie zonder wachtwoord in een lokale ontwikkelomgeving, maakt de benodigde context door u aan te melden met de Azure CLI.
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een Node-toepassing maken
Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map. Voer vervolgens de npm init
opdracht uit om een knooppunttoepassing te maken met een package.json-bestand .
npm init
De clientbibliotheek installeren
Installeer de clientbibliotheken met:
npm install openai @azure/identity
Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.
Afbeeldingen genereren met DALL-E
Maak een nieuw bestand met de naam ImageGeneration.ts en open het in de code-editor van uw voorkeur. Kopieer de volgende code naar het ImageGeneration.ts-bestand :
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"];
// Required Azure OpenAI deployment name and API version
const apiVersion = "2024-07-01";
const deploymentName = "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);
});
Bouw de toepassing met de volgende opdracht:
tsc
Voer de toepassing uit met de volgende opdracht:
node ImageGeneration.js
Uitvoer
De URL van de gegenereerde afbeelding wordt afgedrukt naar de console.
== Batch Image Generation ==
Image generation result URL: https://dalleproduse.blob.core.windows.net/private/images/5e7536a9-a0b5-4260-8769-2d54106f2913/generated_00.png?se=2023-08-29T19%3A12%3A57Z&sig=655GkWajOZ9ALjFykZF%2FBMZRPQALRhf4UPDImWCQoGI%3D&ske=2023-09-02T18%3A53%3A23Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-26T18%3A53%3A23Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Image generation result URL: https://dalleproduse.blob.core.windows.net/private/images/5e7536a9-a0b5-4260-8769-2d54106f2913/generated_01.png?se=2023-08-29T19%3A12%3A57Z&sig=B24ymPLSZ3HfG23uojOD9VlRFGxjvgcNmvFo4yPUbEc%3D&ske=2023-09-02T18%3A53%3A23Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-26T18%3A53%3A23Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde afbeelding geretourneerd. Zie het artikel over het inhoudsfilter voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Bekijk de GitHub-opslagplaats azure OpenAI-voorbeelden voor meer voorbeelden.
Gebruik deze handleiding om aan de slag te gaan met het genereren van installatiekopieën met de Azure OpenAI SDK voor Go.
Broncode van de bibliotheek | Pakket | Voorbeelden
Vereisten
- Een Azure-abonnement - Een gratis abonnement maken
- Go 1.8+
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Een nieuwe Go-toepassing maken
Open de opdrachtprompt en navigeer naar de projectmap. Maak een nieuw bestand sample.go.
De Go SDK installeren
Installeer de OpenAI Go SDK met behulp van de volgende opdracht:
go get github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai@latest
Of, als u gebruikt dep
, binnen uw opslagplaats:
dep ensure -add github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai
Afbeeldingen genereren met DALL-E
Open sample.go in de code-editor van uw voorkeur.
Voeg de volgende code toe aan uw script:
package main
import (
"context"
"fmt"
"net/http"
"os"
"github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai"
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
)
func main() {
azureOpenAIKey := os.Getenv("AZURE_OPENAI_API_KEY")
// Ex: "https://<your-azure-openai-host>.openai.azure.com"
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
if azureOpenAIKey == "" || azureOpenAIEndpoint == "" {
fmt.Fprintf(os.Stderr, "Skipping example, environment variables missing\n")
return
}
keyCredential := azcore.NewKeyCredential(azureOpenAIKey)
client, err := azopenai.NewClientWithKeyCredential(azureOpenAIEndpoint, keyCredential, nil)
if err != nil {
// handle error
}
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),
}, nil)
if err != nil {
// handle error
}
for _, generatedImage := range resp.Data {
// the underlying type for the generatedImage is dictated by the value of
// ImageGenerationOptions.ResponseFormat. In this example we used `azopenai.ImageGenerationResponseFormatURL`,
// so the underlying type will be ImageLocation.
resp, err := http.Head(*generatedImage.URL)
if err != nil {
// handle error
}
fmt.Fprintf(os.Stderr, "Image generated, HEAD request on URL returned %d\nImage URL: %s\n", resp.StatusCode, *generatedImage.URL)
}
}
Voer het script uit met behulp van de go run
opdracht:
go run sample.go
Uitvoer
De URL van de gegenereerde afbeelding wordt afgedrukt naar de console.
Image generated, HEAD request on URL returned 200
Image URL: https://dalleproduse.blob.core.windows.net/private/images/d7b28a5c-ca32-4792-8c2a-6a5d8d8e5e45/generated_00.png?se=2023-08-29T17%3A05%3A37Z&sig=loqntaPypYVr9VTT5vpbsjsCz31g1GsdoQi0smbGkks%3D&ske=2023-09-02T18%3A53%3A23Z&skoid=09ba021e-c417-441c-b203-c81e5dcd7b7f&sks=b&skt=2023-08-26T18%3A53%3A23Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
Notitie
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen gegenereerde afbeelding geretourneerd. Zie het artikel over het inhoudsfilter voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Bekijk de GitHub-opslagplaats azure OpenAI-voorbeelden voor meer voorbeelden.
Gebruik deze handleiding om aan de slag te gaan met het aanroepen van de API's voor het genereren van installatiekopieën van de Azure OpenAI-service met PowerShell.
Notitie
Met de API voor het genereren van afbeeldingen wordt een afbeelding gemaakt op basis van een tekstprompt. Er worden geen variaties van bestaande installatiekopieën bewerkt of gemaakt.
Vereisten
- Een Azure-abonnement. Maak gratis een account.
- Voor deze taak wordt de nieuwste versie van PowerShell 7 aanbevolen omdat in de voorbeelden nieuwe functies worden gebruikt die niet beschikbaar zijn in Windows PowerShell 5.1.
- Een Azure OpenAI-resource die is gemaakt in een ondersteunde regio (zie beschikbaarheid van regio's). Zie Een resource maken en een model implementeren met Azure OpenAI voor meer informatie.
Instellingen
Sleutel en eindpunt ophalen
Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.
Naam van de variabele | Weergegeven als |
---|---|
ENDPOINT |
Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken. |
Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1
of KEY2
gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.
Omgevingsvariabelen
Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Afbeeldingen genereren met DALL-E 2
Maak een nieuw PowerShell-bestand met de naam quickstart.ps1. Open het nieuwe bestand in de gewenste editor of IDE.
Vervang de inhoud van quickstart.ps1 door de volgende code. Voer uw eindpunt-URL en -sleutel in de juiste velden in. Wijzig de waarde van
prompt
de gewenste tekst.# Azure OpenAI metadata variables $openai = @{ api_key = $Env:AZURE_OPENAI_API_KEY api_base = $Env:AZURE_OPENAI_ENDPOINT # your endpoint should look like the following https://YOUR_RESOURCE_NAME.openai.azure.com/ api_version = '2023-06-01-preview' # this may change in the future } # Text to describe image $prompt = 'A painting of a dog' # Header for authentication $headers = [ordered]@{ 'api-key' = $openai.api_key } # 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
Belangrijk
Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Het PowerShell-geheimbeheer met Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.
Voer het script uit met behulp van PowerShell:
./quickstart.ps1
Het script wordt herhaald totdat de gegenereerde installatiekopieën gereed zijn.
Uitvoer
PowerShell vraagt de installatiekopieën van Azure OpenAI aan en slaat de uitvoerafbeelding op in het generated_image.png-bestand in de opgegeven map. Voor het gemak wordt het volledige pad voor het bestand geretourneerd aan het einde van het script.
De API's voor het genereren van afbeeldingen worden geleverd met een con tentmodus rationfilter. Als de service uw prompt herkent als schadelijke inhoud, wordt er geen afbeelding gegenereerd. Zie Inhoudsfiltering voor meer informatie.
Resources opschonen
Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Volgende stappen
- Verken de API's voor het genereren van afbeeldingen in meer detail met de handleiding DALL-E.
- Probeer voorbeelden in de GitHub-opslagplaats azure OpenAI-voorbeelden.