Einrichten von Standard-Agent-Ressourcen

Das Standard-Agent-Setup verwendet vom Kunden verwaltete Azure-Ressourcen, um den Agentstatus zu speichern und alle Agentdaten unter Ihrer Kontrolle zu behalten. Verwenden Sie das Standardsetup, wenn Sie vollständige Datenhoheit, Compliance mit Unternehmenssicherheitsrichtlinien oder Isolation auf Projektebene benötigen.

In diesem Setup:

  • Agentzustände (Unterhaltungen, Antworten) werden in Ihren eigenen Azure-Ressourcen gespeichert.
  • Sie behalten die vollständige Kontrolle über die Datenresidenz und den Zugriff.

Tipp

Eine einfachere Einrichtung, die von Microsoft verwaltete Ressourcen verwendet, finden Sie unter "Umgebungssetup ", und wählen Sie die Grundlegende Agent-Setupoption aus.

Voraussetzungen

Ressourcenübersicht

Wichtig

Standardsetups erfordern, dass Sie BYO-Ressourcen (Bring Your Own) verwenden, damit alle Agentdaten in Ihrem Azure-Mandanten verbleiben:

Ressource Was es speichert
Azure Storage (BYO-Dateispeicher) Von Entwicklern und Endbenutzern hochgeladene Dateien
Azure KI-Suche (BYO-Suche) Vom Agent erstellte Vektorspeicher
Azure Cosmos DB (BYO-Threadspeicher) Nachrichten, Aufgezeichnete Unterhaltungen und Agentmetadaten

Alle vom Foundry Agent Service verarbeiteten Daten werden automatisch in diesen Ressourcen gespeichert und helfen Ihnen dabei, Complianceanforderungen und Unternehmenssicherheitsstandards zu erfüllen.

Cosmos DB Durchsatzanforderungen

Ihr Azure Cosmos DB für NoSQL-Konto muss über eine Gesamtdurchsatzgrenze von mindestens 3000 RU/s verfügen. Sowohl der bereitgestellte Durchsatz als auch der Serverless-Modus werden unterstützt.

Die Standardeinrichtung stellt fünf Container vor, die jeweils 1000 RU/s erfordern:

Container Zweck
thread-message-store Endbenutzerkommunikationen
system-thread-message-store Interne Systemmeldungen
agent-entity-store Agentmetadaten (Anweisungen, Tools, Name)
agent-definitions-v1 Agent-Metadaten (Anweisungen, Tools, Name, Versionen)
run-state-v1 Interne Nachrichten und Konversationen mit Endbenutzern

thread-message-store, system-thread-message-storeund agent-entity-store sind Teil des Foundry Agent Service (Classic) Standard Setup.

Foundry Agent Service (Neu) verwendet agent-definitions-v1 und run-state-v1.

Die älteren Container gehören zur klassischen Oberfläche und werden nicht von der neuen Laufzeit verwendet.

Warnung

Die Laufzeiten des Classic und New Foundry Agent Service verwenden unterschiedliche Cosmos DB-Container.

Datenisolation auf Projektebene

Standardsetup erzwingt standardmäßig die Datenisolation auf Projektebene. In Ihrem Speicherkonto werden automatisch zwei Blobspeichercontainer bereitgestellt: eine für Dateien und eine für Zwischensystemdaten (Blöcke, Einbettungen). Drei Container werden in Ihrem Cosmos DB-Konto bereitgestellt: eines für Benutzerthreads, eine für Systemnachrichten und eine für Agentkonfigurationsdaten wie Anweisungen, Tools und Namen. Dieses Standardverhalten reduziert die Einrichtungskomplexität und erzwingt gleichzeitig strenge Datengrenzen zwischen Projekten.

Fähigkeitseinstellungen

