Partilhar via


Guia de início rápido: use imagens em seus bate-papos de IA

Comece a usar o GPT-4 Turbo com imagens com o Serviço OpenAI do Azure.

Nota

Escolha do modelo

Os mais recentes modelos com capacidade de visão são gpt-4o e gpt-4o mini. Estes modelos estão em pré-visualização pública. O último modelo GA disponível é gpt-4 a versão turbo-2024-04-09.

Importante

Taxas de uso adicionais podem ser aplicadas ao usar modelos de conclusão de bate-papo com funcionalidade de visão.

Use este artigo para começar a usar o Azure AI Foundry para implantar e testar um modelo de conclusão de bate-papo com compreensão de imagem.

Pré-requisitos

  • Uma subscrição do Azure. Crie um gratuitamente.
  • Depois de ter sua assinatura do Azure, crie um recurso do Azure OpenAI . Para obter mais informações sobre a criação de recursos, consulte o guia de implantação de recursos.
  • Um hub do Azure AI Foundry com seu recurso do Azure OpenAI adicionado como uma conexão.

Prepare os seus conteúdos multimédia

Você precisa de uma imagem para concluir este início rápido. Você pode usar esta imagem de exemplo ou qualquer outra imagem disponível.

Foto de um acidente de carro que pode ser usada para completar o início rápido.

Ir para Azure AI Foundry

  1. Navegue até Azure AI Foundry e entre com as credenciais associadas ao seu recurso do Azure OpenAI. Durante ou após o fluxo de trabalho de entrada, selecione o diretório apropriado, a assinatura do Azure e o recurso do Azure OpenAI.
  2. Selecione o hub no qual você gostaria de trabalhar.
  3. No menu de navegação esquerdo, selecione Modelos + pontos de extremidade e selecione + Implantar modelo.
  4. Escolha uma implementação com capacidade de imagem selecionando o nome do modelo: gpt-4o ou gpt-4o-mini. Na janela exibida, selecione um nome e um tipo de implantação. Verifique se seu recurso do Azure OpenAI está conectado. Para obter mais informações sobre a implementação de modelos, veja o guia de implementação de recursos.
  5. Selecione Implementar.
  6. Em seguida, selecione seu novo modelo e selecione Abrir no playground. No playground de bate-papo, a implantação criada deve ser selecionada no menu suspenso Implantação .

Parque Infantil

Nesta sessão de chat, você instrui o assistente para ajudá-lo a entender as imagens que você inserir.

Para obter ajuda geral com a configuração do assistente, sessões de chat, configurações e painéis, consulte o Guia de início rápido do bate-papo.

Iniciar uma sessão de chat para analisar imagens

Nesta sessão de bate-papo, você está instruindo o assistente para ajudar a entender as imagens que você inserir.

  1. Para começar, verifique se a implantação com capacidade de imagem está selecionada no menu suspenso Implantação .

  2. Na caixa de texto de contexto no painel Configuração , forneça este prompt para orientar o assistente: "You're an AI assistant that helps people find information." Ou, você pode personalizar o prompt para sua imagem ou cenário.

    Nota

    Recomendamos que você atualize a mensagem do sistema para ser específica para a tarefa, a fim de evitar respostas inúteis do modelo.

  3. Selecione Aplicar alterações para salvar as alterações.

  4. No painel de sessões de chat, selecione o botão de anexo e, em seguida, Carregar imagem. Escolha a sua imagem.

  5. Adicione o seguinte prompt no campo de chat: Describe this imagee, em seguida, selecione o ícone de envio para enviá-lo.

  6. O ícone de envio é substituído por um botão de parada. Se você selecioná-lo, o assistente para de processar sua solicitação. Para este início rápido, deixe o assistente terminar sua resposta.

  7. O assistente responde com uma descrição da imagem.

  8. Faça uma pergunta de acompanhamento relacionada com a análise da sua imagem. Você poderia entrar, "What should I highlight about this image to my insurance company?".

  9. Você deve receber uma resposta relevante semelhante à mostrada aqui:

    When reporting the incident to your insurance company, you should highlight the following key points from the image:  
    
    1. **Location of Damage**: Clearly state that the front end of the car, particularly the driver's side, is damaged. Mention the crumpled hood, broken front bumper, and the damaged left headlight.  
    
    2. **Point of Impact**: Indicate that the car has collided with a guardrail, which may suggest that no other vehicles were involved in the accident.  
    
    3. **Condition of the Car**: Note that the damage seems to be concentrated on the front end, and there is no visible damage to the windshield or rear of the car from this perspective.  
    
    4. **License Plate Visibility**: Mention that the license plate is intact and can be used for identification purposes.  
    
    5. **Environment**: Report that the accident occurred near a roadside with a guardrail, possibly in a rural or semi-rural area, which might help in establishing the accident location and context.  
    
    6. **Other Observations**: If there were any other circumstances or details not visible in the image that may have contributed to the accident, such as weather conditions, road conditions, or any other relevant information, be sure to include those as well.  
    
    Remember to be factual and descriptive, avoiding speculation about the cause of the accident, as the insurance company will conduct its own investigation.
    

