Compartir a través de


Conexión a Azure OpenAI Service mediante Service Connector

En esta página se proporciona información sobre los métodos de autenticación admitidos y los clientes, junto con el código de ejemplo para conectar Azure OpenAI Service a otros servicios en la nube mediante Service Connector. Esta página también muestra los nombres y valores predeterminados de las variables de entorno que se obtiene al crear conexiones de servicio.

Servicios de proceso admitidos

El conector de servicio se puede utilizar para conectar los siguientes servicios de proceso a Azure OpenAI Service:

  • Azure App Service
  • Azure Container Apps
  • Funciones de Azure
  • Azure Kubernetes Service (AKS)
  • Azure Spring Apps

Tipos de autenticación y tipos de cliente admitidos

En la tabla siguiente se muestran las combinaciones de métodos de autenticación y clientes que se admiten para conectar el servicio de proceso a Azure OpenAI Service mediante el conector de servicio. Un valor "Sí" indica que se admite la combinación, mientras que "No" indica que no se admite.

Tipo de cliente Identidad administrada asignada por el sistema Identidad administrada asignada por el usuario Secreto/cadena de conexión Entidad de servicio
.NET
Java
Node.js
Python
None

Esta tabla indica que todas las combinaciones de tipos de cliente y métodos de autenticación de la tabla son compatibles. Todos los tipos de cliente pueden utilizar cualquiera de los métodos de autenticación para conectarse a Azure OpenAI Service mediante el conector de servicio.

Nombres de variables de entorno predeterminados o propiedades de aplicación y código de ejemplo

Use los detalles de conexión siguientes para conectar servicios de proceso a Azure OpenAI Service. Para más información sobre las convenciones de nomenclatura, consulte el artículo sobre los elementos internos del conector de servicio.

Identidad administrada asignada por el sistema

Nombre de la variable de entorno predeterminado Descripción Valor de ejemplo
AZURE_OPENAI_BASE Punto de conexión de Azure OpenAI Service https://<Azure-OpenAI-name>.openai.azure.com/

Código de ejemplo

Consulte los pasos y el código siguientes para conectarse a Azure OpenAI Service mediante una identidad administrada asignada por el sistema.

  1. Instale las dependencias.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentíquese mediante la biblioteca de identidades de Azure y obtenga el punto de conexión de Azure OpenAI de las variables de entorno agregadas por el conector de servicio. Al usar el código siguiente, quite la marca de comentario de la parte del fragmento de código para el tipo de autenticación que desea 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
    );
    

Identidad administrada asignada por el usuario

Nombre de la variable de entorno predeterminado Descripción Valor de ejemplo
AZURE_OPENAI_BASE Punto de conexión de Azure OpenAI Service https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID Id. de cliente <client-ID>

Código de ejemplo

Consulte los pasos y el código siguientes para conectarse a Azure OpenAI Service mediante una identidad administrada asignada por el usuario.

  1. Instale las dependencias.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentíquese mediante la biblioteca de identidades de Azure y obtenga el punto de conexión de Azure OpenAI de las variables de entorno agregadas por el conector de servicio. Al usar el código siguiente, quite la marca de comentario de la parte del fragmento de código para el tipo de autenticación que desea 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
    );
    

Cadena de conexión

Nombre de la variable de entorno predeterminado Descripción Valor de ejemplo
AZURE_OPENAI_BASE Punto de conexión de Azure OpenAI Service https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_KEY Clave de API de Azure OpenAI Service <api-key>

Código de ejemplo

Consulte los pasos y el código siguientes para conectarse a Azure OpenAI Service mediante una cadena de conexión.

  1. Instale las siguientes dependencias.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Core --version 1.40.0
    
  2. Obtenga el punto de conexión de Azure OpenAI y la clave de API de las variables de entorno agregadas por el conector de servicio.

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

Entidad de servicio

Nombre de la variable de entorno predeterminado Descripción Valor de ejemplo
AZURE_OPENAI_BASE Punto de conexión de Azure OpenAI Service https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID Id. de cliente <client-ID>
AZURE_OPENAI_CLIENTSECRET Secreto de cliente <client-secret>
AZURE_OPENAI_TENANTID El identificador de inquilino <tenant-ID>

Código de ejemplo

Consulte los pasos y el código siguientes para conectarse a Azure OpenAI Service mediante una entidad de servicio.

  1. Instale las dependencias.

    dotnet add package Azure.AI.OpenAI --prerelease
    dotnet add package Azure.Identity
    
  2. Autentíquese mediante la biblioteca de identidades de Azure y obtenga el punto de conexión de Azure OpenAI de las variables de entorno agregadas por el conector de servicio. Al usar el código siguiente, quite la marca de comentario de la parte del fragmento de código para el tipo de autenticación que desea 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
    );