Compartilhar via


Conectar-se ao Azure OpenAI em Modelos de Fundimento usando o Service Connector

Esta página fornece informações sobre os clientes e métodos de autenticação com suporte. Ele fornece um código de exemplo que você pode usar para conectar serviços de computação ao Azure OpenAI em Modelos de Fundimento usando o Service Connector. Esta página também lista nomes e valores de variáveis de ambiente padrão que você obteve ao criar as conexões de serviço.

Serviço de computação com suporte

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

  • Serviço de Aplicativo do Azure
  • Aplicativos de Contêiner do Azure
  • Azure Functions
  • AKS (Serviço de Kubernetes do Azure)
  • Aplicativos Spring do Azure

Tipos de autenticação e tipos de cliente com suporte

Esta tabela mostra quais combinações de métodos de autenticação e clientes têm suporte para conectar seu serviço de computação ao Azure OpenAI usando o Service Connector. Um "Sim" indica que a combinação tem suporte, enquanto um "Não" indica que não há suporte.

Tipo de cliente Identidade gerenciada atribuída pelo sistema Identidade gerenciada atribuída pelo usuário Cadeia de conexão/segredo Entidade de serviço
.NET Sim Sim Sim Sim
Java Sim Sim Sim Sim
Node.js Sim Sim Sim Sim
Python Sim Sim Sim Sim
Nenhum Sim Sim Sim Sim

Essa tabela indica que todas as combinações de tipos de clientes e métodos de autenticação na tabela têm suporte. Todos os tipos de cliente podem usar qualquer um dos métodos de autenticação para se conectar ao Azure OpenAI 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 a seguir para conectar os serviços de computação ao Azure OpenAI. Para obter mais informações, consulte a convenção de nomenclatura de configuração.

Identidade gerenciada atribuída pelo sistema

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

Código de exemplo

Para se conectar ao Azure OpenAI usando uma identidade gerenciada atribuída pelo sistema, consulte as etapas e o código a seguir.

  1. Instale as dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidades do Azure e obtenha o ponto de extremidade do Serviço OpenAI do Azure por meio das variáveis de ambiente adicionadas pelo Conector de Serviço. Quando você usa o código a seguir, cancele o comentário da parte do snippet de código para o tipo de autenticação que 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 gerenciada atribuída pelo usuário

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

Código de exemplo

Para se conectar ao Azure OpenAI usando uma identidade gerenciada atribuída pelo usuário, consulte as etapas e o código a seguir.

  1. Instale as dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidades do Azure e obtenha o ponto de extremidade do Serviço OpenAI do Azure por meio das variáveis de ambiente adicionadas pelo Conector de Serviço. Quando você usa o código a seguir, cancele o comentário da parte do snippet de código para o tipo de autenticação que 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
    );
    

Cadeia de conexão

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

Exemplo de código

Para se conectar ao Azure OpenAI usando uma cadeia de conexão, consulte as etapas e o código a seguir.

  1. Instale as dependências a seguir.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Core --version 1.40.0
    
  2. Obtenha a chave de API e o ponto de extremidade do Serviço OpenAI do Azure por meio das variáveis de ambiente adicionadas pelo Conector de Serviço.

    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));
    

Entidade de serviço

Nome da variável de ambiente padrão Descrição Valor de exemplo
AZURE_OPENAI_BASE Ponto de extremidade do OpenAI do Azure https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID Sua ID de cliente <client-ID>
AZURE_OPENAI_CLIENTSECRET Seu segredo do cliente <client-secret>
AZURE_OPENAI_TENANTID Sua ID de locatário <tenant-ID>

Código de exemplo

Para se conectar ao Azure OpenAI usando uma entidade de serviço, consulte as etapas e o código a seguir.

  1. Instale as dependências.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentique-se usando a biblioteca de Identidades do Azure e obtenha o ponto de extremidade do Serviço OpenAI do Azure por meio das variáveis de ambiente adicionadas pelo Conector de Serviço. Quando você usa o código a seguir, cancele o comentário da parte do snippet de código para o tipo de autenticação que 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
    );