Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A API de geração de imagem cria uma imagem a partir de um prompt de texto. Não edita nem cria variações a partir de imagens existentes.
Use este guia para começar a gerar imagens com o Azure OpenAI em seu navegador com o Azure AI Foundry.
Pré-requisitos
- Uma assinatura do Azure. Crie um gratuitamente.
- Um recurso OpenAI do Azure criado em uma região com suporte. Consulte Disponibilidade da região. Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Ir para Azure AI Foundry
Navegue até Azure AI Foundry e entre com as credenciais associadas ao seu recurso do Azure OpenAI. Durante ou após o processo de início de sessão, selecione o diretório apropriado, a assinatura do Azure e o recurso do Azure OpenAI.
Na página inicial do Azure AI Foundry, crie ou selecione um novo projeto. Navegue até a página Modelos + pontos de extremidade no painel de navegação esquerdo. Selecione Implantar modelo e, em seguida, escolha um dos modelos DALL-E na lista. Conclua o processo de implantação.
Na página do modelo, selecione Abrir na área de testes.
Experimente a geração de imagens
Comece a explorar as capacidades do Azure OpenAI com uma abordagem sem código por meio do playground de Imagens. Digite seu prompt de imagem na caixa de texto e selecione Gerar. Quando a imagem gerada por IA estiver pronta, ela aparecerá na página.
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o Azure OpenAI reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte Filtragem de conteúdo.
No playground de Imagens, também pode visualizar exemplos de código em Python e cURL, que estão pré-preenchidos de acordo com as suas definições. Selecione Ver código na parte superior da página. Você pode usar esse código para escrever um aplicativo que conclui a mesma tarefa.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Experimente exemplos no repositório GitHub de amostras do Azure OpenAI.
- Consulte a referência da API
Use este guia para começar a chamar as APIs REST de geração de imagem do Azure OpenAI no Azure AI Foundry Models usando Python.
Pré-requisitos
- Uma assinatura do Azure. Crie um gratuitamente.
- Python 3.8 ou versão posterior.
- As seguintes bibliotecas Python instaladas:
os
,requests
,json
. - Um recurso OpenAI do Azure criado em uma região com suporte. Consulte Disponibilidade da região.
- Em seguida, você precisa implantar um
gpt-image-1
oudalle3
modelo com seu recurso do Azure. Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Configuração
Recuperar a chave e o endpoint
Para chamar com êxito as APIs do Azure OpenAI, você precisa das seguintes informações sobre seu recurso do Azure OpenAI:
Variável | Nome | Valor |
---|---|---|
Ponto final | api_base |
O valor do ponto de extremidade está localizado em Chaves e Ponto de Extremidade para seu recurso no portal do Azure. Você também pode encontrar o ponto final através da página de Implementações no portal Azure AI Foundry. Um exemplo de ponto de extremidade é: https://docs-test-001.openai.azure.com/ . |
Chave | api_key |
O valor da chave também está localizado em Chaves e Endpoint para o seu recurso no portal do Azure. O Azure gera duas chaves para o seu recurso. Você pode usar qualquer um dos valores. |
Vá para o seu recurso no portal do Azure. No painel de navegação, selecione Chaves e Ponto Final em Gerenciamento de Recursos. Copie o valor Endpoint e um valor de chave de acesso. Você pode usar o valor KEY 1 ou KEY 2 . Ter sempre duas chaves permite-lhe alternar e regenerar as suas chaves com segurança, sem causar uma interrupção do serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Criar uma aplicação Python nova
Crie um novo arquivo Python chamado quickstart.py. Abra o novo arquivo em seu editor ou IDE preferido.
Substitua o conteúdo do quickstart.py pelo código a seguir. Altere o valor de
prompt
para o seu texto preferido. Também definadeployment
para o nome da implantação que escolheu quando implantou o modelo 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")
O script faz uma chamada de API de geração de imagem síncrona.
Importante
Lembre-se de remover a chave do seu código quando terminar e nunca publique a chave publicamente. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Para obter mais informações, consulte Azure Key Vault.
Execute o aplicativo com o
python
comando:python quickstart.py
Aguarde alguns instantes para obter a resposta.
Resultado
A saída de uma chamada de API de geração de imagem bem-sucedida se parece com o exemplo a seguir. O url
campo contém um URL onde pode descarregar a imagem gerada. O URL permanece ativo por 24 horas.
{
"created": 1698116662,
"data": [
{
"url": "<URL_to_generated_image>",
"revised_prompt": "<prompt_that_was_used>"
}
]
}
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não gerará uma imagem. Para obter mais informações, consulte Filtragem de conteúdo. Para obter exemplos de respostas de erro, consulte o Guia de instruções sobre geração de imagens.
O sistema retorna um status de operação de Failed
e o error.code
valor na mensagem é definido como contentFilter
. Aqui está um exemplo:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Your task failed as a result of our safety system."
}
}
Também é possível que a própria imagem gerada seja filtrada. Nesse caso, a mensagem de erro é definida como Generated image was filtered as a result of our safety system.
. Aqui está um exemplo:
{
"created": 1698435368,
"error":
{
"code": "contentFilter",
"message": "Generated image was filtered as a result of our safety system."
}
}
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Experimente exemplos no repositório GitHub de amostras do Azure OpenAI.
- Consulte a referência da API
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para Python.
Código fonte da biblioteca | Pacote | Exemplos
Pré-requisitos
- Uma assinatura do Azure. Crie um gratuitamente.
- Python 3.8 ou versão posterior.
- Um recurso OpenAI do Azure criado em uma região compatível. Consulte Disponibilidade da região.
- Em seguida, você precisa implantar um
dalle3
modelo com seu recurso do Azure. Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Configuração
Recuperar a chave e o endpoint
Para chamar com êxito as APIs do Azure OpenAI, você precisa das seguintes informações sobre seu recurso do Azure OpenAI:
Variável | Nome | Valor |
---|---|---|
Ponto final | api_base |
O valor do ponto de extremidade está localizado em Chaves e Ponto de Extremidade para seu recurso no portal do Azure. Você também pode encontrar o ponto final através da página de Implementações no portal Azure AI Foundry. Um exemplo de ponto de extremidade é: https://docs-test-001.openai.azure.com/ . |
Chave | api_key |
O valor da chave também está localizado em Chaves e Endpoint para o seu recurso no portal do Azure. O Azure gera duas chaves para o seu recurso. Você pode usar qualquer um dos valores. |
Vá para o seu recurso no portal do Azure. No painel de navegação, selecione Chaves e Ponto Final em Gerenciamento de Recursos. Copie o valor Endpoint e um valor de chave de acesso. Você pode usar o valor KEY 1 ou KEY 2 . Ter sempre duas chaves permite-lhe alternar e regenerar as suas chaves com segurança, sem causar uma interrupção do serviço.
Variáveis de ambiente
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Instalar o SDK do Python
Abra um prompt de comando e navegue até a pasta do projeto. Instale o OpenAI Python SDK usando o seguinte comando:
pip install openai
Instale também as seguintes bibliotecas:
pip install requests
pip install pillow
Gerar imagens com DALL-E
Crie um novo arquivo python, quickstart.py. Abra-o no seu editor ou IDE preferido.
Substitua o conteúdo do quickstart.py pelo código a seguir.
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()
- Insira o URL do ponto final e a chave nos campos apropriados.
- Altere o valor de
prompt
para o seu texto preferido. - Altere o valor de
model
para o nome do modelo DALL-E 3 implantado.
Importante
Lembre-se de remover a chave do seu código quando terminar e nunca publique a chave publicamente. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Para obter mais informações, consulte Azure Key Vault.
Execute o aplicativo com o python
comando:
python quickstart.py
Aguarde alguns instantes para obter a resposta.
Resultado
O Azure OpenAI armazena a imagem de saída no arquivo generated_image.png no diretório especificado. O script também exibe a imagem no visualizador de imagens padrão.
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não gerará uma imagem. Para obter mais informações, consulte Filtragem de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Experimente exemplos no repositório GitHub de amostras do Azure OpenAI.
- Consulte a referência da API
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para C#.
Código fonte da biblioteca | Pacote (NuGet) | Amostras
Pré-requisitos
- Uma assinatura do Azure - Crie uma gratuitamente
- O .NET 7 SDK
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Configurar
Crie uma nova pasta
vision-quickstart
e vá para a pasta de início rápido com o seguinte comando:mkdir vision-quickstart && cd vision-quickstart
Crie um novo aplicativo de console com o seguinte comando:
dotnet new console
Instale a biblioteca de cliente OpenAI .NET com o comando dotnet add package :
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.6
Para a autenticação sem chave recomendada com o Microsoft Entra ID, instale o pacote Azure.Identity com:
dotnet add package Azure.Identity
Para a autenticação sem chave recomendada com o Microsoft Entra ID, entre no Azure com o seguinte comando:
az login
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Executar o arranque rápido
O código de exemplo neste início rápido usa o Microsoft Entra ID para a autenticação sem chave recomendada. Se preferir usar uma chave de API, você pode substituir o DefaultAzureCredential
objeto por um AzureKeyCredential
objeto.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Para executar o início rápido, siga estes passos:
Substitua o conteúdo de
Program.cs
pelo código a seguir e atualize os valores dos marcadores de posição com os seus próprios.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);
Execute o aplicativo usando o
dotnet run
comando ou o botão Executar na parte superior do Visual Studio:dotnet run
Resultado
O URL da imagem gerada é impresso no console.
<SAS URL>
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte o artigo sobre filtro de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Para obter mais exemplos, confira o repositório GitHub de amostras do Azure OpenAI.
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para Java.
Código fonte | Artifact (Maven) | Exemplos
Pré-requisitos
- Uma assinatura do Azure - Crie uma gratuitamente
- A versão atual do Java Development Kit (JDK)
- Instale o Apache Maven.
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Configurar
Crie uma nova pasta
vision-quickstart
e vá para a pasta de início rápido com o seguinte comando:mkdir vision-quickstart && cd vision-quickstart
Instale o Apache Maven. Em seguida, execute
mvn -v
para confirmar a instalação bem-sucedida.Crie um novo
pom.xml
arquivo na raiz do seu projeto e copie o seguinte código para ele:<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>
Instale o SDK e as dependências do Azure OpenAI.
mvn clean dependency:copy-dependencies
Para a autenticação sem chave recomendada com o Microsoft Entra ID, entre no Azure com o seguinte comando:
az login
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Executar o aplicativo
O código de exemplo neste início rápido usa o Microsoft Entra ID para a autenticação sem chave recomendada. Se preferir usar uma chave de API, você pode substituir o DefaultAzureCredential
objeto por um AzureKeyCredential
objeto.
OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint(endpoint)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Siga estas etapas para criar um aplicativo de console para reconhecimento de fala.
Crie um novo arquivo chamado Quickstart.java no mesmo diretório raiz do projeto.
Copie o seguinte código para 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); } }
Execute seu novo aplicativo de console para gerar uma imagem:
javac Quickstart.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" Quickstart
Resultado
O URL da imagem gerada é impresso no console.
Image location URL that provides temporary access to download the generated image is <SAS URL>.
Completed getImages.
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte o artigo sobre filtro de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Para obter mais exemplos, confira o repositório do GitHub de amostras do Azure OpenAI
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para JavaScript.
Documentação de Referência | Código-fonte | Pacote (npm) | Amostras
Pré-requisitos
- Uma assinatura do Azure - Crie uma gratuitamente
- Versões LTS do Node.js
- CLI do Azure usada para autenticação sem senha em um ambiente de desenvolvimento local, crie o contexto necessário entrando com a CLI do Azure.
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Configurar
Crie uma nova pasta
image-quickstart
e vá para a pasta de início rápido com o seguinte comando:mkdir image-quickstart && cd image-quickstart
Crie o
package.json
com o seguinte comando:npm init -y
Instale a biblioteca de cliente OpenAI para JavaScript com:
npm install openai
Para a autenticação sem senha recomendada :
npm install @azure/identity
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Atenção
Para usar a autenticação sem chave recomendada com o SDK, verifique se a AZURE_OPENAI_API_KEY
variável de ambiente não está definida.
Gerar imagens com DALL-E
Crie o
index.js
arquivo com o seguinte código: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); });
Entre no Azure com o seguinte comando:
az login
Execute o arquivo JavaScript.
node index.js
Resultado
O URL da imagem gerada é impresso no console.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte o artigo sobre filtro de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Para obter mais exemplos, confira o repositório GitHub de amostras do Azure OpenAI.
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para JavaScript.
Documentação de Referência | Código-fonte | Pacote (npm) | Amostras
Pré-requisitos
- Uma assinatura do Azure - Crie uma gratuitamente
- Versões LTS do Node.js
- TypeScript
- CLI do Azure usada para autenticação sem senha em um ambiente de desenvolvimento local, crie o contexto necessário entrando com a CLI do Azure.
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Configurar
Crie uma nova pasta
image-quickstart
e vá para a pasta de início rápido com o seguinte comando:mkdir image-quickstart && cd image-quickstart
Crie o
package.json
com o seguinte comando:npm init -y
Atualize o
package.json
para ECMAScript com o seguinte comando:npm pkg set type=module
Instale a biblioteca de cliente OpenAI para JavaScript com:
npm install openai
Para a autenticação sem senha recomendada :
npm install @azure/identity
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Atenção
Para usar a autenticação sem chave recomendada com o SDK, verifique se a AZURE_OPENAI_API_KEY
variável de ambiente não está definida.
Gerar imagens com DALL-E
Crie o
index.ts
arquivo com o seguinte código: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); });
Crie o
tsconfig.json
arquivo para transpilar o código TypeScript e copie o código a seguir para 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"] }
Converter TypeScript em JavaScript.
tsc
Entre no Azure com o seguinte comando:
az login
Execute o código com o seguinte comando:
node index.js
Resultado
O URL da imagem gerada é impresso no console.
== Batch Image Generation ==
Image generation result URL: <SAS URL>
Image generation result URL: <SAS URL>
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte o artigo sobre filtro de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso. Antes de excluir o recurso, você deve primeiro excluir todos os modelos implantados.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Para obter mais exemplos, confira o repositório GitHub de amostras do Azure OpenAI.
Use este guia para começar a gerar imagens com o SDK do Azure OpenAI para Go.
Código fonte da biblioteca | Pacote | Exemplos
Pré-requisitos
- Uma assinatura do Azure - Crie uma gratuitamente
- Go 1.8+
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Configurar
Crie uma nova pasta
dall-e-quickstart
e vá para a pasta de início rápido com o seguinte comando:mkdir dall-e-quickstart && cd dall-e-quickstart
Para a autenticação sem chave recomendada com o Microsoft Entra ID, entre no Azure com o seguinte comando:
az login
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Executar o arranque rápido
O código de exemplo neste início rápido usa o Microsoft Entra ID para a autenticação sem chave recomendada. Se preferir usar uma chave de API, você pode substituir a NewDefaultAzureCredential
implementação por NewKeyCredential
.
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
credential, err := azidentity.NewDefaultAzureCredential(nil)
client, err := azopenai.NewClient(azureOpenAIEndpoint, credential, nil)
Para executar o exemplo:
Crie um novo arquivo chamado quickstart.go. Copie o código a seguir para o arquivo 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) } }
Execute o seguinte comando para criar um novo módulo Go:
go mod init quickstart.go
Execute
go mod tidy
para instalar as dependências necessárias:go mod tidy
Execute o seguinte comando para executar o exemplo:
go run quickstart.go
Resultado
O URL da imagem gerada é impresso no console.
Image generated, HEAD request on URL returned 200
Image URL: <SAS URL>
Observação
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não retornará uma imagem gerada. Para obter mais informações, consulte o artigo sobre filtro de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Para obter mais exemplos, confira o repositório GitHub de amostras do Azure OpenAI.
Use este guia para começar a chamar o Azure OpenAI nas APIs de geração de imagem do Azure AI Foundry Models com o PowerShell.
Pré-requisitos
- Uma assinatura do Azure. Crie um gratuitamente.
- Para esta tarefa, a versão mais recente do PowerShell 7 é recomendada porque os exemplos usam novos recursos não disponíveis no Windows PowerShell 5.1.
- Um recurso OpenAI do Azure criado em uma região com suporte (consulte Disponibilidade da região). Para obter mais informações, consulte Criar um recurso e implantar um modelo com o Azure OpenAI.
Pré-requisitos do Microsoft Entra ID
Para a autenticação sem chave recomendada com o Microsoft Entra ID, você precisa:
- Instale a CLI do Azure usada para autenticação sem chave com o Microsoft Entra ID.
- Atribua a
Cognitive Services User
função à sua conta de utilizador. Você pode atribuir funções no portal do Azure em Controle de acesso (IAM)>Adicionar atribuição de função.
Obter informações do recurso
Você precisa recuperar as seguintes informações para autenticar seu aplicativo com seu recurso do Azure OpenAI:
Nome da variável | Valor |
---|---|
AZURE_OPENAI_ENDPOINT |
Esse valor pode ser encontrado na seção Chaves e Ponto de Extremidade ao examinar seu recurso no portal do Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Este valor corresponderá ao nome personalizado que escolheu para a implementação quando implementou um modelo. Esse valor pode ser encontrado em Gerenciamento de Recursos>Implantações de Modelo no portal do Azure. |
OPENAI_API_VERSION |
Saiba mais sobre as versões da API. Você pode alterar a versão no código ou usar uma variável de ambiente. |
Saiba mais sobre autenticação sem chave e configuração de variáveis de ambiente.
Gerar imagens
Para a autenticação sem chave recomendada com o Microsoft Entra ID, entre no Azure com o seguinte comando:
az login
Crie um novo arquivo do PowerShell chamado quickstart.ps1. Em seguida, abra-o no seu editor ou IDE preferido.
Substitua o conteúdo de quickstart.ps1 pelo código a seguir. Insira o URL do ponto final e a chave nos campos apropriados. Altere o valor de
prompt
para o seu texto preferido.# 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
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Gerenciamento Secreto do PowerShell com o Cofre de Chaves do Azure. Para obter mais informações sobre segurança de credenciais, consulte este artigo de segurança .
Execute o script usando o PowerShell:
./quickstart.ps1
O script é executado até que a imagem gerada esteja pronta.
Resultado
O PowerShell solicita a imagem do Azure OpenAI e armazena a imagem de saída no arquivo generated_image.png no diretório especificado. Por conveniência, o caminho completo para o arquivo é retornado no final do script.
As APIs de imagem vêm com um filtro de moderação de conteúdo. Se o serviço reconhecer seu prompt como conteúdo prejudicial, ele não gerará uma imagem. Para obter mais informações, consulte Filtragem de conteúdo.
Limpeza de recursos
Se quiser limpar e remover um recurso do Azure OpenAI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.
Próximos passos
- Explore as APIs de imagem com mais profundidade com o guia de instruções da API de imagem.
- Experimente exemplos no repositório GitHub de amostras do Azure OpenAI.