Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie agentische Anwendungen mithilfe von Open-Source-Frameworks erstellen, verwalten Sie in der Regel viele übergreifende Probleme: Containerisierung, Webservereinrichtung, Sicherheit, Speicherpersistenz, Skalierung, Instrumentierung und Versionsrollbacks. Diese Aufgaben werden in heterogenen Cloudumgebungen noch schwieriger.
Gehostete Agents im Foundry Agent Service lösen diese Herausforderungen für Microsoft Foundry-Benutzer. Gehostete Agents rufen Modelle aus dem Foundry-Modellkatalog auf, um die Begründung auszuführen, während Ihr benutzerdefinierter Code die Orchestrierung behandelt. Mithilfe dieser verwalteten Plattform können Sie KI-Agents sicher und in großem Umfang bereitstellen und betreiben. Sie können Ihren benutzerdefinierten Agentcode oder ein bevorzugtes Agent-Framework mit optimierter Bereitstellung und Verwaltung verwenden.
Wann werden gehostete Agents verwendet?
Wählen Sie gehostete Agents anstatt von eingabeaufforderungsbasierten Agents aus, wenn Sie Folgendes benötigen:
- Bring your own code – verwenden Sie jedes Framework (Agent Framework, LangGraph, Semantischer Kernel oder benutzerdefinierter Code) anstatt nur Aufforderungen zu verwenden.
- Verwenden Sie benutzerdefinierte Protokolle – akzeptieren Sie Webhooks oder Nicht-OpenAI-Nutzlasten über das Invocations-Protokoll.
- Steuern von Computeressourcen – Geben Sie CPU und Arbeitsspeicher für den Sandkasten Ihres Agents an.
- Zustandsbehaftete Workloads ausführen – Dateien und Zustände über $HOME und den /files-Endpunkt beibehalten.
Funktionsweise
Sie packen Ihren Agent als Containerimage und übertragen ihn an Azure Container Registry. Wenn Sie bereitstellen, ruft der Agentdienst das Image ab, stellt die Berechnung bereit, weist eine dedizierte Microsoft Entra ID (Agentidentität) zu und macht einen dedizierten Endpunkt verfügbar. Zur Laufzeit verarbeitet Ihr Agentcode Anforderungen von Clients und kann Foundry-Modelle, Toolbox-Tools und downstream-Azure-Dienste mit seiner Agentidentität aufrufen. Die Plattform behandelt Skalierung, Sitzungszustandspersistenz, Observierbarkeit und Lebenszyklusverwaltung.
Wichtig
Wenn Sie gehostete Agents mit anderen Microsoft Produkten und Diensten verwenden, müssen Sie alle relevanten Dokumentationen für solche Produkte und Dienste lesen und verwandte Risiken und Compliance-Überlegungen verstehen. Wenn Sie gehostete Agents mit Servern, Agents, Code oder Modellen von Drittanbietern verwenden, die nicht Azure Direct-Modelle ("Drittanbietersysteme") sind, tun Sie dies auf eigene Gefahr. Drittanbietersysteme sind nicht Microsoft Produkte unter den Microsoft Produktbedingungen und unterliegen ihren eigenen Lizenzbedingungen von Drittanbietern. Sie sind für alle Nutzungs- und damit verbundenen Kosten verantwortlich. Überprüfen Sie alle daten, die mit Drittanbietersystemen geteilt und empfangen wurden. Beachten Sie die Methoden von Drittanbietern für die Behandlung, Freigabe, Aufbewahrung und den Speicherort von Daten. Es liegt in Ihrer Verantwortung, zu verwalten, ob Ihre Daten außerhalb der Azure Compliance- und geografischen Grenzen Ihrer Organisation und alle damit verbundenen Auswirkungen fließen. Microsoft hat keine Verantwortung für Sie oder andere Personen in Bezug auf die Nutzung von Drittanbietersystemen, und Sie sind für die Implementierung Ihrer eigenen verantwortungsvollen KI-Entschärfungen wie Metaprompts, Inhaltsfilter oder andere Sicherheitssysteme verantwortlich.
Schlüsselkonzepte
Gehostete Agents
Gehostete Agents sind containerisierte agentische KI-Anwendungen, die auf dem Agent-Dienst ausgeführt werden. Im Gegensatz zu promptbasierten Agents, die vollständig über Eingabeaufforderungen und Toolkonfiguration im Foundry-Portal definiert werden, sind gehostete Agents Ihr eigener Code, der als Containerimage verpackt ist. Sie wählen das Framework aus, steuern das Laufzeitverhalten und stellen das Image für Microsoft verwaltete Infrastruktur bereit.
Die Plattform verwaltet den Containerlebenszyklus automatisch basierend auf Aktivitäten und stellt Ressourcen bereit, wenn Sie eine Version erstellen, und hebt die Bereitstellung auf, wenn das Leerlauf-Timeout erreicht ist.
Isolationsmodell
Gehostete Agents werden in VM-isolierten Sandboxes pro Sitzung ausgeführt. Jede Sitzung erhält einen dedizierten Sandkasten mit einem persistenten Dateisystem ($HOME und /files), wodurch Scale-to-Zero mit zustandsvollen Fortsetzungs- und vorhersagbaren Kaltstarts ermöglicht wird. Sitzungen sind voneinander isoliert und der Zustand wird automatisch wiederhergestellt, wenn eine Sitzung nach einer Inaktivitätsphase fortgesetzt wird.
Protokolle: Antworten und Aufrufe
Gehostete Agentcontainer machen ein oder beide Protokolle verfügbar. Jedes Protokoll wird von einer einfachen Bibliothek bereitgestellt, die den HTTP-Server, Integritätsprüfungen und die OpenTelemetry-Integration verarbeitet.
Welches Protokoll sollte ich verwenden?
| Szenario | Protokoll | Warum |
|---|---|---|
| Unterhaltungs-Chatbot oder Assistent | Antworten | Die Plattform verwaltet aufgezeichnete Unterhaltungen, Streamingereignisse und Sitzungslebenszyklus – verwenden Sie ein beliebiges OpenAI-kompatibles SDK als Client. |
| Mehrstufige Frage-Antwort-Sitzung mit RAG oder Tools | Antworten | Integrierte Unterhaltungs-ID-Threading und Toolergebnisbehandlung. |
| Hintergrund/ asynchrone Verarbeitung | Antworten | Hintergrund: true mit plattformgesteuerter Abfrage und Abbruch – kein benutzerdefinierter Code erforderlich. |
| Agent veröffentlicht in Teams oder Microsoft 365 | Antworten + Aktivität | Das Antwortprotokoll unterstützt die Agentlogik; die Plattform überbrückt die Antworten automatisch mit dem Aktivitätsprotokoll für die Kanalübermittlung. |
| Webhook-Empfänger (GitHub, Stripe, Jira usw.) | Aufrufe | Das externe System sendet ein eigenes Nutzlastformat– Sie können es nicht so ändern, dass es mit "/responses" übereinstimmt. |
| Nicht-konversationelle Verarbeitung (Klassifizierung, Extraktion, Stapel) | Aufrufe | Die Eingabe ist strukturierte Daten, keine Chatnachricht. Beliebiger JSON in, beliebiger JSON aus. |
| Benutzerdefiniertes Streamingprotokoll (AG-UI usw.) | Aufrufe | AG-UI und andere Agent-UI-Protokolle sind nicht openAI-kompatibel – Sie benötigen ein unformatiertes SSE-Steuerelement. |
| Protokollbrücke (GitHub Copilot, proprietäre Systeme) | Aufrufe | Der Aufrufer verfügt über ein eigenes Protokoll, das /responses nicht zugeordnet ist. |
Tipp
Weiß nicht? Beginnen Sie mit Antworten. Sie können später immer einen Endpunkt für Aufrufe hinzufügen – ein gehosteter Agent kann beide Protokolle gleichzeitig unterstützen.
Protokollvergleich
| Antworten | Aufrufe | |
|---|---|---|
| Optimal für | Die meisten Agents – die Plattform verwaltet aufgezeichnete Unterhaltungen, Streaming-Lebenszyklus und Hintergrundausführung | Agents, die vollständige HTTP-Steuerung, benutzerdefinierte Nutzlasten oder asynchrone Workflows mit langer Ausführung benötigen |
| Nutzlast | OpenAI-kompatibler Vertrag für /responses | Beliebiges JSON mittels /invocations – Sie definieren das Schema |
| Client-SDK | Jedes openAI-kompatible SDK (Python, JS, C#) funktioniert sofort. | Benutzerdefinierter Client – Sie definieren den Vertrag |
| Sitzungsverlauf | Plattform wird über Gesprächs-ID verwaltet | Sie verwalten Sitzungen (Im Memory, Cosmos DB usw.) |
| Streaming | Plattformgesteuerter Response-Event-Stream mit Lebenszyklusereignissen | Unformatiertes SSE – Sie formatieren und schreiben Ereignisse direkt |
| Hintergrund / langandauernd | Integriert (Hintergrund: true + plattformgesteuertes Polling) | Manuelle Aufgabenverfolgung und benutzerdefinierte Abfrageendpunkte |
Zusätzliche Protokolle
Gehostete Agents unterstützen außerdem das Protokoll Activity für Teams und Microsoft 365 Kanalintegration. Wenn Sie das Antwortprotokoll für die Agentlogik verwenden und in Microsoft 365 Kanälen wie Teams veröffentlichen, überbrückt die Plattform automatisch Antworten auf das Aktivitätsprotokoll für die Kanalübermittlung – es ist keine separate Verkabelung erforderlich. Das A2A-Protokoll unterstützt die Agent-zu-Agent-Delegierung. Alle vier Protokolle – Antworten, Aufrufe, Aktivitäten und A2A – können in einem einzigen Agent kombiniert werden.
Agentenidentität und -endpunkt
Jeder gehostete Agent, der in einem Foundry-Projekt bereitgestellt wird, erhält einen eigenen dedizierten Microsoft Entra ID (Agentidentität) und dedizierten Endpunkt – beide werden zur Bereitstellungszeit automatisch erstellt. Sie müssen keine verwalteten Identitäten oder manuelles Routing konfigurieren.
Der Endpunkt ist unmittelbar nach der Bereitstellung verfügbar– für den programmgesteuerten Zugriff ist keine Veröffentlichung erforderlich:
- Antworten: {project_endpoint}/agents/{name}/endpoint/protocols/openai/v1/responses
- Aufrufe: {project_endpoint}/agents/{name}/endpoint/protocols/invocations
- A2A (Vorschau): {project_endpoint}/agents/{name}/endpoint/protocols/a2a
Welche Endpunkte aktiv sind, hängt von den Protokollen ab, die in der Agentversionsdefinition deklariert sind (bei Verwendung von azd oder über container_protocol_versions bei Verwendung des SDK in agent.yaml festgelegt).
Zwei Identitäten sind beteiligt:
| Identität | Umfang | Zweck |
|---|---|---|
| Microsoft Entra ID (Agentidentität, pro Agent) | Automatisch zum Bereitstellungszeitpunkt erstellt | Die Identität, mit der der Agentcontainer zur Laufzeit authentifiziert wird. Wird für Modellaufrufe, Toolzugriff und nachgeschaltete Azure-Dienste verwendet. |
| Projekteigene Identität (projektweit) | Systemzuweisung für das Foundry-Projekt | Wird von der Plattform für Infrastrukturvorgänge verwendet (z. B. Containerregistrierungs-Repositoryleser in der Containerregistrierung). Nicht die Laufzeitidentität des Software-Agents. |
Wenn Sie mit azd bereitstellen, wird die erforderliche RBAC-Rolle (Azure AI User auf Kontoebene) automatisch der Microsoft Entra ID des Agents zugewiesen. Für externe Ressourcen (z. B. Ihre eigene Azure Storage) weisen Sie RBAC manuell dem Microsoft Entra ID des Agents zu.
Bei der Integration über Microsoft 365 Kanäle (z. B. Teams) können gehostete Agents auch mit der Benutzeridentität im Auftrag von (OBO) arbeiten. Die Microsoft Entra ID des Agents kann ein Benutzertoken austauschen, um damit nachgeschaltete Dienste gemäß den Mandantenrichtlinien als Benutzer aufzurufen. Weitere Informationen finden Sie unter Agent-Anwendungen und Agent-Identitätskonzepte.
Sitzungen und Unterhaltungen
Gehostete Agents verwenden Sitzungen und Interaktionen zum Verwalten des Zustands. Wie sie funktionieren, hängt vom Protokoll ab.
Sitzungen
Eine Sitzungs-ID identifiziert eine logische Sitzung mit beibehaltenem Zustand, einschließlich $HOME und Dateien, die über den /files-Endpunkt hochgeladen wurden. Die Plattform stellt Rechenressourcen bei Bedarf bereit und stellt den persistenten Zustand darauf wieder her.
- Statuspersistenz: $HOME- und /files-Inhalte werden über Sitzungen und während Leerlaufzeiten beibehalten. Sobald die Rechenkapazität in den Leerlauf geht und reaktiviert wird (auf neuer oder bestehender Infrastruktur), wird der Sitzungszustand automatisch wiederhergestellt.
- Isolation: Jede Sitzung ist von anderen Sitzungen isoliert.
- Automatischer Lebenszyklus: Sitzungen werden bei der ersten Verwendung erstellt. Die Plattform stellt Rechenressourcen automatisch bereit und zieht sie ab.
- Sitzungsdauer: Sitzungen bestehen bis zu 30 Tage. Das Leerlauftimeout beträgt 15 Minuten– wenn keine Anforderung innerhalb dieses Fensters eingeht, wird die Berechnung aufgehoben und der Sitzungszustand beibehalten.
- Sitzungsverwaltungs-APIs: Sitzungen auflisten, Sitzungen beenden und Dateien pro Sitzung hochladen oder herunterladen.
Gespräche
Eine Unterhaltungs-ID ist ein dauerhafter Datensatz von Aufgezeichneten Unterhaltungen (Nachrichten, Toolanrufe und Antworten), die in Foundry gespeichert sind.
- Persistenz: Der Konversationsverlauf wird in Foundry gespeichert und bleibt unabhängig vom Berechnungszustand erhalten.
- Kanalübergreifender Zugriff: Benutzer können über den Playground, die API, Teams oder andere veröffentlichte Kanäle auf dieselbe Unterhaltung zugreifen.
Funktionsweise von Sitzungen und Interaktionen mit jedem Protokoll
Antwortprotokoll: Gesprächs-ID ist das primäre Konzept. Die Plattform verwaltet den Unterhaltungsverlauf automatisch und ordnet jeder Unterhaltung eine Sitzungs-ID zu. Die Plattform gibt die Sitzungs-ID an den Client zurück, der sie zum Hochladen von Dateien über den Endpunkt "/files" verwenden kann, sodass diese Dateien für die Rechnerleistung der Konversation verfügbar sind.
Aufrufprotokoll: Sitzungs-ID ist das primäre Konzept. Der Client verwaltet die Sitzungs-ID direkt, um den Zustand über Interaktionen hinweg aufrechtzuerhalten. Der Client kann Inhalte über den /files-Endpunkt mithilfe der Sitzungs-ID hochladen, um ihn für die Sitzung verfügbar zu machen. Es gibt keinen von der Plattform verwalteten Konversationsverlauf – Sie verwalten den Status selbst in Ihrem eigenen Code.
Sitzungs-Berechnungslebenszyklus
| Staat | Was ist los |
|---|---|
| Aktiv | Die Berechnung läuft. Anfragen werden an ihn weitergeleitet. $HOME- und /files-Inhalte sind verfügbar. |
| Im leerlauf | Keine Anforderungen für 15 Minuten. Compute wird deprovisioniert. Der Sitzungszustand ($HOME, /files) wird beibehalten. |
| Fortgesetzt | Auf dieselbe Sitzungs-ID wird erneut verwiesen. Plattform stellt neue Rechenressourcen bereit und stellt den gespeicherten Zustand wieder her. |
Sicherheit und Datenverarbeitung
Behandeln Sie einen gehosteten Agent wie Produktionsanwendungscode.
Wichtig
Wenn Sie den Foundry Agent Service zum Hosten von Agents verwenden, die mit Modellen, Servern oder Agents von Drittanbietern interagieren, tun Sie dies auf Eigenes Risiko. Es wird empfohlen, alle Daten zu überprüfen, die für Modelle, Server oder Agents von Drittanbietern freigegeben werden, und die Methoden von Drittanbietern für die Aufbewahrung und den Speicherort von Daten zu verstehen. Es liegt in Ihrer Verantwortung, zu verwalten, ob Ihre Daten außerhalb der Azure Compliance- und geografischen Grenzen Ihrer Organisation und alle damit verbundenen Auswirkungen fließen.
- Fügen Sie keine geheimen Schlüssel in Containerimages oder Umgebungsvariablen ein. Verwenden Sie verwaltete Identitäten und Verbindungen, und speichern Sie geheime Schlüssel in einem verwalteten geheimen Speicher. Anleitungen finden Sie unter Setup a Key Vault connection.
- Achten Sie auf nicht-Microsoft-Tools und Server. Wenn Ihr Agent Tools aufruft, die nicht von Microsoft-Dienste unterstützt werden, fließen einige Daten möglicherweise zu diesen Diensten. Überprüfen Sie die Datenfreigabe-, Aufbewahrungs- und Standortrichtlinien für alle Nicht-Microsoft Dienste, die Sie verbinden.
Plattformdetails
Versionsverwaltung
Jeder Aufruf zum Erstellen einer Version erzeugt eine unveränderliche Agentversion – eine Momentaufnahme des Containerimages, der Ressourcenzuordnung, der Umgebungsvariablen und der Protokollkonfiguration. Bereitstellungen verweisen auf eine bestimmte Version. Um Ihren Agent zu aktualisieren, erstellen Sie eine neue Version, und die Plattform stellt sie bereit. Beachten Sie, dass Anforderungen zum Erstellen der Agentversion ohne Änderung an den Agentversionsparametern wie Containerimage, Umgebungsvariablen usw. nicht dazu führen, dass eine neue Version erstellt wird. Sie können Traffic zwischen Versionen mit gewichteten Rollouts verteilen, um Canary- und Blue-Green-Deployments zu unterstützen.
Umgebungsvariablen sind der primäre Mechanismus zum Übergeben der Konfiguration an Ihren Container zur Laufzeit (z. B. der Projektendpunkt, der Modellbereitstellungsname und benutzerdefinierte Einstellungen). Sie werden pro Version festgelegt und sind unveränderlich, sobald die Version erstellt wurde.
Beobachtbarkeit
Gehostete Agents bieten eine eingebaute Observabilität. Die Plattform fügt automatisch eine Application Insights-Verbindungszeichenfolge über Umgebungsvariablen in Ihren Agentcontainer ein. Agents, die die Protokollbibliotheken verwenden, geben standardmäßig OpenTelemetry-Ablaufverfolgungen aus, die in der verknüpften Application Insights-Ressource unter InvestigateTransaction search oder Performance angezeigt werden.
Anleitungen zur Konfiguration und Analyse finden Sie unter Aktivieren der Ablaufverfolgung in Ihrem Projekt.
Die Toolbox in Foundry
Gehostete Agents greifen in Ihrem Foundry-Projekt über einen Toolbox MCP-Endpunkt auf Foundry-verwaltete Tools (Code Interpreter, Web Search, Azure KI-Suche, OpenAPI, benutzerdefinierte MCP-Verbindungen, A2A) zu. Ihr Agentcode stellt mithilfe standardmäßiger MCP-Clientbibliotheken eine Verbindung mit diesem Endpunkt bereit. Die Plattform fügt keine Tools automatisch ein. Ausführliche Informationen finden Sie unter Absichtsgesteuertes Toolset in Foundry kuratieren. Wir empfehlen Kunden, die Toolbox in Foundry zu nutzen, um Tools im gehosteten Agenten zu verbinden. Diese bietet konsolidierte Unterstützung für Authentifizierungsmethoden wie OAuth Identity passthrough, Agenten-Identität, Schlüsselbasierte Authentifizierung und mehr.
Sprachunterstützung
Gehostete Agents unterstützen Python und C#. Sie können ein beliebiges Agent-Framework verwenden– die Protokollbibliotheken sind frameworkagnostisch. Beispiele mit Microsoft Agent Framework, LangGraph und benutzerdefiniertem Code finden Sie im Repository foundry-samples.
Sandkastengrößen
Gehostete Agent-Sandboxes unterstützen CPU- und Speicherzuweisungen von 0,25 vCPU / 0,5 GiB bis 2 vCPU / 4 GiB.
Private Netzwerke
Gehostete Agents unterstützen die Bereitstellung innerhalb von netzwerkisolten Foundry-Ressourcen und können eine vom Kunden bereitgestellte Azure Virtual Network für ausgehenden Datenverkehr verwenden. Auf diese Weise können Agents in netzwerkisolten Foundry-Bereitstellungen private Ressourcen wie Datenbanken oder interne APIs erreichen. Weitere Informationen finden Sie unter Konfigurieren virtueller Netzwerke.
Hinweis
Das Azure Container Registry, in dem sich Ihr Agentimage befindet, muss derzeit über seinen öffentlichen Endpunkt erreichbar bleiben. Ein durch privates Netzwerk gesichertes ACR wird derzeit nicht unterstützt.
Grenzwerte, Preise und Verfügbarkeit (Vorschau)
Gehostete Agents befinden sich derzeit in der Vorschau.
Einschränkungen während der Vorschau
| Grenze | Umfang | Standardwert | Einstellbar |
|---|---|---|---|
| Maximale Anzahl gleichzeitiger aktiver Sitzungen | pro Abonnement pro Region | 50 | Ja, mit Kontingentanforderungen an Microsoft-Support |
Preise
Die Abrechnung der verwalteten Hostinglaufzeit basiert auf dem Verbrauch von CPU- und Arbeitsspeicherressourcen während der aktiven Sitzungen. Aktuelle Preise finden Sie auf der Seite " Foundry-Preise".
Verfügbarkeit der Region
Gehostete Agents sind derzeit in den folgenden Regionen verfügbar:
- Ost-USA 2
- Nord-Mittel-USA
- Schweden Zentral
- Kanada Zentral
- Südostasien
- Polen Zentral
- Südafrika Nord
- Korea Central
- Südindien
- Brasilien Süd
- USA (Westen)
- West-USA 3
- Norwegen Ost
- Japan Ost
- Frankreich Zentral
- Schweiz Nord
- Spanien Zentral
- Australien Ost
Hinweis
Diese Liste wird aktualisiert, wenn weitere Regionen verfügbar sind.
Nächste Schritte
| Aufgabe | Verbinden |
|---|---|
| Erstellen und Bereitstellen Ihres ersten gehosteten Agents | Schnellstart: Bereitstellen Ihres ersten gehosteten Agents |
| Bereitstellen mit dem Foundry SDK | Bereitstellen eines gehosteten Agents mithilfe des Foundry SDK |
| Aktualisieren, Löschen, Aufrufen oder Streamen von Protokollen | Verwalten von gehosteten Agents |
| Einrichten der Ablaufverfolgung und Überwachung | Aktivieren der Ablaufverfolgung in Ihrem Projekt |
| Leistung von Agenten bewerten | Agentenbewerter |
| Veröffentlichen in Teams, M365 oder benutzerdefinierten Apps | Agentanwendungen |
| Codebeispiele durchsuchen | Python Samples · C#-Beispiele |