Herstellen einer Verbindung mit dem Azure OpenAI Service mithilfe von Dienstconnector
Artikel
Diese Seite enthält Informationen zu unterstützten Authentifizierungsmethoden und Clients sowie Beispielcode zum Verbinden des Azure OpenAI Service mit anderen Clouddiensten mithilfe von Dienstconnector. Auf dieser Seite werden auch die Namen und Werte der Standardumgebungsvariablen aufgelistet, die beim Erstellen von Dienstverbindungen abgerufen werden.
Unterstützte Computedienste
Der Dienstconnector kann verwendet werden, um die folgenden Computedienste mit Azure OpenAI Service zu verbinden:
Azure App Service
Azure Container Apps
Azure-Funktionen
Azure Kubernetes Service (AKS)
Azure Spring Apps
Unterstützte Authentifizierungstypen und Clienttypen
Die folgende Tabelle zeigt, welche Kombinationen von Authentifizierungsmethoden und Clients für die Verbindung Ihres Computediensts mit Azure OpenAI Service mithilfe des Dienstconnectors unterstützt werden. Ein „Ja“ gibt an, dass die Kombination unterstützt wird, während ein „Nein“ angibt, dass sie nicht unterstützt wird.
Clienttyp
Systemseitig zugewiesene verwaltete Identität
Benutzerseitig zugewiesene verwaltete Identität
Geheimnis/Verbindungszeichenfolge
Dienstprinzipal
.NET
Ja
Ja
Ja
Ja
Java
Ja
Ja
Ja
Ja
Node.js
Ja
Ja
Ja
Ja
Python
Ja
Ja
Ja
Ja
Keine
Ja
Ja
Ja
Ja
In der Tabelle wird angegeben, dass alle Kombinationen von Clienttypen und Authentifizierungsmethoden in der Tabelle unterstützt werden. Alle Clienttypen können jede der Authentifizierungsmethoden verwenden, um mithilfe des Dienstconnectors eine Verbindung mit Azure OpenAI Service herzustellen.
Namen von Standard-Umgebungsvariablen oder Anwendungseigenschaften und Beispielcode
Verwenden Sie die nachstehenden Verbindungsdetails, um Computedienste mit Azure OpenAI Service zu verbinden. Weitere Informationen zu Benennungskonventionen finden Sie im Artikel Besonderheiten des Dienstconnectors.
Systemseitig zugewiesene verwaltete Identität
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
AZURE_OPENAI_BASE
Azure OpenAI Service-Endpunkt
https://<Azure-OpenAI-name>.openai.azure.com/
Beispielcode
Lesen Sie die Schritte und den folgenden Code, um eine Verbindung mit Azure OpenAI Service mithilfe einer systemseitig zugewiesenen verwalteten Identität herzustellen.
Authentifizieren Sie sich mithilfe der Azure Identity-Bibliothek, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
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
);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .clientSecret(System.getenv("AZURE_OPENAI_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_OPENAI_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_OPENAI_BASE");
OpenAIClient client = new OpenAIClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Installieren Sie Abhängigkeiten.
pip install openai
pip install azure-identity
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
import OpenAI
from azure.identity import ManagedIdentityCredential, ClientSecretCredential, get_bearer_token_provider
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_OPENAI_TENANTID')
# client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# client_secret = os.getenv('AZURE_OPENAI_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
token_provider = get_bearer_token_provider(
cred, "https://cognitiveservices.azure.com/.default"
)
endpoint = os.getenv('AZURE_OPENAI_BASE')
client = AzureOpenAI(
api_version="2024-02-15-preview",
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider
)
Authentifizieren Sie sich mithilfe von @azure/identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_OPENAI_TENANTID;
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const clientSecret = process.env.AZURE_OPENAI_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_OPENAI_BASE;
const client = new OpenAIClient(endpoint, credential);
Für andere Sprachen können Sie die Verbindungsinformationen verwenden, die der Dienstconnector für die Umgebungsvariablen zur Verbindung mit Azure OpenAI festlegt. Weitere Informationen zu Umgebungsvariablen finden Sie unter Integrieren von Azure OpenAI mit dem Dienstconnector.
Benutzerseitig zugewiesene verwaltete Identität
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
AZURE_OPENAI_BASE
Azure OpenAI Service-Endpunkt
https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID
Ihre Client-ID
<client-ID>
Beispielcode
Lesen Sie die Schritte und den folgenden Code, um eine Verbindung mit Azure OpenAI Service mithilfe einer benutzerseitig zugewiesenen verwalteten Identität herzustellen.
Authentifizieren Sie sich mithilfe der Azure Identity-Bibliothek, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
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
);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .clientSecret(System.getenv("AZURE_OPENAI_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_OPENAI_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_OPENAI_BASE");
OpenAIClient client = new OpenAIClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Installieren Sie Abhängigkeiten.
pip install openai
pip install azure-identity
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
import OpenAI
from azure.identity import ManagedIdentityCredential, ClientSecretCredential, get_bearer_token_provider
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_OPENAI_TENANTID')
# client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# client_secret = os.getenv('AZURE_OPENAI_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
token_provider = get_bearer_token_provider(
cred, "https://cognitiveservices.azure.com/.default"
)
endpoint = os.getenv('AZURE_OPENAI_BASE')
client = AzureOpenAI(
api_version="2024-02-15-preview",
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider
)
Authentifizieren Sie sich mithilfe von @azure/identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_OPENAI_TENANTID;
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const clientSecret = process.env.AZURE_OPENAI_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_OPENAI_BASE;
const client = new OpenAIClient(endpoint, credential);
Für andere Sprachen können Sie die Verbindungsinformationen verwenden, die der Dienstconnector für die Umgebungsvariablen zur Verbindung mit Azure OpenAI festlegt. Weitere Informationen zu Umgebungsvariablen finden Sie unter Integrieren von Azure OpenAI mit dem Dienstconnector.
Connection string
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
AZURE_OPENAI_BASE
Azure OpenAI Service-Endpunkt
https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_KEY
Azure OpenAI Service-API-Schlüssel
<api-key>
Beispielcode
Lesen Sie die Schritte und den folgenden Code, um eine Verbindung mit Azure OpenAI Service mithilfe einer Verbindungszeichenfolge herzustellen.
Rufen Sie den Azure OpenAI-Endpunkt und -API-Schlüssel aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab.
import { OpenAIClient } from "@azure/openai";
import { AzureKeyCredential } from "@azure/core-auth";
const endpoint = process.env.AZURE_OPENAI_BASE;
const credential = new AzureKeyCredential(process.env.AZURE_OPENAI_KEY);
const client = new OpenAIClient(endpoint, credential);
Für andere Sprachen können Sie die Verbindungsinformationen verwenden, die der Dienstconnector für die Umgebungsvariablen zur Verbindung mit Azure OpenAI festlegt. Weitere Informationen zu Umgebungsvariablen finden Sie unter Integrieren von Azure OpenAI mit dem Dienstconnector.
Dienstprinzipal
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
AZURE_OPENAI_BASE
Azure OpenAI Service-Endpunkt
https://<Azure-OpenAI-name>.openai.azure.com/
AZURE_OPENAI_CLIENTID
Ihre Client-ID
<client-ID>
AZURE_OPENAI_CLIENTSECRET
Ihr geheimer Clientschlüssel
<client-secret>
AZURE_OPENAI_TENANTID
Ihre Mandanten-ID
<tenant-ID>
Beispielcode
Lesen Sie die Schritte und den folgenden Code, um eine Verbindung mit Azure OpenAI Service mithilfe eines Dienstprinzipals herzustellen.
Authentifizieren Sie sich mithilfe der Azure Identity-Bibliothek, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
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
);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_OPENAI_CLIENTID"))
// .clientSecret(System.getenv("AZURE_OPENAI_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_OPENAI_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_OPENAI_BASE");
OpenAIClient client = new OpenAIClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Installieren Sie Abhängigkeiten.
pip install openai
pip install azure-identity
Authentifizieren Sie sich mithilfe von azure-identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
import OpenAI
from azure.identity import ManagedIdentityCredential, ClientSecretCredential, get_bearer_token_provider
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_OPENAI_TENANTID')
# client_id = os.getenv('AZURE_OPENAI_CLIENTID')
# client_secret = os.getenv('AZURE_OPENAI_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
token_provider = get_bearer_token_provider(
cred, "https://cognitiveservices.azure.com/.default"
)
endpoint = os.getenv('AZURE_OPENAI_BASE')
client = AzureOpenAI(
api_version="2024-02-15-preview",
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider
)
Authentifizieren Sie sich mithilfe von @azure/identity, und rufen Sie den Azure OpenAI-Endpunkt aus den vom Dienstconnector hinzugefügten Umgebungsvariablen ab. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_OPENAI_TENANTID;
// const clientId = process.env.AZURE_OPENAI_CLIENTID;
// const clientSecret = process.env.AZURE_OPENAI_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_OPENAI_BASE;
const client = new OpenAIClient(endpoint, credential);
Für andere Sprachen können Sie die Verbindungsinformationen verwenden, die der Dienstconnector für die Umgebungsvariablen zur Verbindung mit Azure OpenAI festlegt. Weitere Informationen zu Umgebungsvariablen finden Sie unter Integrieren von Azure OpenAI mit dem Dienstconnector.