Funktionseinstellungen sind Eigenschaften für das Foundry-Konto und das Projekt, das deklariert, welche Azure Ressourcen Agentstatus, Vektordaten und Dateien enthalten. Legen Sie diese auf Kontoebene fest, um Standardeinstellungen für die Projekte des Kontos zu definieren, und überschreiben Sie die Einstellung für einen einzelnen Store innerhalb eines Projekts, wenn dieses eine andere Ressource benötigt.

Der Agentdienst stellt während des Bereitstellungsvorgangs die erforderliche zugrunde liegende Infrastruktur und die Verbindungen zu Ihren Ressourcen bereit. Diese funktionseinstellungenverwalteten Verbindungen sind während der Verwendung unveränderlich, sodass Sie sie nicht direkt bearbeiten oder löschen können. Sie können die Funktionseinstellungen für ein vorhandenes Projekt auch nicht aktualisieren. Um zu ändern, welche Ressourcen ein Projekt verwendet, löschen Sie das Projekt, und erstellen Sie es mit den gewünschten Einstellungen neu.

Die vollständige Einstellungsliste, Berechtigungen und Bicep Beispiele finden Sie unter Konfigurieren von Agent-Funktionseinstellungen.

Bereitstellen von Ressourcen schritt für Schritt

Manuelle Bereitstellung

Führen Sie die folgenden Schritte aus, um alle Ressourcen, die für die Standardmäßige Agent-Einrichtung erforderlich sind, manuell bereitzustellen. Planen Sie ungefähr 30-45 Minuten für den kompletten Bereitstellungsprozess ein.

Phase 1: Erstellen abhängiger Ressourcen

  1. Erstellen oder wiederverwenden Sie die folgenden Ressourcen. Sie können neue Ressourcen erstellen oder die Ressourcen-ID vorhandener Ressourcen übergeben:
    • Azure Cosmos DB für NoSQL-Konto
    • Azure Storage-Konto
    • Azure KI-Suche-Ressource
    • Azure Key Vault-Ressource (wird zum Verwalten von geheimen Schlüsseln und Verbindungszeichenfolgen für die Agentinfrastruktur verwendet)
    • [Optional] Azure-Anwendung Insights-Ressource
    • [Optional] Vorhandene Gießereiressource

Phase 2: Erstellen von Foundry-Ressourcen und Funktionseinstellungen

  1. Erstellen Sie eine Microsoft Foundry-Ressource.
  2. Erstellen von Verbindungen auf Kontoebene:
    • Erstellen Sie eine Kontoverbindung mit der Application Insights-Ressource.
  3. Stellen Sie gpt-4o oder ein anderes agentkompatibles Modell bereit.
  4. Legen Sie die Einstellungen für Funktionen für das Konto fest und verwenden Sie dabei die Ressourcen-IDs Ihres Cosmos DB-Kontos, Ihres Azure KI-Suche-Diensts und Ihres Speicherkontos.
  5. Erstellen Sie ein Projekt. Das Projekt übernimmt die Einstellungen für Kontofunktionen, sofern Sie diese nicht für einen einzelnen Store außer Kraft setzen. Der Agentdienst stellt die erforderliche zugrunde liegende Infrastruktur und die Verbindungen zu Ihren Ressourcen im Rahmen dieses Schritts bereit.

Phase 3: Weisen Sie der projektverwalteten Identität Laufzeitrollen zu

Die im Rahmen des Projekts verwaltete Identität umfasst sowohl die vom System zugewiesene verwaltete Identität (System-assigned Managed Identity, SMI) als auch die vom Benutzer zugewiesene verwaltete Identität (User-assigned Managed Identity, UMI). Diese Rollen regeln den Laufzeitzugriff für aktive Agenten. Sie sind getrennt von den Berechtigungen, die die bereitstellende Identität benötigt, und das eine ersetzt das andere nicht.

  1. Weisen Sie die projektverwaltete Identität (für SMI) den folgenden Rollen zu:
    • Cosmos DB Operator für die Ressource Cosmos DB auf Kontoebene.
    • Speicherkontomitwirkender auf Kontoebene für die Speicherkontoressource.