Ver e exportar código

A qualquer momento da sessão de chat, você pode ativar a opção Mostrar JSON bruto na parte superior da janela de bate-papo para ver a conversa formatada como JSON. Veja como é no início da sessão de bate-papo de início rápido:

[
	{
		"role": "system",
		"content": [
			"You are an AI assistant that helps people find information."
		]
	},
]

Clean up resources (Limpar 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.

Use este artigo para começar a usar as APIs REST do Azure OpenAI para implantar e usar o modelo GPT-4 Turbo with Vision.

Pré-requisitos

  • Uma subscrição do Azure. Crie um gratuitamente.
  • Python 3.8 ou versão posterior.
  • As seguintes bibliotecas Python: requests, json.
  • Um recurso do Serviço OpenAI do Azure com um modelo GPT-4 Turbo com Visão implantado. Consulte a disponibilidade dos modelos GPT-4 e GPT-4 Turbo Preview para obter as regiões disponíveis. Para obter mais informações sobre a criação de recursos, consulte o guia de implantação de recursos.

Nota

Atualmente, não há suporte para desativar a filtragem de conteúdo para o modelo GPT-4 Turbo with Vision.

Recuperar chave e ponto de extremidade

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 de extremidade por meio da página Implantações no portal do 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 Ponto de Extremidade para 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 duas chaves permite que você gire e regenere chaves com segurança sem causar uma interrupção do serviço.

Captura de tela que mostra a página Chaves e Ponto de Extremidade de um recurso do Azure OpenAI no portal do Azure.

Criar uma aplicação Python nova

Crie um novo arquivo Python chamado quickstart.py. Abra o novo arquivo em seu editor ou IDE preferido.

  1. Substitua o conteúdo do quickstart.py pelo código a seguir.

    # Packages required:
    import requests 
    import json 
    
    api_base = '<your_azure_openai_endpoint>' 
    deployment_name = '<your_deployment_name>'
    API_KEY = '<your_azure_openai_key>'
    
    base_url = f"{api_base}openai/deployments/{deployment_name}" 
    headers = {   
        "Content-Type": "application/json",   
        "api-key": API_KEY 
    } 
    
    # Prepare endpoint, headers, and request body 
    endpoint = f"{base_url}/chat/completions?api-version=2023-12-01-preview" 
    data = { 
        "messages": [ 
            { "role": "system", "content": "You are a helpful assistant." }, 
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ], 
        "max_tokens": 2000 
    }   
    
    # Make the API call   
    response = requests.post(endpoint, headers=headers, data=json.dumps(data))   
    
    print(f"Status Code: {response.status_code}")   
    print(response.text)
    
  2. Efetue as seguintes alterações:

    1. Insira o URL e a chave do ponto final nos campos apropriados.
    2. Insira o nome da implantação do GPT-4 Turbo with Vision no campo apropriado.
    3. Altere o "image" valor do campo para o URL da sua imagem.

      Gorjeta

      Você também pode usar uma base 64 dados de imagem codificados em vez de uma URL. Para obter mais informações, consulte o guia de instruções do GPT-4 Turbo with Vision.

  3. Execute o aplicativo com o python comando:

    python quickstart.py
    

Clean up resources (Limpar 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.

Use este artigo para começar a usar o SDK do Azure OpenAI Python para implantar e usar o modelo GPT-4 Turbo with Vision.

Pacote de código-fonte | da biblioteca (PyPi) |

Pré-requisitos

  • Uma subscrição do Azure. Crie um gratuitamente.
  • Python 3.8 ou versão posterior.
  • As seguintes bibliotecas Python: os
  • Um recurso do Serviço OpenAI do Azure com um modelo GPT-4 Turbo com Visão implantado. Consulte a disponibilidade dos modelos GPT-4 e GPT-4 Turbo Preview para obter as regiões disponíveis. Para obter mais informações sobre a criação de recursos, consulte o guia de implantação de recursos.

Configurar

Instale a biblioteca de cliente OpenAI Python com:

pip install openai

Nota

Esta biblioteca é mantida pela OpenAI. Consulte o histórico de versões para acompanhar as atualizações mais recentes da biblioteca.

Recuperar chave e ponto de extremidade

Para fazer uma chamada com êxito no Azure OpenAI, você precisa de um ponto de extremidade e uma chave.

Nome da variável Value
ENDPOINT O ponto de extremidade do serviço pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade por meio da página Implantações no portal do Azure AI Foundry. Um exemplo de ponto de extremidade é: https://docs-test-001.openai.azure.com/.
API-KEY Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Pode utilizar KEY1 ou KEY2.

Vá para o seu recurso no portal do Azure. A seção Chaves & Ponto Final pode ser encontrada na seção Gerenciamento de Recursos. Copie seu endpoint e sua chave de acesso, pois você precisará de ambos para autenticar suas chamadas de API. Pode utilizar KEY1 ou KEY2. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.

Captura de ecrã da IU de descrição geral de um recurso OpenAI do Azure no portal do Azure com a localização do ponto de extremidade e das chaves de acesso em vermelho.

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.

  1. Substitua o conteúdo do quickstart.py pelo código a seguir.

    from openai import AzureOpenAI
    
    api_base = os.getenv("AZURE_OPENAI_ENDPOINT")
    api_key= os.getenv("AZURE_OPENAI_API_KEY")
    deployment_name = '<your_deployment_name>'
    api_version = '2023-12-01-preview' # this might change in the future
    
    client = AzureOpenAI(
        api_key=api_key,  
        api_version=api_version,
        base_url=f"{api_base}/openai/deployments/{deployment_name}"
    )
    
    response = client.chat.completions.create(
        model=deployment_name,
        messages=[
            { "role": "system", "content": "You are a helpful assistant." },
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ],
        max_tokens=2000 
    )
    
    print(response)
    
  2. Efetue as seguintes alterações:

    1. Digite o nome da sua implantação GPT-4 Turbo com Visão no campo apropriado.
    2. Altere o "url" valor do campo para o URL da sua imagem.

      Gorjeta

      Você também pode usar uma base 64 dados de imagem codificados em vez de uma URL. Para obter mais informações, consulte o guia de instruções do GPT-4 Turbo with Vision.

  3. Execute o aplicativo com o python comando:

    python quickstart.py
    

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. 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.

Clean up resources (Limpar 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.

Use este artigo para começar a usar o OpenAI JavaScript SDK para implantar e usar o modelo GPT-4 Turbo with Vision.

Este SDK é fornecido pelo OpenAI com tipos específicos do Azure fornecidos pelo Azure.

Documentação | de referência Pacote de código-fonte | da biblioteca (npm)Exemplos |

Pré-requisitos

Nota

Esta biblioteca é mantida pela OpenAI. Consulte o histórico de versões para acompanhar as atualizações mais recentes da biblioteca.

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.

Recuperar 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 Value
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 Implantações de Modelo de Gerenciamento de>Recursos no portal do Azure.
OPENAI_API_VERSION Saiba mais sobre as versões da API.

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.

Criar um aplicativo de nó

Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma. Em seguida, execute o npm init comando para criar um aplicativo de nó com um arquivo package.json .

npm init

Instalar a biblioteca de cliente

Instale as bibliotecas de cliente com:

npm install openai @azure/identity

O arquivo de package.json do seu aplicativo será atualizado com as dependências.

Criar um novo aplicativo JavaScript para prompts de imagem

Selecione uma imagem dos azure-samples/cognitive-services-sample-data-files e defina a URL para uma imagem nas variáveis de ambiente.

  1. Substitua o conteúdo do quickstart.js pelo código a seguir.

    const AzureOpenAI = require('openai').AzureOpenAI;
    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"] || "<endpoint>";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-07-01-preview";
    const deploymentName = "gpt-4-with-turbo";
    
    // 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,
      });
    }
    function createMessages() {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion) {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get GPT-4 Turbo with vision Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Efetue as seguintes alterações:

    1. Digite o nome da sua implantação GPT-4 Turbo com Visão no campo apropriado.
    2. Altere o "url" valor do campo para o URL da sua imagem.

      Gorjeta

      Você também pode usar uma base 64 dados de imagem codificados em vez de uma URL. Para obter mais informações, consulte o guia de instruções do GPT-4 Turbo with Vision.

  3. Execute o aplicativo com o seguinte comando:

    node quickstart.js
    

Clean up resources (Limpar 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.

Use este artigo para começar a usar o OpenAI JavaScript SDK para implantar e usar o modelo GPT-4 Turbo with Vision.

Este SDK é fornecido pelo OpenAI com tipos específicos do Azure fornecidos pelo Azure.

Documentação | de referência Pacote de código-fonte | da biblioteca (npm)Exemplos |

Pré-requisitos

Nota

Esta biblioteca é mantida pela OpenAI. Consulte o histórico de versões para acompanhar as atualizações mais recentes da biblioteca.

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.

Recuperar 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 Value
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 Implantações de Modelo de Gerenciamento de>Recursos no portal do Azure.
OPENAI_API_VERSION Saiba mais sobre as versões da API.

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.

Criar um aplicativo de nó

Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma. Em seguida, execute o npm init comando para criar um aplicativo de nó com um arquivo package.json .

npm init

Instalar a biblioteca de cliente

Instale as bibliotecas de cliente com:

npm install openai @azure/identity

O arquivo de package.json do seu aplicativo será atualizado com as dependências.

Criar um novo aplicativo JavaScript para prompts de imagem

Selecione uma imagem dos azure-samples/cognitive-services-sample-data-files e defina a URL para uma imagem nas variáveis de ambiente.

  1. Crie um quickstart.ts e cole no código a seguir.

    import { AzureOpenAI } from "openai";
    import { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } from "@azure/identity";
    import type {
      ChatCompletion,
      ChatCompletionCreateParamsNonStreaming,
    } from "openai/resources/index";
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-07-01-preview";
    const deploymentName = "gpt-4-with-turbo";
    
    // 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,
      });
    }
    function createMessages(): ChatCompletionCreateParamsNonStreaming {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion: ChatCompletion): Promise<void> {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get GPT-4 Turbo with vision Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Efetue as seguintes alterações:

    1. Digite o nome da sua implantação GPT-4 Turbo com Visão no campo apropriado.
    2. Altere o "url" valor do campo para o URL da sua imagem.

      Gorjeta

      Você também pode usar uma base 64 dados de imagem codificados em vez de uma URL. Para obter mais informações, consulte o guia de instruções do GPT-4 Turbo with Vision.

  3. Crie o aplicativo com o seguinte comando:

    tsc
    
  4. Execute o aplicativo com o seguinte comando:

    node quickstart.js
    

Clean up resources (Limpar 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.

Use este artigo para começar a usar o Azure OpenAI .NET SDK para implantar e usar o modelo GPT-4 Turbo with Vision.

Pré-requisitos

Configurar

Recuperar chave e ponto de extremidade

Para fazer uma chamada com êxito no Azure OpenAI, você precisa de um ponto de extremidade e uma chave.

Nome da variável Value
AZURE_OPENAI_ENDPOINT O ponto de extremidade do serviço pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Como alternativa, você pode encontrar o ponto de extremidade por meio da página Implantações no portal do Azure AI Foundry. Um exemplo de ponto de extremidade é: https://docs-test-001.openai.azure.com/.
AZURE_OPENAI_API_KEY Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Pode utilizar KEY1 ou KEY2.

Vá para o seu recurso no portal do Azure. O Ponto de Extremidade e as Chaves podem ser encontrados na seção Gerenciamento de Recursos. Copie seu ponto de extremidade e chave de acesso conforme necessário para autenticar suas chamadas de API. Pode utilizar KEY1 ou KEY2. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.

Captura de ecrã da IU de descrição geral de um recurso OpenAI do Azure no portal do Azure com a localização das chaves de acesso do ponto de extremidade & realçada.

Criar o aplicativo .NET

  1. Crie um aplicativo .NET usando o dotnet new comando:

    dotnet new console -n OpenAISpeech
    
  2. Mude para o diretório do novo aplicativo:

    cd OpenAISpeech
    

Instalar a biblioteca de cliente

Instale a biblioteca do Azure.OpenAI cliente:

dotnet add package Azure.AI.OpenAI

A autenticação sem senha é mais segura do que as alternativas baseadas em chave e é a abordagem recomendada para se conectar aos serviços do Azure. Se você optar por usar a autenticação sem senha, precisará concluir o seguinte:

  1. Adicione o pacote Azure.Identity.

    dotnet add package Azure.Identity
    
  2. Atribua a Cognitive Services User função à sua conta de utilizador. Isso pode ser feito no portal do Azure em seu recurso OpenAI em Controle de acesso (IAM)>Adicionar atribuição de função.

  3. Entre no Azure usando o Visual Studio ou a CLI do Azure via az login.

Atualizar o código do aplicativo

  1. Substitua o conteúdo do pelo código a seguir e atualize os valores de program.cs espaço reservado com os seus.

    using Azure;
    using Azure.AI.OpenAI;
    using Azure.Identity;
    using OpenAI.Chat; // Required for Passwordless auth
    
    var endpoint = new Uri("YOUR_AZURE_OPENAI_ENDPOINT");
    var credentials = new AzureKeyCredential("YOUR_AZURE_OPENAI_KEY");
    // var credentials = new DefaultAzureCredential(); // Use this line for Passwordless auth
    var deploymentName = "gpt-4"; // Default name, update with your own if needed
    
    var openAIClient = new AzureOpenAIClient(endpoint, credentials);
    var chatClient = openAIClient.GetChatClient(deploymentName);
    
    var imageUri = "YOUR_IMAGE_URL";
    
    List<ChatMessage> messages = [
        new UserChatMessage(
            ChatMessageContentPart.CreateTextMessageContentPart("Please describe the following image:"),
            ChatMessageContentPart.CreateImageMessageContentPart(new Uri(imageUri), "image/png"))
    ];
    
    ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(messages);
    
    Console.WriteLine($"[ASSISTANT]:");
    Console.WriteLine($"{chatCompletion.Content[0].Text}");
    

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.

  1. Execute o aplicativo usando o dotnet run comando ou o botão Executar na parte superior do Visual Studio:

    dotnet run
    

O aplicativo gera um arquivo de áudio no local especificado para a speechFilePath variável. Reproduza o ficheiro no seu dispositivo para ouvir o áudio gerado.

Clean up resources (Limpar 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