Partilhar via


Conectar-se ao Serviço OpenAI do Azure usando o Service Connector

Esta página fornece informações sobre clientes e métodos de autenticação suportados, juntamente com código de exemplo para conectar o Serviço OpenAI do Azure a outros serviços de nuvem usando o Service Connector. Esta página também lista nomes de variáveis de ambiente padrão e valores obtidos ao criar conexões de serviço.

Serviços de computação suportados

O Service Connector pode ser usado para conectar os seguintes serviços de computação ao Serviço Azure OpenAI:

  • Serviço de Aplicações do Azure
  • Azure Container Apps
  • Funções do Azure
  • Azure Kubernetes Service (AKS)
  • Azure Spring Apps

Tipos de autenticação e tipos de cliente suportados

A tabela abaixo mostra quais combinações de métodos de autenticação e clientes são suportadas para conectar seu serviço de computação ao Serviço OpenAI do Azure usando o Service Connector. Um "Sim" indica que a combinação é suportada, enquanto um "Não" indica que ela não é suportada.

Tipo de cliente Identidade gerida atribuída pelo sistema Identidade gerida atribuída pelo utilizador Segredo/cadeia de conexão Service principal (Principal de serviço)
.NET Sim Sim Sim Sim
Java Sim Sim Sim Sim
Node.js Sim Sim Sim Sim
Python Sim Sim Sim Sim
Nenhuma Sim Sim Sim Sim

Esta tabela indica que todas as combinações de tipos de cliente e métodos de autenticação na tabela são suportadas. Todos os tipos de cliente podem usar qualquer um dos métodos de autenticação para se conectar ao Serviço OpenAI do Azure usando o Service Connector.

Nomes de variáveis de ambiente padrão ou propriedades de aplicativo e código de exemplo

Use os detalhes de conexão abaixo para conectar serviços de computação ao Serviço OpenAI do Azure. Para obter mais informações sobre convenções de nomenclatura, consulte o artigo interno do Service Connector.

Identidade gerida atribuída pelo sistema

Nome da variável de ambiente padrão Description Valores de exemplo
AZURE_OPENAI_BASE Ponto de extremidade do Serviço OpenAI do Azure https://<Azure-OpenAI-name>.openai.azure.com/

Código de exemplo

Consulte as etapas e o código abaixo para se conectar ao Serviço OpenAI do Azure usando uma identidade gerenciada atribuída pelo sistema.

  1. Instale dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidade do Azure e obtenha o ponto de extremidade do Azure OpenAI das variáveis de ambiente adicionadas pelo Service Connector. Ao usar o código abaixo, descomente a parte do trecho de código para o tipo de autenticação que você deseja usar.

    using Azure.AI.OpenAI;
    using Azure.Identity;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_BASE");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_OPENAI_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    AzureOpenAIClient openAIClient = new(
      new Uri(endpoint),
      credential
    );
    

Identidade gerida atribuída pelo utilizador

Nome da variável de ambiente padrão Description Valores de exemplo
AZURE_OPENAI_BASE Ponto de extremidade do serviço OpenAI do Azure https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID O seu ID de cliente <client-ID>

Código de exemplo

Consulte as etapas e o código abaixo para se conectar ao Serviço OpenAI do Azure usando uma identidade gerenciada atribuída pelo usuário.

  1. Instale dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidade do Azure e obtenha o ponto de extremidade do Azure OpenAI das variáveis de ambiente adicionadas pelo Service Connector. Ao usar o código abaixo, descomente a parte do trecho de código para o tipo de autenticação que você deseja usar.

    using Azure.AI.OpenAI;
    using Azure.Identity;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_BASE");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_OPENAI_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    AzureOpenAIClient openAIClient = new(
      new Uri(endpoint),
      credential
    );
    

Connection string

Nome da variável de ambiente padrão Description Valores de exemplo
AZURE_OPENAI_BASE Ponto de extremidade do serviço OpenAI do Azure https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_KEY Chave da API do Serviço OpenAI do Azure <api-key>

Código de Exemplo

Consulte as etapas e o código abaixo para se conectar ao Serviço OpenAI do Azure usando uma cadeia de conexão.

  1. Instale as seguintes dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Core --version 1.40.0
    
  2. Obtenha o ponto de extremidade do Azure OpenAI e a chave da API das variáveis de ambiente adicionadas pelo Service Connector.

    using Azure.AI.OpenAI;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_BASE")
    string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_KEY");
    
    AzureOpenAIClient openAIClient = new(
      new Uri(endpoint),
      new AzureKeyCredential(key));
    

Service principal (Principal de serviço)

Nome da variável de ambiente padrão Description Valores de exemplo
AZURE_OPENAI_BASE Ponto de extremidade do serviço OpenAI do Azure https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID O seu ID de cliente <client-ID>
AZURE_OPENAI_CLIENTSECRET O segredo do seu cliente <client-secret>
AZURE_OPENAI_TENANTID O seu ID de inquilino <tenant-ID>

Código de exemplo

Consulte as etapas e o código abaixo para se conectar ao Serviço OpenAI do Azure usando um principaL de serviço.

  1. Instale dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidade do Azure e obtenha o ponto de extremidade do Azure OpenAI das variáveis de ambiente adicionadas pelo Service Connector. Ao usar o código abaixo, descomente a parte do trecho de código para o tipo de autenticação que você deseja usar.

    using Azure.AI.OpenAI;
    using Azure.Identity;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_BASE");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_OPENAI_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_OPENAI_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    AzureOpenAIClient openAIClient = new(
      new Uri(endpoint),
      credential
    );