Phase 4: Zuweisen präziser Ressourcenberechtigungen

  1. Weisen Sie die vom Projekt verwaltete Identität (SMI und UMI) den folgenden Rollen für die angegebenen Ressourcenbereiche zu:
    • Azure KI-Suche:
      • Suchindexdatenmitwirkender
      • Suchdienstmitwirkender
    • Azure Blob Storage-Container: <workspaceId>-azureml-blobstore
      • Mitwirkender an Storage-Blobdaten
    • Azure Blob Storage-Container: <workspaceId>-azureml-agent
      • Besitzer von Speicherblobdaten
    • Cosmos DB für NoSQL-Datenbank: enterprise_memory
      • Integrierter Mitwirkender an Cosmos DB-Daten
      • Bereich: Datenbankebene, um alle Container abzudecken (es ist keine einzelne containerspezifische Rollenzuweisung erforderlich).

Phase 5: Gewähren des Entwicklerzugriffs

  1. Weisen Sie allen Entwicklern, die Agents im Projekt erstellen oder bearbeiten müssen, die Rolle " Foundry User " im Projektbereich zu.

    Wichtig

    Die Foundry-RBAC-Rollen wurden kürzlich umbenannt. Foundry User, Foundry Owner, Foundry Account Owner und Foundry Project Manager wurden zuvor Azure KI-Benutzer, Azure KI-Besitzer, Azure KI-Kontobesitzer und Azure AI Project Manager benannt. Möglicherweise werden die vorherigen Namen an einigen Stellen weiterhin angezeigt, während der Umbenennungsrollout ausgeführt wird. Die Rollen-IDs und Kernberechtigungen bleiben durch die Umbenennung unverändert.

Verwenden einer Bicep-Vorlage

Verwenden Sie ein vorhandenes Azure OpenAI-, Azure Storage-Konto, Azure Cosmos DB für NoSQL-Konto oder Azure KI-Suche-Ressource, indem Sie die vollständige Azure Resource Manager (ARM)-Ressourcen-ID in der Standard-Agent-Vorlagendatei bereitstellen.

Verwenden einer vorhandenen Azure OpenAI-Ressource

  1. Führen Sie die Schritte im Umgebungssetup aus, um die Ressourcen-ID des Findry Tools-Kontos abzurufen.

  2. Ersetzen Sie in der Standard-Agent-Vorlagendatei den folgenden Platzhalter:

    existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
    

Verwenden eines vorhandenen Azure Storage-Kontos für die Dateispeicherung

  1. Melden Sie sich bei der Azure CLI an, und wählen Sie das Abonnement mit Ihrem Speicherkonto aus:

    az login
    
  2. Führen Sie den folgenden Befehl aus, um die Ressourcen-ID Ihres Speicherkontos abzurufen:

    az storage account show --resource-group <your-resource-group> --name <your-storage-account> --query "id" --output tsv
    

    Die Ausgabe ist der aiStorageAccountResourceID Wert, den Sie in der Vorlage benötigen.

  3. Ersetzen Sie in der Standard-Agent-Vorlagendatei den folgenden Platzhalter:

    aiStorageAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
    

Verwenden Sie ein bestehendes Azure Cosmos DB NoSQL-Konto zur Threadspeicherung.

Für jedes Foundry-Konto wird ein Azure Cosmos DB für NoSQL-Konto erstellt. Informationen zu Durchsatzanforderungen und Multiprojektskalierung finden Sie unter Cosmos DB-Durchsatzanforderungen.

Hinweis

