Source de données : index Azure Machine Learning (préversion)
Options configurables de l’index Azure Machine Learning lors de l’utilisation d’Azure OpenAI sur vos données. Cette source de données est prise en charge dans la version de l’API 2024-02-15-preview
.
Nom | Type | Requise | Description |
---|---|---|---|
parameters |
Paramètres | True | Les paramètres à utiliser lors de la configuration de l’index Azure Machine Learning. |
type |
string | True | Doit être azure_ml_index . |
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
project_resource_id |
string | True | ID de ressource du projet Azure Machine Learning. |
name |
string | True | Le nom de l’index Azure Machine Learning. |
version |
string | True | La version de l’index Azure Machine Learning. |
authentication |
Un des AccessTokenAuthenticationOptions, SystemAssignedManagedIdentityAuthenticationOptions, UserAssignedManagedIdentityAuthenticationOptions | True | Méthode d’authentification à utiliser lors de l’accès à la source de données définie. |
in_scope |
booléen | False | Indique si les requêtes doivent être limitées à l’utilisation de données indexées. La valeur par défaut est True . |
role_information |
string | False | Fournissez au modèle des instructions sur son comportement et sur tout contexte qu’il doit référencer en générant une réponse. Vous pouvez décrire la personnalité de l’assistant, lui dire ce qu’il doit et ne doit pas répondre, et lui indiquer comment formater les réponses. |
strictness |
entier | False | La rigueur configurée du filtrage de pertinence de la recherche. Plus la rigueur est élevée, plus la précision est élevée, mais plus faible sera le rappel de la réponse. La valeur par défaut est 3 . |
top_n_documents |
entier | False | Le nombre maximal de documents à proposer pour la requête configurée. La valeur par défaut est 5 . |
filter |
string | False | Filtre de recherche. Uniquement pris en charge si l’index Azure Machine Learning est de type Recherche Azure. |
Options d’authentification par jeton d’accès
Options d’authentification pour Azure OpenAI sur vos données lors de l’utilisation d’un jeton d’accès.
Nom | Type | Requise | Description |
---|---|---|---|
access_token |
string | True | Le jeton d’accès à utiliser pour l’authentification. |
type |
string | True | Doit être access_token . |
Les options d’authentification via une identité managée affectée par le système
Les options d’authentification pour Azure OpenAI sur vos données lors de l’utilisation d’une identité managée affectée par le système.
Nom | Type | Requise | Description |
---|---|---|---|
type |
string | True | Doit être system_assigned_managed_identity . |
Les options d’authentification via une identité managée affectée par l’utilisateur
Les options d’authentification pour Azure OpenAI sur vos données lors de l’utilisation d’une identité managée affectée par l’utilisateur.
Nom | Type | Requise | Description |
---|---|---|---|
managed_identity_resource_id |
string | True | ID de ressource de l’identité managée affectée par l’utilisateur à utiliser pour l’authentification. |
type |
string | True | Doit être user_assigned_managed_identity . |
Exemples
Configuration requise :
- Configurez les attributions de rôles à partir de l’identité managée affectée par le système Azure OpenAI à la ressource d’espace de travail Azure Machine Learning. Rôle nécessaire :
AzureML Data Scientist
. - Configurez les attributions de rôles de l’utilisateur vers la ressource Azure OpenAI. Rôle nécessaire :
Cognitive Services OpenAI User
. - Installez Az CLI et exécutez
az login
. - Définissez les variables d’environnement suivantes :
AzureOpenAIEndpoint
,ChatCompletionsDeploymentName
,ProjectResourceId
,IndexName
etIndexVersion
. - Exécutez
export MSYS_NO_PATHCONV=1
si vous utilisez MINGW.
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export ProjectResourceId='/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-id}'
export IndexName=testamlindex
export IndexVersion=2
Installez le dernier package pip openai
, azure-identity
.
import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
endpoint = os.environ.get("AzureOpenAIEndpoint")
deployment = os.environ.get("ChatCompletionsDeploymentName")
project_resource_id = os.environ.get("ProjectResourceId")
index_name = os.environ.get("IndexName")
index_version = os.environ.get("IndexVersion")
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default")
client = AzureOpenAI(
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider,
api_version="2024-02-15-preview",
)
completion = client.chat.completions.create(
model=deployment,
messages=[
{
"role": "user",
"content": "Who is DRI?",
},
],
extra_body={
"data_sources": [
{
"type": "azure_ml_index",
"parameters": {
"project_resource_id": project_resource_id,
"name": index_name,
"version": index_version,
"authentication": {
"type": "system_assigned_managed_identity"
},
}
}
]
}
)
print(completion.model_dump_json(indent=2))