Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La configuration de l’agent standard utilise des ressources Azure client gérées par le client pour stocker l’état de l’agent et conserver toutes les données de l’agent sous votre contrôle. Utilisez la configuration standard lorsque vous avez besoin d’une souveraineté complète des données, de la conformité avec les stratégies de sécurité d’entreprise ou de l’isolation au niveau du projet.
Dans cette configuration :
- Les états de l’agent (conversations, réponses) sont stockés dans vos propres ressources Azure.
- Vous conservez un contrôle total sur la résidence et l’accès aux données.
Conseil
Pour une configuration plus simple qui utilise des ressources gérées par Microsoft, consultez Configuration de l’environnement et choisissez l’option de configuration de l’agent de base.
Conditions préalables
- Un abonnement Azure. Créez-en un gratuitement.
- Un Azure Cosmos DB pour NoSQL compte. Pour connaître les exigences en matière de débit, consultez les exigences de débit Cosmos DB.
- Un compte stockage Azure.
- Ressource Recherche Azure AI.
- Ressource Azure Key Vault pour la gestion des secrets.
- Azure CLI version 2.50 ou ultérieure. Exécutez
az --versionpour vérifier. - Autorisations suffisantes pour attribuer des rôles. Vous avez besoin du rôle Propriétaire ou Administrateur de l’accès utilisateur sur le groupe de ressources.
- Modèle déployé compatible avec un agent (par exemple, gpt-4o).
Vue d’ensemble des ressources
Important
les configurations Standard vous obligent à apporter vos propres ressources BYO afin que toutes les données de l’agent restent dans votre locataire Azure :
| Ressource | Qu’est-ce qu’il stocke ? |
|---|---|
| stockage Azure (stockage de fichiers BYO) | Fichiers chargés par les développeurs et les utilisateurs finaux |
| Recherche Azure AI (recherche BYO) | Magasins vectoriels créés par l’agent |
| Azure Cosmos DB (BYO stockage de threads) | Messages, historique des conversations et métadonnées de l’agent |
Toutes les données traitées par le service Foundry Agent sont automatiquement stockées au repos dans ces ressources, ce qui vous aide à répondre aux exigences de conformité et aux normes de sécurité d’entreprise.
Exigences en matière de débit Cosmos DB
Votre Azure Cosmos DB pour NoSQL compte doit avoir une limite de débit totale d’au moins 3000 RU/s. Les modes débit approvisionné et serverless sont tous deux pris en charge.
La configuration standard provisionne trois conteneurs dans votre compte Cosmos DB, chacune nécessitant 1 000 RU/s :
| Conteneur | Objectif |
|---|---|
thread-message-store |
Conversations des utilisateurs finaux |
system-thread-message-store |
Messages système internes |
agent-entity-store |
Métadonnées de l’agent (instructions, outils, nom) |
Pour plusieurs projets sous le même compte Foundry, multipliez par le nombre de projets. Par exemple, deux projets nécessitent au moins 6 000 RU/s (3 conteneurs × 1 000 RU/s × 2 projets).
Isolation des données au niveau du projet
La configuration standard applique l’isolation des données au niveau du projet par défaut. Deux conteneurs de stockage blob sont automatiquement attribués dans votre compte de stockage : un pour les fichiers et un pour les données système intermédiaires (blocs, embeddings). Trois conteneurs sont provisionnés dans votre compte Cosmos DB : un pour les threads utilisateur, un pour les messages système et un pour les données de configuration de l’agent, comme les instructions, les outils et les noms. Ce comportement par défaut réduit la complexité de la configuration tout en appliquant des limites de données strictes entre les projets.
Hôtes de capacité
Les hôtes de capacité sont des sous-ressources du compte et du projet qui permettent l’interaction avec le Service d'Agent.
-
Hôte de fonctionnalité de compte : possède un corps de requête vide, à l’exception du paramètre
capabilityHostKind="Agents". - hôte de capacité Project : spécifie les ressources pour le stockage de l’état de l’agent, soit les ressources multilocataires gérées par Microsoft (configuration de base) ou les ressources monolocataires appartenant au client (configuration standard). L’hôte de capacité du projet fonctionne comme paramètres du projet.
Limitations
- Vous ne pouvez pas mettre à jour l’hôte de fonctionnalité une fois qu’il a été défini pour un projet ou un compte.
Provisionner des ressources étape par étape
Note
Le portail Foundry prend actuellement en charge uniquement la configuration de l’agent de base. Pour configurer la configuration de l’agent standard, utilisez les étapes manuelles ou le modèle Bicep décrit dans cette section.
Approvisionnement manuel
Suivez ces étapes pour provisionner manuellement toutes les ressources nécessaires à la configuration de l’agent standard. Laissez environ 30 à 45 minutes pour le processus d’approvisionnement complet.
Phase 1 : Créer des ressources dépendantes
- Créez ou réutilisez les ressources suivantes. Vous pouvez créer de nouvelles ressources ou transmettre l’ID de ressource des ressources existantes :
- Azure Cosmos DB pour NoSQL compte
- compte stockage Azure
- ressource Recherche Azure AI
- Azure Key Vault ressource (utilisée pour la gestion des secrets et des chaînes de connexion pour l’infrastructure de l’agent)
- [Facultatif] ressource Azure Application Insights
- [Facultatif] Ressource Foundry existante
Phase 2 : Créer des ressources et des connexions de fonderie
- Créez une ressource Microsoft Foundry.
- Créer des connexions au niveau du compte :
- Créez une connexion de compte à la ressource Application Insights.
- Déployez gpt-4o ou un autre modèle compatible agent.
- Créez un projet.
- Créer des connexions de projet :
- [Si fourni] Connexion du projet à la ressource Foundry.
- Connexion projetée au compte de stockage Azure.
- Project connexion à la ressource Recherche Azure AI.
- Projet de connection au compte de Cosmos DB.
Phase 3 : Attribuer des rôles à l’identité managée du projet
L’identité managée du projet inclut à la fois l’identité managée affectée par le système (SMI) et l’identité managée affectée par l’utilisateur (UMI).
- Attribuez l’identité managée du projet (pour SMI) aux rôles suivants :
- Opérateur Cosmos DB au niveau du compte pour la ressource Cosmos DB.
- Contributeur de compte de stockage au niveau du compte de stockage pour la ressource compte de stockage.
Phase 4 : Configurer des hôtes de capacité
- Définissez l’hôte de fonctionnalité de compte avec une section de propriétés vide.
- Définissez l’hôte de capacité de projet avec les connexions Cosmos DB, stockage Azure et AI Search.
Phase 5 : Attribuer des autorisations de ressources granulaires
- Attribuez à l’identité managée du projet (SMI et UMI) les rôles suivants sur les étendues de ressources spécifiées :
-
Recherche Azure AI (attribuer avant ou après la création de l'hôte de fonctionnalités) :
- Contributeur aux données d’index de recherche
- Contributeur de service de recherche
- conteneur Stockage Blob Azure :
<workspaceId>-azureml-blobstore- Contributeur de données Blob de stockage
- conteneur Stockage Blob Azure :
<workspaceId>-agents-blobstore- Propriétaire des blobs de stockage
-
Cosmos DB pour NoSQL base de données :
enterprise_memory- Contributeur de données intégré Cosmos DB
- Étendue : Niveau de la base de données pour couvrir tous les conteneurs (aucune attribution de rôle spécifique à un conteneur n’est nécessaire).
-
Recherche Azure AI (attribuer avant ou après la création de l'hôte de fonctionnalités) :
Phase 6 : Accorder l’accès aux développeurs
- Attribuez à tous les développeurs qui doivent créer ou modifier des agents dans le projet le rôle Azure utilisateur IA sur l’étendue du projet.
Utiliser un modèle Bicep
Utilisez un compte OpenAI existant, un compte stockage Azure, un compte Azure Cosmos DB pour NoSQL, ou une ressource Recherche Azure AI en fournissant l'ID de ressource complet d'Azure Resource Manager (ARM) dans le fichier de modèle d'agent standard.
Utiliser une ressource OpenAI Azure existante
Suivez les étapes de configuration de l’environnement pour obtenir l’ID de ressource du compte Foundry Tools.
Dans le fichier de modèle d’agent standard, remplacez l’espace réservé suivant :
existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
Utiliser un compte stockage Azure existant pour le stockage de fichiers
Connectez-vous au Azure CLI et sélectionnez l’abonnement avec votre compte de stockage :
az loginExécutez la commande suivante pour obtenir l’ID de ressource de votre compte de stockage :
az storage account show --resource-group <your-resource-group> --name <your-storage-account> --query "id" --output tsvLa sortie est la
aiStorageAccountResourceIDvaleur dont vous avez besoin dans le modèle.Dans le fichier de modèle d’agent standard, remplacez l’espace réservé suivant :
aiStorageAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
Utiliser un compte Azure Cosmos DB pour NoSQL existant pour le stockage de threads
Un Azure Cosmos DB pour NoSQL compte est créé pour chaque compte Foundry. Pour connaître les exigences en matière de débit et la mise à l’échelle de plusieurs projets, consultez les exigences en matière de débit Cosmos DB.
Note
Une capacité de RU/s insuffisante dans le compte Cosmos DB entraîne des échecs d’approvisionnement de l’hôte de capacité pendant le déploiement.
Connectez-vous au Azure CLI et sélectionnez l’abonnement avec votre compte Cosmos DB :
az loginExécutez la commande suivante pour obtenir votre ID de ressource de compte Azure Cosmos DB :
az cosmosdb show --resource-group <your-resource-group> --name <your-cosmosdb-account> --query "id" --output tsvLa sortie est la
cosmosDBResourceIdvaleur dont vous avez besoin dans le modèle.Dans le fichier de modèle d’agent standard, remplacez l’espace réservé suivant :
cosmosDBResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{cosmosDbAccountName}
Utiliser une ressource Recherche Azure AI existante
Connectez-vous au Azure CLI et sélectionnez l’abonnement avec votre ressource de recherche :
az loginExécutez la commande suivante pour obtenir votre ID de ressource Recherche Azure AI :
az search service show --resource-group <your-resource-group> --name <your-search-service> --query "id" --output tsvDans le fichier de modèle d’agent standard, remplacez l’espace réservé suivant :
aiSearchServiceResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}
Vérifier votre configuration
Une fois l’approvisionnement terminé, vérifiez que l’installation fonctionne correctement :
- Dans le portail Azure, accédez à votre projet Foundry et vérifiez que toutes les connexions (Stockage, Cosmos DB, Recherche IA) apparaissent sous les paramètres du projet.
- Vérifiez que l’état de l’hôte de capacité s’affiche comme Réussi pour le compte et le projet.
- Vérifiez les attributions de rôles en accédant à la page contrôle d’accès (IAM) de chaque ressource et en confirmant que l’identité managée du projet a les rôles attendus.
- Créez un agent de test pour confirmer la fonctionnalité de bout en bout.
Résoudre les problèmes courants
| Symptôme | Cause | Résolution |
|---|---|---|
CapabilityHostProvisioningFailed ou l’état de l’hôte de fonctionnalités affiche Échoué |
Débit Cosmos DB insuffisant | Vérifiez que votre compte Cosmos DB a au moins 3000 RU/s (1 000 RU/s par conteneur × 3 conteneurs). Pour plusieurs projets, multipliez par le nombre de projets. |
403 Forbidden lorsque l’agent lit ou écrit des fichiers |
Attributions de rôles de stockage manquantes | Vérifiez que l’identité managée du projet dispose du rôle Contributeur aux données Blob de stockage sur le <workspaceId>-azureml-blobstore conteneur et du rôle Propriétaire des données Blob de stockage sur le <workspaceId>-agents-blobstore conteneur. |
SearchIndexNotFound ou 403 sur les opérations de recherche |
Rôles de recherche manquants | Vérifiez que l’identité managée du projet dispose à la fois des rôles Search Index Data Contributor et Search Service Contributor sur votre ressource Recherche Azure AI. |
AuthorizationFailed lors de la création ou de la modification d’agents |
Rôle d’utilisateur manquant | Attribuez le rôle Utilisateur Azure AI au développeur dans le cadre du projet. |
Demande de mise à jour à l'hôte de capacité retourne 400 BadRequest |
Mise à jour non prise en charge | Les hôtes de capacité ne peuvent pas être mis à jour après la création. Supprimez et recréez le projet si des modifications de configuration sont nécessaires. |