Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pomocí tohoto průvodce můžete začít volat REST API pro generování obrazů v modelech Microsoft Foundry Azure OpenAI pomocí Pythonu.
Požadavky
- Předplatné služby Azure. Vytvořte si ho zdarma.
- Python 3.8 nebo novější verze
- Nainstalovaly se následující knihovny Pythonu:
os,requests,json. - Prostředek Azure OpenAI vytvořený v podporované oblasti Viz Dostupnost oblastí.
- Pak musíte nasadit
gpt-image-1-series nebo modeldalle3s prostředkem Azure. Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Nastavení
Načti klíč a koncový bod
K úspěšnému volání rozhraní API Azure OpenAI potřebujete následující informace o prostředku Azure OpenAI:
| Proměnná | Název | Hodnota |
|---|---|---|
| Koncový bod | api_base |
Hodnota koncového bodu se nachází v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Koncový bod najdete také na stránce Nasazení na portálu Foundry. Ukázkový koncový bod je: https://docs-test-001.openai.azure.com/. |
| Klíč | api_key |
Hodnota klíče se nachází také v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Azure vygeneruje dva klíče pro váš prostředek. Můžete použít kteroukoli hodnotu. |
V portálu Azure přejděte ke svému prostředku. V navigačním podokně vyberte Klíče a koncový bod v části Správa prostředků. Zkopírujte hodnotu koncového bodu a hodnotu přístupového klíče. Můžete použít buď hodnotu klíč 1 nebo klíč 2. Vždy mít dva klíče vám umožní bezpečně otáčet a znovu vygenerovat klíče, aniž by to způsobilo přerušení služeb.
Proměnné prostředí
Vytvořte a přiřaďte trvalé systémové proměnné pro váš klíč a koncový bod.
Důležité
Doporučujeme ověřování Microsoft Entra ID se spravovanými identitami pro prostředky Azure, abyste se vyhnuli ukládání přihlašovacích údajů s aplikacemi, které běží v cloudu.
Používejte klíče rozhraní API s opatrností. Nezahrnujte klíč API přímo do svého kódu a nikdy ho nezveřejňujte veřejně. Pokud používáte klíče rozhraní API, bezpečně je uložte ve službě Azure Key Vault, pravidelně je obměňujte a omezte přístup ke službě Azure Key Vault pomocí řízení přístupu na základě rolí a omezení přístupu k síti. Další informace o bezpečném používání klíčů ROZHRANÍ API ve vašich aplikacích najdete v tématu Klíče rozhraní API se službou Azure Key Vault.
Další informace o zabezpečení služeb AI najdete v tématu Ověřování požadavků na služby Azure AI.
- Příkazový řádek
- PowerShell
- Bash
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Vytvoření nové aplikace v Pythonu
Vytvořte nový soubor Pythonu s názvem quickstart.py. V preferovaném editoru nebo integrovaném vývojovém prostředí (IDE) otevřete nový soubor.
Obsah quickstart.py nahraďte následujícím kódem. Změňte hodnotu
promptna upřednostňovaný text. Také nastavtedeploymentna název nasazení, který jste zvolili při nasazení modelu GPT-image-1.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")Skript vytvoří synchronní volání rozhraní API pro generování obrázků.
Důležité
Nezapomeňte klíč odebrat z kódu, až budete hotovi, a nikdy ho veřejně neposílejte. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. Další informace najdete v tématu Azure Key Vault.
Spusťte aplikaci pomocí
pythonpříkazu:python quickstart.pyPočkejte chvíli, než se odpověď zobrazí.
Výstup
Výstup z úspěšného volání rozhraní API pro generování imagí vypadá jako v následujícím příkladu. Pole url obsahuje adresu URL, kde si můžete stáhnout vygenerovaný obrázek. Adresa URL zůstane aktivní po dobu 24 hodin.
{
"created": 1698116662,
"data": [
{
"url": "<URL_to_generated_image>",
"revised_prompt": "<prompt_that_was_used>"
}
]
}
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevygeneruje obrázek. Další informace najdete v tématu Filtrování obsahu. Příklady chybových odpovědí najdete v průvodci generováním obrázků.
Systém vrátí stav Failed operace a error.code hodnota ve zprávě je nastavena na contentFilter. Tady je příklad:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Je také možné, že se vygenerovaná image filtruje. V tomto případě je chybová zpráva nastavena na Generated image was filtered as a result of our safety system.. Tady je příklad:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Smazání skupiny prostředků také smaže všechny ostatní prostředky s ní spojené.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Vyzkoušejte příklady v úložišti GitHub ukázek Azure OpenAI.
- Viz referenční informace k rozhraní API
Tento průvodce vám pomůže začít generovat image pomocí sady Azure OpenAI SDK pro Python.
kód knihovny | balíček | ukázky
Požadavky
- Předplatné služby Azure. Vytvořte si ho zdarma.
- Python 3.8 nebo novější verze
- Prostředek Azure OpenAI vytvořený v kompatibilní oblasti Viz Dostupnost oblastí.
- Pak potřebujete nasadit model s prostředkem
dalle3Azure. Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Nastavení
Načti klíč a koncový bod
K úspěšnému volání rozhraní API Azure OpenAI potřebujete následující informace o prostředku Azure OpenAI:
| Proměnná | Název | Hodnota |
|---|---|---|
| Koncový bod | api_base |
Hodnota koncového bodu se nachází v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Koncový bod najdete také na stránce Nasazení na portálu Microsoft Foundry. Ukázkový koncový bod je: https://docs-test-001.openai.azure.com/. |
| Klíč | api_key |
Hodnota klíče se nachází také v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Azure vygeneruje dva klíče pro váš prostředek. Můžete použít kteroukoli hodnotu. |
V portálu Azure přejděte ke svému prostředku. V navigačním podokně vyberte Klíče a koncový bod v části Správa prostředků. Zkopírujte hodnotu koncového bodu a hodnotu přístupového klíče. Můžete použít buď hodnotu klíč 1 nebo klíč 2. Vždy mít dva klíče vám umožní bezpečně otáčet a znovu vygenerovat klíče, aniž by to způsobilo přerušení služeb.
Proměnné prostředí
Vytvořte a přiřaďte trvalé systémové proměnné pro váš klíč a koncový bod.
Důležité
Doporučujeme ověřování Microsoft Entra ID se spravovanými identitami pro prostředky Azure, abyste se vyhnuli ukládání přihlašovacích údajů s aplikacemi, které běží v cloudu.
Používejte klíče rozhraní API s opatrností. Nezahrnujte klíč API přímo do svého kódu a nikdy ho nezveřejňujte veřejně. Pokud používáte klíče rozhraní API, bezpečně je uložte ve službě Azure Key Vault, pravidelně je obměňujte a omezte přístup ke službě Azure Key Vault pomocí řízení přístupu na základě rolí a omezení přístupu k síti. Další informace o bezpečném používání klíčů ROZHRANÍ API ve vašich aplikacích najdete v tématu Klíče rozhraní API se službou Azure Key Vault.
Další informace o zabezpečení služeb AI najdete v tématu Ověřování požadavků na služby Azure AI.
- Příkazový řádek
- PowerShell
- Bash
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Instalace sady Python SDK
Otevřete příkazový řádek a přejděte do složky projektu. Pomocí následujícího příkazu nainstalujte sadu OpenAI Python SDK:
pip install openai
Nainstalujte také následující knihovny:
pip install requests
pip install pillow
Generování imagí pomocí DALL-E
Vytvořte nový soubor Pythonu quickstart.py. Otevřete ho v preferovaném editoru nebo integrovaném vývojovém prostředí (IDE).
Obsah quickstart.py nahraďte následujícím kódem.
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()
- Do příslušných polí zadejte adresu URL a klíč koncového bodu.
- Změňte hodnotu
promptna upřednostňovaný text. - Změňte hodnotu
modelna název nasazeného modelu DALL-E 3.
Důležité
Nezapomeňte klíč odebrat z kódu, až budete hotovi, a nikdy ho veřejně neposílejte. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. Další informace najdete v tématu Azure Key Vault.
Spusťte aplikaci pomocí python příkazu:
python quickstart.py
Počkejte chvíli, než se odpověď zobrazí.
Výstup
Azure OpenAI ukládá výstupní image do souboru generated_image.png ve vašem zadaném adresáři. Skript také zobrazí obrázek ve výchozím prohlížeči obrázků.
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevygeneruje obrázek. Další informace najdete v tématu Filtrování obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Smazání skupiny prostředků také smaže všechny ostatní prostředky s ní spojené.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Vyzkoušejte příklady v úložišti GitHub ukázek Azure OpenAI.
- Viz referenční informace k rozhraní API
V tomto průvodci můžete začít generovat image pomocí sady Azure OpenAI SDK pro jazyk C#.
Ukázky balíčku zdrojového kódu | knihovny (NuGet) |
Požadavky
- Předplatné Azure – Vytvoření předplatného zdarma
- .NET 7 SDK
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Nastavení
Vytvořte novou složku
vision-quickstarta přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:mkdir vision-quickstart && cd vision-quickstartVytvořte novou konzolovou aplikaci pomocí následujícího příkazu:
dotnet new consoleNainstalujte klientskou knihovnu OpenAI .NET pomocí příkazu dotnet add package:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6Pro doporučené ověřování bez klíčů s ID Microsoft Entra nainstalujte balíček Azure.Identity pomocí:
dotnet add package Azure.IdentityPro doporučené ověřování bez klíčů pomocí ID Microsoft Entra se přihlaste k Azure pomocí následujícího příkazu:
az login
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Spustit rychlý start
Ukázkový kód v tomto rychlém průvodci používá doporučené bezklíčové ověřování Microsoft Entra ID. Pokud dáváte přednost použití klíče rozhraní API, můžete objekt nahradit DefaultAzureCredential objektem AzureKeyCredential .
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Pokud chcete spustit rychlý start, postupujte takto:
Nahraďte obsah
Program.csnásledujícím kódem a aktualizujte zástupné hodnoty vlastními.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);Spusťte aplikaci pomocí
dotnet runpříkazu nebo tlačítka Spustit v horní části sady Visual Studio:dotnet run
Výstup
Adresa URL vygenerovaného obrázku se vytiskne do konzoly.
<SAS URL>
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v článku filtru obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete prostředek odstranit. Před odstraněním prostředku musíte nejprve odstranit všechny nasazené modely.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Další příklady najdete v úložišti GitHub ukázek Azure OpenAI.
V tomto průvodci můžete začít generovat image pomocí sady Azure OpenAI SDK pro Javu.
Ukázky artefaktu zdrojového kódu | knihovny (Maven) |
Požadavky
- Předplatné Azure – Vytvoření předplatného zdarma
- Aktuální verze sady Java Development Kit (JDK)
- Nainstalujte Apache Maven.
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Nastavení
Vytvořte novou složku
vision-quickstarta přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:mkdir vision-quickstart && cd vision-quickstartNainstalujte Apache Maven. Pak spusťte a potvrďte
mvn -vúspěšnou instalaci.V kořenovém adresáři projektu vytvořte nový
pom.xmlsoubor a zkopírujte do něj následující kód:<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>Nainstalujte Azure OpenAI SDK a jeho závislosti.
mvn clean dependency:copy-dependenciesPro doporučené ověřování bez klíčů pomocí ID Microsoft Entra se přihlaste k Azure pomocí následujícího příkazu:
az login
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Spuštění aplikace
Ukázkový kód v tomto rychlém průvodci používá doporučené bezklíčové ověřování Microsoft Entra ID. Pokud dáváte přednost použití klíče rozhraní API, můžete objekt nahradit DefaultAzureCredential objektem AzureKeyCredential .
OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint(endpoint)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Pokud chcete vytvořit konzolovou aplikaci pro rozpoznávání řeči, postupujte podle těchto kroků.
Ve stejném kořenovém adresáři projektu vytvořte nový soubor s názvem Quickstart.java.
Zkopírujte následující kód do 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); } }Spuštěním nové konzolové aplikace vygenerujte image:
javac Quickstart.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" Quickstart
Výstup
Adresa URL vygenerovaného obrázku se vytiskne do konzoly.
Image location URL that provides temporary access to download the generated image is <SAS URL>.
Completed getImages.
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v článku filtru obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete prostředek odstranit. Před odstraněním prostředku musíte nejprve odstranit všechny nasazené modely.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Další příklady najdete v úložišti GitHub s ukázkami Azure OpenAI.
Pomocí této příručky můžete začít generovat image pomocí sady Azure OpenAI SDK pro JavaScript.
Požadavky
- Předplatné Azure – Vytvoření předplatného zdarma
- LTS verze Node.js
- Azure CLI , které se používá k ověřování bez hesla v místním vývojovém prostředí, vytvořte potřebný kontext přihlášením pomocí Azure CLI.
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Nastavení
Vytvořte novou složku
image-quickstarta přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:mkdir image-quickstart && cd image-quickstartVytvořte
package.jsonpomocí následujícího příkazu:npm init -yNainstalujte klientskou knihovnu OpenAI pro JavaScript pomocí:
npm install openaiPro doporučené ověřování bez hesla:
npm install @azure/identity
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Upozornění
Pokud chcete použít doporučované bezklíčové ověřování při použití sady SDK, ujistěte se, že proměnná prostředí AZURE_OPENAI_API_KEY není definovaná.
Generování imagí pomocí DALL-E
index.jsVytvořte soubor s následujícím kódem: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); });Přihlaste se k Azure pomocí následujícího příkazu:
az loginSpusťte javascriptový soubor.
node index.js
Výstup
Adresa URL vygenerovaného obrázku se vytiskne do konzoly.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v článku filtru obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete prostředek odstranit. Před odstraněním prostředku musíte nejprve odstranit všechny nasazené modely.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Další příklady najdete v úložišti GitHub ukázek Azure OpenAI.
Pomocí této příručky můžete začít generovat image pomocí sady Azure OpenAI SDK pro JavaScript.
Požadavky
- Předplatné Azure – Vytvoření předplatného zdarma
- LTS verze Node.js
- Strojopis
- Azure CLI , které se používá k ověřování bez hesla v místním vývojovém prostředí, vytvořte potřebný kontext přihlášením pomocí Azure CLI.
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Nastavení
Vytvořte novou složku
image-quickstarta přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:mkdir image-quickstart && cd image-quickstartVytvořte
package.jsonpomocí následujícího příkazu:npm init -yAktualizujte
package.jsonna ECMAScript následujícím příkazem:npm pkg set type=moduleNainstalujte klientskou knihovnu OpenAI pro JavaScript pomocí:
npm install openaiPro doporučené ověřování bez hesla:
npm install @azure/identity
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Upozornění
Pokud chcete použít doporučované bezklíčové ověřování při použití sady SDK, ujistěte se, že proměnná prostředí AZURE_OPENAI_API_KEY není definovaná.
Generování imagí pomocí DALL-E
index.tsVytvořte soubor s následujícím kódem: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.jsonVytvořte soubor pro transpilování kódu TypeScript a zkopírujte následující kód pro 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"] }Transpilovat z TypeScriptu do JavaScriptu.
tscPřihlaste se k Azure pomocí následujícího příkazu:
az loginSpusťte kód pomocí následujícího příkazu:
node index.js
Výstup
Adresa URL vygenerovaného obrázku se vytiskne do konzoly.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v článku filtru obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete prostředek odstranit. Před odstraněním prostředku musíte nejprve odstranit všechny nasazené modely.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Další příklady najdete v úložišti GitHub ukázek Azure OpenAI.
Tento průvodce vám pomůže začít generovat image pomocí sady Azure OpenAI SDK for Go.
kód knihovny | balíček | ukázky
Požadavky
- Předplatné Azure – Vytvoření předplatného zdarma
- Go 1.8+
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Nastavení
Vytvořte novou složku
dall-e-quickstarta přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:mkdir dall-e-quickstart && cd dall-e-quickstartPro doporučené ověřování bez klíčů pomocí ID Microsoft Entra se přihlaste k Azure pomocí následujícího příkazu:
az login
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Spustit rychlý start
Ukázkový kód v tomto rychlém průvodci používá doporučené bezklíčové ověřování Microsoft Entra ID. Pokud dáváte přednost použití API klíče, můžete implementaci NewDefaultAzureCredential nahradit NewKeyCredential.
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
credential, err := azidentity.NewDefaultAzureCredential(nil)
client, err := azopenai.NewClient(azureOpenAIEndpoint, credential, nil)
Chcete-li spustit ukázku:
Vytvořte nový soubor s názvem quickstart.go. Do souboru quickstart.go zkopírujte následující kód.
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) } }Spuštěním následujícího příkazu vytvořte nový modul Go:
go mod init quickstart.goSpusťte
go mod tidya nainstalujte požadované závislosti:go mod tidySpuštěním následujícího příkazu spusťte ukázku:
go run quickstart.go
Výstup
Adresa URL vygenerovaného obrázku se vytiskne do konzoly.
Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v článku filtru obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Smazání skupiny prostředků také smaže všechny ostatní prostředky s ní spojené.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Další příklady najdete v úložišti GitHub ukázek Azure OpenAI.
V této příručce se dozvíte, jak začít volat API pro generování obrázků pomocí Azure OpenAI Modelů v prostředí Microsoft Foundry za použití PowerShellu.
Požadavky
- Předplatné služby Azure. Vytvořte si ho zdarma.
- Pro tuto úlohu se doporučuje nejnovější verze PowerShellu 7, protože příklady používají nové funkce, které nejsou dostupné ve Windows PowerShellu 5.1.
- Prostředek Azure OpenAI vytvořený v podporované oblasti (viz Dostupnost oblastí). Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Požadavky pro Microsoft Entra ID
Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:
- Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
- Přiřaďte k vašemu uživatelskému účtu roli
Cognitive Services User. Role můžete přiřadit v portálu Azure v části Řízení přístupu (IAM)>Přidat přiřazení role.
Získat informace o prostředcích
Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:
| Název proměnné | Hodnota |
|---|---|
AZURE_OPENAI_ENDPOINT |
Tuto hodnotu najdete v sekci Klíče a koncový bod při kontrole vašeho prostředku v Azure portálu. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal. |
Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.
Generování imagí
Pro doporučené ověřování bez klíčů pomocí ID Microsoft Entra se přihlaste k Azure pomocí následujícího příkazu:
az loginVytvořte nový soubor PowerShellu s názvem quickstart.ps1. Pak ho otevřete v preferovaném editoru nebo integrovaném vývojovém prostředí (IDE).
Obsah souboru quickstart.ps1 nahraďte následujícím kódem. Do příslušných polí zadejte adresu URL a klíč koncového bodu. Změňte hodnotu
promptna upřednostňovaný 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_pathDůležité
V produkčním prostředí použijte zabezpečený způsob ukládání a přístupu k přihlašovacím údajům, jako je správa tajných kódů PowerShellu pomocí služby Azure Key Vault. Další informace o zabezpečení přihlašovacích údajů najdete v tomto článku zabezpečení .
Spusťte skript pomocí PowerShellu:
./quickstart.ps1Skript se smykne, dokud nebude vygenerovaná image připravená.
Výstup
PowerShell požádá o image z Azure OpenAI a uloží výstupní image do souboru generated_image.png ve vašem zadaném adresáři. Pro usnadnění je na konci skriptu vrácena úplná cesta k souboru.
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud služba rozpozná vaši výzvu jako škodlivý obsah, nevygeneruje obrázek. Další informace najdete v tématu Filtrování obsahu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Smazání skupiny prostředků také smaže všechny ostatní prostředky s ní spojené.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
V tomto průvodci můžete začít generovat obrázky pomocí Azure OpenAI v prohlížeči pomocí Microsoft Foundry.
Požadavky
- Předplatné služby Azure. Vytvořte si ho zdarma.
- Prostředek Azure OpenAI vytvořený v podporované oblasti Viz Dostupnost oblastí. Další informace najdete v tématu Vytvoření prostředku a nasazení modelu pomocí Azure OpenAI.
Přejít na Foundry
Přejděte na Foundry a přihlaste se pomocí přihlašovacích údajů přidružených k vašemu prostředku Azure OpenAI. Během nebo po přihlášení vyberte příslušný adresář, předplatné Azure a prostředek Azure OpenAI.
Na cílové stránce Foundry vytvořte nebo vyberte nový projekt. V levém navigačním panelu přejděte na stránku Modely a koncové body . Vyberte Nasadit model a pak ze seznamu zvolte jeden z modelů DALL-E. Dokončete proces nasazení.
Na stránce modelu vyberte Otevřít v dětském hřišti.
Vyzkoušení generování imagí
Začněte zkoumat možnosti Azure OpenAI s přístupem bez kódu prostřednictvím dětského hřiště Images. Do textového pole zadejte výzvu k zadání obrázku a vyberte Generovat. Až bude image generovaná AI připravená, zobrazí se na stránce.
Poznámka:
Rozhraní API pro obrázky mají filtr moderování obsahu. Pokud Azure OpenAI rozpozná vaši výzvu jako škodlivý obsah, nevrátí vygenerovaný obrázek. Další informace najdete v tématu Filtrování obsahu.
Na dětském hřišti Obrázků si také můžete prohlédnout ukázky kódu Pythonu a cURL, které jsou předem vyplněné podle vašeho nastavení. Vyberte Zobrazit kód v horní části stránky. Tento kód můžete použít k napsání aplikace, která dokončí stejnou úlohu.
Vyčistěte zdroje
Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Smazání skupiny prostředků také smaže všechny ostatní prostředky s ní spojené.
Další kroky
- Prozkoumejte rozhraní API obrázků podrobněji s průvodcem krok za krokem pro Image API.
- Vyzkoušejte příklady v úložišti GitHub ukázek Azure OpenAI.
- Viz referenční informace k rozhraní API