Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Visualizzazione attuale:Versione del portale Foundry (versione classica) - Passa alla versione per il nuovo portale Foundry
Nota
I collegamenti in questo articolo potrebbero aprire contenuto nella nuova documentazione di Microsoft Foundry anziché nella documentazione di Foundry (versione classica) visualizzata.
La configurazione dell'agente standard usa risorse di Azure a tenant singolo gestite dal cliente per archiviare lo stato dell'agente e mantenere tutti i dati dell'agente sotto il controllo. Usare la configurazione standard quando è necessaria la sovranità dei dati completa, la conformità ai criteri di sicurezza aziendali o l'isolamento a livello di progetto.
In questa configurazione:
- Gli stati dell'agente (conversazioni, risposte) vengono archiviati nelle proprie risorse Azure.
- Si mantiene il controllo completo sulla residenza e l'accesso dei dati.
Suggerimento
Per una configurazione più semplice che usa risorse gestite da Microsoft, vedere Setup e scegliere l'opzione di configurazione dell'agente di base.
Prerequisiti
- Sottoscrizione Azure. Crearne uno gratuitamente.
- Un account Azure Cosmos DB per NoSQL. Per i requisiti di velocità effettiva, vedere Requisiti di velocità effettiva di Cosmos DB.
- Un account Archiviazione di Azure.
- Una risorsa Azure AI Search.
- Risorsa Azure Key Vault per la gestione dei segreti.
- interfaccia della riga di comando di Azure versione 2.50 o successiva. Eseguire
az --versionper verificare. - Autorizzazioni sufficienti per assegnare ruoli. È necessario il ruolo Proprietario o Amministratore accesso utenti nel gruppo di risorse.
- Modello compatibile con l'agente distribuito, ad esempio gpt-4o.
Panoramica delle risorse
Importante
le configurazioni Standard richiedono l'uso delle risorse BYO (Bring Your Own) in modo che tutti i dati dell'agente rimangano nel tenant Azure:
| Risorsa | Cosa archivia |
|---|---|
| Archiviazione di Azure (archiviazione file BYO) | File caricati dagli sviluppatori e dagli utenti finali |
| Azure AI Search (ricerca BYO) | Archivi vettoriali creati dall'agente |
| Azure Cosmos DB (archiviazione thread BYO) | Messaggi, cronologia conversazioni e metadati dell'agente |
Tutti i dati elaborati dal servizio Foundry Agent vengono archiviati automaticamente inattivi in queste risorse, consentendo di soddisfare i requisiti di conformità e gli standard di sicurezza aziendali.
Requisiti di velocità effettiva di Cosmos DB
Il Azure Cosmos DB per NoSQL account deve avere un limite di velocità effettiva totale di almeno 3000 UR/s. Sono supportate entrambe le modalità Throughput con provisioning e Serverless.
La configurazione standard effettua il provisioning di tre contenitori nell'account Cosmos DB, ognuno dei quali richiede 1000 UR/sec:
| Contenitore | Scopo |
|---|---|
thread-message-store |
Conversazioni dell'utente finale |
system-thread-message-store |
Messaggi di sistema interni |
agent-entity-store |
Metadati dell'agente (istruzioni, strumenti, nome) |
Per più progetti con lo stesso account Foundry, moltiplicare per il numero di progetti. Ad esempio, due progetti richiedono almeno 6000 UR/s (3 contenitori × 1000 UR/s × 2 progetti).
isolamento dei dati a livello progetto
L'installazione standard applica l'isolamento dei dati a livello di progetto per impostazione predefinita. Vengono forniti automaticamente due contenitori di archiviazione blob nel tuo account di archiviazione: uno per i file e uno per i dati di sistema temporanei (blocchi, incorporamenti). Viene effettuato il provisioning di tre contenitori nell'account Cosmos DB: uno per i thread utente, uno per i messaggi di sistema e uno per i dati di configurazione dell'agente, ad esempio istruzioni, strumenti e nomi. Questo comportamento predefinito riduce la complessità della configurazione, applicando comunque limiti di dati rigorosi tra i progetti.
Host di funzionalità
Gli host di funzionalità sono sotto-risorse sia nell'account che nel progetto che consentono l'interazione con il servizio Agent.
-
Host della funzionalità dell'account: ha un corpo di richiesta vuoto, ad eccezione del parametro
capabilityHostKind="Agents". - Project capability host: specifica le risorse per l'archiviazione dello stato dell'agente, ovvero risorse multi-tenant gestite da Microsoft (configurazione di base) o risorse a tenant singolo di proprietà del cliente (configurazione standard). L'host delle funzionalità del progetto funziona come le impostazioni del progetto.
Limitazioni
- Non è possibile aggiornare l'host di funzionalità dopo che è impostato per un progetto o un account.
Eseguire l'approvvigionamento delle risorse passo dopo passo
Nota
Il portale foundry supporta attualmente solo la configurazione dell'agente di base. Per configurare l'installazione dell'agente standard, usare i passaggi manuali o il modello di Bicep descritto in questa sezione.
Provisioning manuale
Seguire questa procedura per effettuare manualmente il provisioning di tutte le risorse necessarie per la configurazione dell'agente standard. Attendere circa 30-45 minuti per il processo di provisioning completo.
Fase 1: Creare risorse dipendenti
- Creare o riutilizzare le risorse seguenti. È possibile creare nuove risorse o passare l'ID risorsa di quelli esistenti:
- Azure Cosmos DB per l'account NoSQL
- Account di archiviazione di Azure
- Azure AI Search risorsa
- risorsa di Azure Key Vault (usata per la gestione di segreti e stringhe di connessione per l'infrastruttura dell'agente)
- [Facoltativa] Risorsa di applicazione Azure Insights
- [Facoltativo] Risorsa Fonderia esistente
Fase 2: Creare le risorse e le connessioni per la foundry
- Creare una risorsa Microsoft Foundry.
- Creare connessioni a livello di account:
- Creare una connessione account alla risorsa di Application Insights.
- Implementare gpt-4o o un altro modello compatibile con agenti.
- Creare un progetto.
- Creare connessioni di progetto:
- [Se specificato] Collegare la connessione alla risorsa Foundry.
- Connessione del progetto all'account di Archiviazione di Azure.
- Connessione del progetto alla risorsa Azure AI Search
- La connessione del progetto all'account Cosmos DB.
Fase 3: Assegnare ruoli all'identità gestita del progetto
L'identità gestita del progetto include sia l'identità gestita assegnata dal sistema (SMI) che l'identità gestita assegnata dall'utente (UMI).
- Assegnare l'identità gestita del progetto (per SMI) ai ruoli seguenti:
- Operatore Cosmos DB a livello di account per la risorsa Cosmos DB.
- Collaboratore dell'Account di Archiviazione a livello di account per la risorsa Account di Archiviazione.
Fase 4: Configurare gli host di funzionalità
- Impostare l'host delle funzionalità dell'account con una sezione delle proprietà vuota.
- Impostare l'host delle capacità del progetto con le connessioni Cosmos DB, Archiviazione di Azure e ricerca AI.
Fase 5: Assegnare autorizzazioni granulari per le risorse
- Assegnare l'identità gestita del progetto (sia SMI che UMI) ai ruoli seguenti negli ambiti delle risorse specificati:
-
Azure AI Search (assegnare prima o dopo la creazione dell'host di funzionalità):
- Collaboratore ai dati dell'indice di ricerca
- Collaboratore servizio di ricerca
-
Archiviazione BLOB di Azure Container:
<workspaceId>-azureml-blobstore- Collaboratore dei dati di Storage Blob
-
Archiviazione BLOB di Azure Container:
<workspaceId>-agents-blobstore- Proprietario dei dati dei BLOB di archiviazione
-
Cosmos DB per NoSQL Database:
enterprise_memory- Contributore dati integrato di Cosmos DB
- Ambito: livello di database per coprire tutti i contenitori (non è necessaria alcuna assegnazione di ruolo specifica del contenitore).
-
Azure AI Search (assegnare prima o dopo la creazione dell'host di funzionalità):
Fase 6: Concedere l'accesso per sviluppatori
- Assegnare tutti gli sviluppatori che devono creare o modificare agenti nel progetto il ruolo utente di intelligenza artificiale Azure nell'ambito del progetto.
Usare un modello di Bicep
Usare un account Azure OpenAI, un account Archiviazione di Azure esistente, un account Azure Cosmos DB per NoSQL o una risorsa Azure AI Search specificando l'ID completo della risorsa Azure Resource Manager (ARM) nel file del modello standard dell'agente.
Usare una risorsa OpenAI Azure esistente
Seguire la procedura descritta in Configurazione dell'ambiente per ottenere l'ID risorsa dell'account Foundry Tools.
Nel file modello di agente standard sostituire il segnaposto seguente:
existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
Usare un account di Archiviazione di Azure esistente per l'archiviazione file
Accedere al interfaccia della riga di comando di Azure e selezionare la sottoscrizione con l'account di archiviazione:
az loginEseguire il comando seguente per ottenere l'ID risorsa dell'account di archiviazione:
az storage account show --resource-group <your-resource-group> --name <your-storage-account> --query "id" --output tsvL'output è il
aiStorageAccountResourceIDvalore di cui hai bisogno nel template.Nel file modello di agente standard sostituire il segnaposto seguente:
aiStorageAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
Usare un account esistente di Azure Cosmos DB per NoSQL per l'archiviazione dei thread
Viene creato un Azure Cosmos DB per NoSQL account per ogni account Foundry. Per i requisiti di velocità effettiva e il ridimensionamento multiprogetto, vedere Requisiti di velocità effettiva di Cosmos DB.
Nota
Capacità di RU/s insufficiente nell'account Cosmos DB causa errori nel provisioning dell'host di funzionalità durante la distribuzione.
Accedere al interfaccia della riga di comando di Azure e selezionare la sottoscrizione con l'account Cosmos DB:
az loginEseguire il comando seguente per ottenere l'ID risorsa dell'account Azure Cosmos DB:
az cosmosdb show --resource-group <your-resource-group> --name <your-cosmosdb-account> --query "id" --output tsvL'output è il
cosmosDBResourceIdvalore di cui hai bisogno nel template.Nel file modello di agente standard sostituire il segnaposto seguente:
cosmosDBResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{cosmosDbAccountName}
Usare una risorsa di Azure AI Search esistente
Accedere al interfaccia della riga di comando di Azure e selezionare la sottoscrizione con la risorsa di ricerca:
az loginEseguire il comando seguente per ottenere l'ID risorsa Azure AI Search:
az search service show --resource-group <your-resource-group> --name <your-search-service> --query "id" --output tsvNel file modello di agente standard sostituire il segnaposto seguente:
aiSearchServiceResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}
Verificare la configurazione
Dopo aver completato il provisioning, verificare che la configurazione funzioni correttamente:
- Nel portale di Azure passare al progetto Foundry e verificare che tutte le connessioni (Archiviazione, Cosmos DB, Ricerca di intelligenza artificiale) siano visualizzate nelle impostazioni del progetto.
- Verificare che lo stato dell'host delle funzionalità sia riuscito sia per l'account che per il progetto.
- Verificare le assegnazioni di ruolo passando alla pagina Controllo di accesso (IAM) di ogni risorsa e confermando che l'identità gestita del progetto ha i ruoli previsti.
- Creare un agente di test per confermare la funzionalità end-to-end.
Risolvere i problemi comuni
| Sintomo | Causa | Risoluzione |
|---|---|---|
CapabilityHostProvisioningFailed o lo stato dell'host della funzionalità mostra Non riuscito |
Velocità effettiva di Cosmos DB insufficiente | Verificare che l'account Cosmos DB abbia almeno 3000 UR/sec (1000 UR/sec per contenitore × 3 contenitori). Per più progetti, moltiplicare per il numero di progetti. |
403 Forbidden quando l'agente legge o scrive file |
Assegnazioni di ruolo di archiviazione mancanti | Verificare che l'identità gestita del progetto disponga del ruolo di Collaboratore ai dati Blob di Archiviazione sul contenitore <workspaceId>-azureml-blobstore e del ruolo di Proprietario dei dati Blob di Archiviazione sul contenitore <workspaceId>-agents-blobstore. |
SearchIndexNotFound o 403 nelle operazioni di ricerca |
Ruoli di ricerca mancanti | Verificare che l'identità gestita del progetto abbia sia Search Index Data Contributor che Search Service Contributor sulla risorsa Azure AI Search. |
AuthorizationFailed durante la creazione o la modifica di agenti |
Ruolo utente mancante | Assegnare il ruolo utente di Azure AI allo sviluppatore nell'ambito del progetto. |
La richiesta di aggiornamento all'host di funzionalità restituisce 400 BadRequest |
Aggiornamento non supportato | Gli host di funzionalità non possono essere aggiornati dopo la creazione. Eliminare e ricreare il progetto se sono necessarie modifiche alla configurazione. |