Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La configuración del agente estándar usa recursos de Azure administrados por el cliente para almacenar el estado del agente y mantener todos los datos del agente bajo su control. Utilice la configuración estándar cuando necesite una soberanía de datos completa, el cumplimiento de las políticas de seguridad empresarial o el aislamiento a nivel de proyecto.
En esta configuración:
- Los estados del agente (conversaciones, respuestas) se almacenan en sus propios recursos Azure.
- Mantiene un control completo sobre la residencia y el acceso de datos.
Sugerencia
Para obtener una configuración más sencilla que use recursos administrados por Microsoft, consulte Configuración del entorno y elija la opción de configuración básica del agente.
Prerrequisitos
- Una suscripción Azure. Crear uno gratis.
- Una cuenta Azure Cosmos DB para NoSQL. Para conocer los requisitos de rendimiento, consulte Requisitos de rendimiento de Cosmos DB.
- Una cuenta Azure Storage.
- Un recurso Azure AI Search.
- Un recurso Azure Key Vault para la administración de secretos.
- Azure CLI versión 2.50 o posterior. Ejecute
az --versionpara comprobarlo. - Permisos suficientes para asignar roles. Necesita el rol Owner o User Access Administrator en el grupo de recursos.
- Un modelo implementado compatible con agente (por ejemplo, gpt-4o).
Información general de recursos
La configuración estándar requiere que proporcione sus propios recursos (BYO) para que todos los datos del agente permanezcan en su cuenta de Azure.
| Resource | Lo que almacena |
|---|---|
| Azure Storage (Storage de archivos BYO) | Archivos cargados por desarrolladores y usuarios finales |
| Azure AI Search (BYO - Servicio de Búsqueda Personalizada) | Almacenes de vectores creados por el agente |
| Azure Cosmos DB (byO Thread Storage) | Mensajes, historial de conversaciones y metadatos del agente |
Todos los datos procesados por foundry Agent Service se almacenan automáticamente en reposo en estos recursos, lo que le ayuda a cumplir los requisitos de cumplimiento y a los estándares de seguridad de la empresa.
Requisitos de rendimiento de Cosmos DB
La cuenta de Cosmos DB para NoSQL Azure debe tener un límite de rendimiento total de al menos 3000 RU/s. Se admiten tanto el rendimiento aprovisionado como los modos sin servidor.
La configuración estándar aprovisiona tres contenedores en la cuenta de Cosmos DB, cada una de las cuales requiere 1000 RU/s:
| Contenedor | Propósito |
|---|---|
thread-message-store |
Conversaciones de usuario final |
system-thread-message-store |
Mensajes internos del sistema |
agent-entity-store |
Metadatos del agente (instrucciones, herramientas, nombre) |
Para varios proyectos en la misma cuenta de Foundry, multiplique por el número de proyectos. Por ejemplo, dos proyectos requieren al menos 6000 RU/s (3 contenedores × 1000 RU/s × 2 proyectos).
aislamiento de datos a nivel de proyecto
La configuración estándar impone el aislamiento de datos de nivel de proyecto de forma predeterminada. Dos contenedores de almacenamiento de blobs se aprovisionan automáticamente en tu cuenta de almacenamiento: uno para los archivos y otro para los datos del sistema intermedios (incrustaciones, fragmentos). Se aprovisionan tres contenedores en la cuenta de Cosmos DB: uno para subprocesos de usuario, uno para mensajes del sistema y otro para los datos de configuración del agente, como instrucciones, herramientas y nombres. Este comportamiento predeterminado reduce la complejidad de la configuración mientras se siguen aplicando límites de datos estrictos entre proyectos.
Hosts de funcionalidad
Capability hosts son subrecursos dentro de la cuenta y el proyecto que permiten la interacción con el servicio de agente.
-
Host de funcionalidad de la cuenta: tiene un cuerpo de solicitud vacío, excepto para el parámetro
capabilityHostKind="Agents". - Host de capacidad de proyecto: Especifica los recursos para almacenar el estado del agente, ya sean recursos multicliente gestionados por Microsoft (configuración básica) o recursos de un solo inquilino propiedad del cliente (configuración estándar). El host de funcionalidad del proyecto funciona como las configuraciones del proyecto.
Limitaciones
- No se puede actualizar el anfitrión de capacidades después de establecerlo para un proyecto o una cuenta.
Aprovisionamiento de recursos paso a paso
Nota:
Actualmente, el portal de Foundry solo admite la configuración básica del agente. Para configurar la configuración del agente estándar, use los pasos manuales o la plantilla de Bicep que se describe en esta sección.
Aprovisionamiento manual
Siga estos pasos para aprovisionar manualmente todos los recursos necesarios para la configuración del agente estándar. Permita aproximadamente entre 30 y 45 minutos para el proceso de aprovisionamiento completo.
Fase 1: Creación de recursos dependientes
- Cree o reutilice los siguientes recursos. Puede crear nuevos recursos o pasar el identificador de recurso de los existentes:
- Cuenta de Azure Cosmos DB para NoSQL
- cuenta de Azure Storage
- recurso de Azure AI Search
- Azure Key Vault recurso (que se usa para administrar secretos y cadenas de conexión para la infraestructura del agente)
- [Opcional] recurso de Azure Application Insights
- [Opcional] Recurso de fundición existente
Fase 2: Crear recursos y conexiones de fundición
- Cree un recurso de Microsoft Foundry.
- Cree conexiones de nivel de cuenta:
- Cree una conexión de cuenta al recurso de Application Insights.
- Implemente gpt-4o u otro modelo compatible con el agente.
- Cree un project.
- Cree conexiones de proyecto:
- Si se proporciona, conecte el proyecto al recurso Foundry.
- Conectar a la cuenta de Azure Storage.
- Conexión del proyecto al recurso de Azure AI Search.
- Conexión del proyecto a la cuenta de Cosmos DB.
Fase 3: Asignar roles a la identidad administrada del proyecto
La identidad administrada del proyecto incluye tanto la identidad administrada asignada por el sistema (SMI) como la identidad administrada asignada por el usuario (UMI).
- Asigne a la identidad administrada del proyecto (para SMI) los siguientes roles:
- Operador de Cosmos DB en el nivel de cuenta del recurso de Cosmos DB.
- Colaborador de la Cuenta de Almacenamiento a nivel de cuenta para el recurso de cuenta de almacenamiento.
Fase 4: Configurar los hosts de capacidad
- Establezca el host de capacidad de la cuenta con una sección de propiedades vacías.
- Establezca el host de capacidad del proyecto con las conexiones de Cosmos DB, Azure Storage y AI Search.
Fase 5: Asignación de permisos de recursos granulares
- Asigne a la identidad administrada del proyecto (SMI y UMI) los siguientes roles en los ámbitos de recursos especificados:
-
Azure AI Search (asigne antes o después de la creación del host de funcionalidad):
- Colaborador de datos de índice de búsqueda
- colaborador de Search Service
-
Azure Blob Storage Container:
<workspaceId>-azureml-blobstore- colaborador de datos de blobs de Storage
-
Azure Blob Storage Container:
<workspaceId>-agents-blobstore- propietario de datos de blobs de Storage
-
Cosmos DB para base de datos NoSQL:
enterprise_memory- Colaborador de datos integrado de Cosmos DB
- Ámbito: nivel de base de datos para cubrir todos los contenedores (no se necesita ninguna asignación de roles específica del contenedor individual).
-
Azure AI Search (asigne antes o después de la creación del host de funcionalidad):
Fase 6: Conceder acceso de desarrollador
- Asigne a todos los desarrolladores que necesiten crear o editar agentes en el proyecto el rol de Azure AI User en el ámbito del proyecto.
Uso de una plantilla de Bicep
Usa una cuenta de Azure OpenAI existente, una cuenta de Azure Storage existente, una cuenta de Azure Cosmos DB para NoSQL existente o un recurso de Azure AI Search proporcionando el identificador de recurso completo de Azure Resource Manager (ARM) en el archivo de plantilla del agente estándar
Uso de un recurso Azure OpenAI existente
Siga los pasos descritos en Configuración del entorno para obtener el identificador de recurso de la cuenta de Foundry Tools.
En el archivo de plantilla para agentes estándar, reemplace el marcador de posición siguiente:
existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
Usar una cuenta de almacenamiento de Azure existente para el almacenamiento de archivos
Inicie sesión en el Azure CLI y seleccione la suscripción con la cuenta de storage:
az loginEjecute el siguiente comando para obtener el identificador de recurso de la cuenta de storage:
az storage account show --resource-group <your-resource-group> --name <your-storage-account> --query "id" --output tsvLa salida es el valor
aiStorageAccountResourceIDque necesita en la plantilla.En el archivo de plantilla para agentes estándar, reemplace el marcador de posición siguiente:
aiStorageAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
Uso de una cuenta existente de Azure Cosmos DB para NoSQL para el almacenamiento de subprocesos
Se crea una Azure cuenta de Cosmos DB para NoSQL para cada cuenta de Foundry. Para conocer los requisitos de rendimiento y el escalado de varios proyectos, consulte Requisitos de rendimiento de Cosmos DB.
Nota:
Una capacidad insuficiente de RU/s en la cuenta de Cosmos DB genera errores de aprovisionamiento del host de capacidad durante la implementación.
Inicie sesión en el Azure CLI y seleccione la suscripción con su cuenta de Cosmos DB:
az loginEjecute el siguiente comando para obtener el identificador de recurso de la cuenta de Cosmos DB de Azure:
az cosmosdb show --resource-group <your-resource-group> --name <your-cosmosdb-account> --query "id" --output tsvLa salida es el valor
cosmosDBResourceIdque necesita en la plantilla.En el archivo de plantilla para agentes estándar, reemplace el marcador de posición siguiente:
cosmosDBResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{cosmosDbAccountName}
Uso de un recurso de Azure AI Search existente
Inicie sesión en el Azure CLI y seleccione la suscripción con el recurso de búsqueda:
az loginEjecute el siguiente comando para obtener el identificador de recurso de Azure AI Search:
az search service show --resource-group <your-resource-group> --name <your-search-service> --query "id" --output tsvEn el archivo de plantilla para agentes estándar, reemplace el marcador de posición siguiente:
aiSearchServiceResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}
Comprobación de la configuración
Después de completar el aprovisionamiento, compruebe que la configuración funciona correctamente:
- En el portal de Azure, vaya a su proyecto Foundry y confirme que todas las conexiones (Storage, Cosmos DB, AI Search) aparecen en la configuración del proyecto.
- Compruebe que el estado del host de capacidad se muestre como Succeeded para la cuenta y el proyecto.
- Para comprobar las asignaciones de roles, vaya a la página Access control (IAM) de cada recurso y confirme que la identidad administrada del proyecto tiene los roles esperados.
- Cree un agente de prueba para confirmar la funcionalidad de un extremo a otro.
Solucionar problemas comunes
| Síntoma | Causa | Resolución |
|---|---|---|
CapabilityHostProvisioningFailed o el estado del host de capacidad indica Error |
Rendimiento insuficiente de Cosmos DB | Asegúrese de que la cuenta de Cosmos DB tiene al menos 3000 RU/s (1000 RU/s por contenedor × 3 contenedores). Para varios proyectos, multiplique por el número de proyectos. |
403 Forbidden cuando el agente lee o escribe archivos |
Faltan asignaciones de roles de almacenamiento | Compruebe que la identidad administrada del proyecto tiene el rol Storage Blob Data Contributor en el contenedor <workspaceId>-azureml-blobstore y el rol Storage Blob Data Owner en el contenedor <workspaceId>-agents-blobstore. |
SearchIndexNotFound o 403 en las operaciones de búsqueda |
Faltan roles de búsqueda | Confirme que la identidad administrada del proyecto tiene tanto Search Index Data Contributor como Search Service Contributor en su recurso de Azure AI Search. |
AuthorizationFailed al crear o editar agentes |
Falta el rol de usuario | Asigne el rol Azure AI User al desarrollador en el ámbito del proyecto. |
La solicitud de actualización al host de capacidad devuelve 400 BadRequest |
Actualización no admitida | Los hosts de capacidad no se pueden actualizar después de la creación. Elimine y vuelva a crear el project si se necesitan cambios de configuración. |