Eine unzureichende RU/s-Kapazität im Cosmos DB-Konto führt bei der Bereitstellung zu Bereitstellungsfehlern.

  1. Melden Sie sich bei der Azure CLI an, und wählen Sie das Abonnement mit Ihrem Cosmos DB-Konto aus:

    az login
    
  2. Führen Sie den folgenden Befehl aus, um Ihre Azure Cosmos DB-Kontoressourcen-ID abzurufen:

    az cosmosdb show --resource-group <your-resource-group> --name <your-cosmosdb-account> --query "id" --output tsv
    

    Die Ausgabe ist der cosmosDBResourceId Wert, den Sie in der Vorlage benötigen.

  3. Ersetzen Sie in der Standard-Agent-Vorlagendatei den folgenden Platzhalter:

    cosmosDBResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{cosmosDbAccountName}
    

Verwenden einer vorhandenen Azure KI-Suche-Ressource

  1. Melden Sie sich bei der Azure CLI an, und wählen Sie das Abonnement mit Ihrer Suchressource aus:

    az login
    
  2. Führen Sie den folgenden Befehl aus, um Ihre Azure KI-Suche-Ressourcen-ID abzurufen:

    az search service show --resource-group <your-resource-group> --name <your-search-service> --query "id" --output tsv
    
  3. Ersetzen Sie in der Standard-Agent-Vorlagendatei den folgenden Platzhalter:

    aiSearchServiceResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}
    

Überprüfen Des Setups

Überprüfen Sie nach Abschluss der Bereitstellung, ob das Setup ordnungsgemäß funktioniert:

  1. Navigieren Sie im Azure-Portal zu Ihrem Foundry-Projekt, und vergewissern Sie sich, dass alle Verbindungen (Storage, Cosmos DB, AI Search) unter den Projekteinstellungen angezeigt werden.
  2. Vergewissern Sie sich, dass ein GET für das Projekt die erwarteten Funktionseinstellungen zurückgibt, einschließlich aller werte, die vom Konto geerbt wurden.
  3. Überprüfen Sie Rollenzuweisungen, indem Sie zur Access Control (IAM) -Seite der einzelnen Ressourcen navigieren und bestätigen, dass die vom Projekt verwaltete Identität die erwarteten Rollen aufweist.
  4. Erstellen Sie einen Test-Agent, um die End-to-End-Funktionalität zu bestätigen.

Behandeln häufiger Probleme

Symptom Ursache Auflösung
Die Bereitstellung schlägt mit einem Cosmos DB-Durchsatzfehler fehl. Unzureichender Durchsatz für Cosmos DB Stellen Sie sicher, dass Ihr Cosmos DB-Konto mindestens 3000 RU/s hat (1000 RU/s pro Container × 3 Container). Multiplizieren Sie bei mehreren Projekten mit der Anzahl der Projekte.
403 Forbidden wenn der Agent Dateien liest oder schreibt Fehlende Speicherrollenzuweisungen Überprüfen Sie, ob die projektverwaltete Identität die Berechtigung Speicher-BLOB-Datenbeitragsberechtigung für den <workspaceId>-azureml-blobstore Container und Speicher-BLOB-Datenbesitzerberechtigung für den <workspaceId>-azureml-agent Container verfügt.
SearchIndexNotFound oder 403 bei Suchvorgängen Fehlende Suchrollen Vergewissern Sie sich, dass die projektverwaltete Identität sowohl die Berechtigung Suchindexdatenmitwirkenden als auch den Suchdienstmitwirkenden für Ihre Azure KI-Suche-Ressource besitzt.
AuthorizationFailed beim Erstellen oder Bearbeiten von Agenten Fehlende Benutzerrolle Weisen Sie dem Entwickler die Rolle " Foundry User " im Projektbereich zu.
Die Bereitstellung schlägt fehl, bevor überhaupt eine Ressource bereitgestellt wird. Der Bereitstellungsidentität ist keine Bereitstellungsrolle zugewiesen. Bestätigen Sie, dass der Aufrufer über Storage Blob Data Contributor und Cosmos DB Operator verfügt. Siehe Konfigurieren von Agent-Funktioneneinstellungen.