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.
Die von Azure Functions gehosteten Skills ermöglichen es dir, KI-Argumentation zu deinen Funktionsanwendungen hinzuzufügen. In einer .agent.md Datei lieferst du Anweisungen in natürlicher Sprache, eine Trigger-Konfiguration und optionale Werkzeugbelegungen. Wenn ein Ereignis ausgelöst wird, ruft die Laufzeit ein Modell auf, führt alle vom Modell angeforderten Tools aus und gibt ein Ergebnis zurück. Du bereitest die App wie jede andere Funktions-App aus.
Um zu starten, wählen Sie die Option, die Ihrem Ziel entspricht:
- Um eine gehostete Fähigkeit lokal mit einem interaktiven Canvas in GitHub Copilot zu erstellen und zu testen, siehe Erstellen und Testen eines gehosteten Skills mit dem Canvas für in Azure Functions gehostete Skills.
- Informationen zum Bereitstellen von Azure-Ressourcen und zum Implementieren einer vollständigen gehosteten Skills-App mithilfe der Azure Developer CLI (
azd) finden Sie unter Build an event-driven AI app with Azure Functions hosted skills.
Die aktuellste und umfassendste Laufzeitdokumentation finden Sie unter Azure Functions Agents Runtime.
Important
Von Azure Functions gehostete Skills sind derzeit als Vorschau verfügbar. Features, Konfigurationsnamen und unterstützte Connectors können sich vor der allgemeinen Verfügbarkeit ändern.
Eine gehostete Fähigkeit ist eine einzelne Einheit KI-gesteuerter Arbeit, die in einer .agent.md Datei definiert ist. Jede gehostete Skill wird einer Azure-Funktion zugeordnet. Eine Skill allein bezeichnet wiederverwendbare Markdown-Anweisungen, die in einer SKILL.md-Datei gespeichert sind und von gehosteten Skills bei Bedarf geladen werden können.
Wann man gehostete Fähigkeiten verwenden sollte
Nutze Azure Functions-gehostete Skills, wenn ein Geschäftsereignis KI-Argumentation benötigt, bevor eine Aktion ausgeführt wird. Beispiel:
- Priorisieren Sie eingehende E-Mails. Ein Steckverbinder löst aus, wenn eine Beschwerde in einem gemeinsamen Briefkasten eintrifft. Die gehostete Fähigkeit liest die Nachricht, klassifiziert die Schwere und leitet sie an die richtige Support-Warteschlange.
- Reichern Sie neue CRM-Leads an. Ein Konnektortrigger wird ausgelöst, wenn in Salesforce oder Dynamics 365 ein Lead hinzugefügt wird. Der gehostete Skill sucht im Web nach Kontext zum Lead und sendet eine Zusammenfassung an den zugewiesenen Verkäufer.
- Validiere Datenänderungen. Ein Blob- oder Datenbank-Trigger wird ausgelöst, wenn ein Umsatzdatensatz aktualisiert wird. Der gehostete Skill prüft, ob der Umsatz unter eine Schwelle gefallen ist, erstellt eine Erklärung und startet einen Review-Workflow.
- Bereitstellen Sie ein domänenspezifisches MCP-Tool. Ein externer Agent oder eine Agenten-Framework ruft eine gehostete Fertigkeit über HTTP oder MCP auf. Die gehostete Fähigkeit wendet KI-Logik auf Daten in Speicher oder Datenbank an und liefert eine strukturierte Antwort, die als intelligentes, domänenspezifisches Werkzeug dient, das andere KI-Clients nutzen können.
Gehostete Fähigkeiten passen gut, wenn Sie ereignisgesteuerte Trigger, KI-Argumentation mit Tools und die operativen Funktionen von Azure Functions (verwaltete Identität, Überwachung, Skalieren bis Null und Integration virtueller Netzwerke) benötigen.
Warum Functions für Ihre KI-Apps verwenden?
Produktions-KI-Workloads brauchen mehr als nur einen Prompt und ein Modell. Sie benötigen zuverlässige Möglichkeiten, um mit der Arbeit zu beginnen, externe Systeme aufzurufen, aufgezeichnete Unterhaltungen beizubehalten, nicht vertrauenswürdigen Code sicher auszuführen, ohne geheime Schlüssel zu authentifizieren, Telemetrie auszustrahlen und bedarfsgesteuert zu skalieren.
Functions bietet ein ereignisgesteuertes Rechenmodell für diese operativen Anliegen. Azure Functions Hosted Skills wenden dasselbe Modell auf deinen KI-Code an. Dies hat unter anderem folgende Vorteile:
- Jede gehostete Fähigkeit ist eine Datei
.agent.md. Deklarative Konfiguration und natürliche Sprachanweisungen leben zusammen. Jede Datei wird einer Azure-Funktion zugeordnet. - Ereignisse starten gehostete Fertigkeiten. Funktions-Trigger starten gehostete Fertigkeiten aus Zeitplänen, HTTP-Anfragen, Warteschlangennachrichten, Blob-Änderungen, Event Grid-Ereignissen, Service Bus-Nachrichten und anderen unterstützten Ereignissen.
- Funktionen werden zunächst konfiguriert – Code kommt nur bei Bedarf zum Einsatz. Du kannst gehostete Skills so konfigurieren, dass sie entfernte MCP-Server verwenden, MCP-Server in Connector-Namensräumen, wiederverwendbare Skills und Sandbox-Code-Ausführung. Schreibe deine eigenen Python-basierten Tools für app-spezifische Logik.
- Azure Functions-Hosting ist integriert. Von Azure Functions gehostete Skills unterstützen die Tarife Flex Consumption, Premium und Dedicated (App Service). Flex Consumption bietet Skalierung auf null, sekundengenaue Abrechnung und automatische Skalierung. Alle Tarife unterstützen Managed Identity, virtuelle Netzwerkintegration und Application Insights.
- Die betriebliche Verwaltungsarbeit wird für Sie übernommen. Die Laufzeit verwaltet die Erkennung gehosteter Skills, die Registrierung von Triggern, die Zusammenstellung von Tools, den Sitzungsverlauf und optionale integrierte Endpunkte.
Funktioniert mit anderen Microsoft-KI-Plattformen
Die gehosteten Fähigkeiten von Azure Functions ergänzen andere KI-Angebote von Microsoft und können parallel dazu verwendet werden. Ihr Sweet Spot ist der Aufbau cloud-gehosteter, ereignisgetriebener intelligenter Fähigkeiten auf Azure Functions durch ein zugängliches Programmiermodell. Gehostete Fähigkeiten können Fähigkeiten über HTTP oder MCP für die Nutzung durch andere Anwendungen, Agenten und Agenten-Harnesses bereitstellen.
Wählen Sie die Azure-Funktionalität, die am besten zu Ihrer Situation passt:
| Szenario | Option |
|---|---|
| Deterministische Funktionen als Werkzeuge für einen anderen KI-Client bereitstellen | Azure Functions MCP-Erweiterung |
| Lang andauernde, mehrstufige Orchestrierung mit Human-in-the-Loop-Genehmigungen | Dauerhafte Funktionen |
| Erstellen und verwalten Sie KI-Agenten ohne kundenspezifisches Hosting | Microsoft Foundry oder Copilot Studio |
Projektdefinition
Eine Azure Functions gehostete Skills-App ist ein standardisiertes Python v2 Function App-Projekt, das zusammen mit gehosteten Skills-Projektdateien bereitgestellt wird. Die folgenden Projektdateien sind für Python-Funktionsanwendungen immer erforderlich:
| File | Zweck |
|---|---|
function_app.py |
Importiert create_function_app() und gibt die konfigurierte Azure Functions App zurück. |
host.json |
Konfiguriert den Azure Functions-Host. |
requirements.txt |
Enthält das Hosted-Skills-Runtime-Paket und alle app-spezifischen Python-Abhängigkeiten. |
Weitere Informationen finden Sie im Azure Functions Developer Reference Guide für Python-Apps.
Gehostete Skills-Projektdateien
Die Laufzeit erkennt diese Dateien und Ordner, die zusammen mit dem App-Projekt bereitgestellt werden:
| Datei oder Ordner | Zweck |
|---|---|
*.agent.md |
Definiert gehostete Fähigkeiten. YAML-Front-Matter konfiguriert die gehostete Fertigkeit, und der Markdown-Text bildet die Anweisungen. Dein Projekt muss mindestens eine Datei .agent.md haben. |
agents.config.yaml |
(Optional) Definiert Anwendungsweite Laufzeitstandardeinstellungen, wie Modell-, Timeout- und Sandbox-Einstellungen. |
mcp.json |
Definiert die Remote-HTTP-MCP-Server, die von gehosteten Skills als Tools verwendet werden können, einschließlich Connector-Tools für Aktionen wie das Senden von E-Mails oder das Arbeiten mit Teams. |
tools/ |
(Optional) Enthält alle benutzerdefinierten Python-Tools, die du erstellst, um Funktionen bereitzustellen, die MCP-Server noch nicht bieten, Verbindungen, Fähigkeiten oder Sandbox-Ausführungen. |
skills/ |
(Optional) Enthält wiederverwendbare SKILL.md Prompt-Ressourcen, die von gehosteten Skills bei Bedarf geladen werden können. |
Jede .agent.md Datei verwendet YAML Front Matter, gefolgt von Markdown-Anweisungen. Dieses Beispiel definiert eine vom Timer ausgelöste gehostete Fähigkeit, die täglich um 15 Uhr (UTC) läuft:
---
name: Daily Tech News Email
description: Fetches top tech news and emails a summary daily.
trigger:
type: timer_trigger
args:
schedule: "0 0 15 * * *"
---
You are a news assistant. When triggered, do the following:
1. Gather today's top technology news from reputable sources.
1. Summarize the stories in a concise HTML email body.
1. Email the summary to $TO_EMAIL with the subject "Daily Tech News Summary".
Der vordere Abschnitt legt fest, wie der gehostete Skill aufgerufen wird. Der Markdown-Body ist der Anweisungsblock, den die Runtime während der Ausführung an das Modell weitergibt. Die Ersetzung von Umgebungsvariablen ermöglicht es Anweisungen und Konfigurationswerten, auf App-Einstellungen wie $TO_EMAIL zu verweisen.
Jede .agent.md Datei definiert eine gehostete Fähigkeit. Der Dateiname leitet den Azure-Funktionsnamen und das Routensegment für eingebaute Endpunkte ab. Das Feld name ist ein Anzeigename für Protokolle, Beschriftungen und Dokumentation.
Eine vollständige Liste der .agent.md-Dateifelder, App-Konfigurationsoptionen und Regeln zur Variablenersetzung finden Sie unter Referenz zu in Azure Functions gehosteten Skills.
Erstellen und testen Sie mit der gehosteten Skills-Canvas
Im Rahmen der Hosted Skills-Vorschau bietet Azure Functions eine optionale gehostete Skills-Canvas in GitHub Copilot. Die Leinwand ist eine interaktive Oberfläche, auf der Sie und GitHub Copilot eine Starter-App erstellen, Timer-, HTTP- oder Warteschlange-Ereigniskontrollen auswählen, die Skill-Anweisungen bearbeiten, ein kompatibles Modell auswählen, den lokalen Functions-Host starten, den Trigger aufrufen und die Aktivität sowie das Ergebnis inspizieren können.
Vom Canvas aus können Sie das generierte Projekt in Visual Studio Code öffnen oder die integrierte Deploy to Azure-Aktion verwenden. Die Bereitstellungsaktion verwendet die Azure Developer CLI (azd).
Das Canvas führt und visualisiert den Entwicklungsablauf, ersetzt aber nicht die Laufzeit der gehosteten Skills oder das Projektformat. Eine über die Canvas erstellte App bleibt eine Standard-Python v2-Funktions-App, die die gehosteten Skills-Projektdateien verwendet. Du kannst die App weiterhin außerhalb des Canvas bearbeiten, ausführen und bereitstellen.
Der Canvas-Quickstart konzentriert sich darauf, eine lokale, vom Timer ausgelöste gehostete Fähigkeit zu erstellen, auszuführen und zu inspizieren. Den geführten Workflow finden Sie unter Erstellen und Testen eines gehosteten Skills mit dem Canvas für in Azure Functions gehostete Skills.
App-Startprozess
Wenn der Functions-Host die App lädt, erkennt die .agent.md-Methode create_function_app-Dateien, MCP-Server, Skills und benutzerdefinierte Tools im Projekt. Es validiert die Konfiguration, stellt die Werkzeuge für jeden gehosteten Skill zusammen und registriert die erforderlichen Trigger und Endpunkte.
Wenn ein Trigger ausgelöst wird, erstellt die Laufzeit den gehosteten Skill anhand seiner aufgelösten Anweisungen, seines Modells, seiner Werkzeuge und seiner Sitzungshistorie und führt ihn dann aus.
Gehostete Skills durch Ereignisse auslösen
Die Laufzeit unterstützt mehrere Trigger in deiner App, aber nur einen Trigger pro .agent.md Datei. Eine Triggerdefinition weist ein type Und ein args Objekt auf.
type identifiziert die Triggerbindung, und args enthält die triggerspezifischen Einstellungen, mit denen konfiguriert wird, durch welches Ereignis die gehostete Fähigkeit gestartet wird.
Zu den gängigen Triggermustern gehören:
| Schema | Example |
|---|---|
| HTTP | Empfangen einer Anforderung, Anruftools und Zurückgeben einer strukturierten Antwort. |
| Zeitplan | Führen Sie einen täglichen Berichterstellungs-, Zusammenfassungs-, Bereinigungs- oder Abstimmungsworkflow aus. |
| Warteschlange oder Nachricht | Verarbeiten von Arbeitsaufgaben, die Modellgründe oder Toolaufrufe benötigen. |
| Speicher- oder Datenbankereignis | Reagieren Sie auf geänderte Dateien, Datensätze oder Ereignisse. |
| Steckverbinder-Auslöser | Reagieren Sie auf Ereignisse von verwalteten Connectors, wie Teams-Nachrichten, Outlook-Mails oder vom Connector unterstützten Kalenderereignissen. |
Ausführliche Informationen zur Triggerkonfiguration, zu unterstützten Typen und zu args finden Sie in der Referenz zu in Azure Functions gehosteten Skills.
Unterstützte KI-Tools
Die von Azure Functions gehosteten Fähigkeiten unterstützen verschiedene Arten von Werkzeugen. Beginne mit konfigurierten Funktionen und nutze benutzerdefinierte Python-Tools für app-spezifische Logik, die nicht zu diesen Optionen passt.
Fern-MCP-Server
Definiere entfernte HTTP- oder streambare HTTP-MCP-Server in mcp.json. Die Laufzeit entdeckt diese Server und stellt ihre Tools allen gehosteten Skills zur Verfügung. Nutze entfernte MCP-Server, wenn gehostete Skills Werkzeuge aufrufen müssen, die von einem anderen Dienst gehostet werden, oder Fähigkeiten über Anwendungsgrenzen hinweg zusammenstellen.
Azure-Konnektoren
Connectors ermöglichen es gehosteten Skills, ohne benutzerdefinierten API-Client-Code mit externen Diensten zu arbeiten. Ein Connector-Namespace beherbergt Verbindungen, Trigger und MCP-Server für Dienste wie Microsoft 365 Outlook, Teams, Salesforce, SAP oder SQL. Verwenden Sie Konnektor-Trigger, um gehostete Fertigkeiten aus externen Ereignissen zu starten, und Connector-MCP-Tools, um Dienstaktionen aus gehosteten Fertigkeitsanweisungen aufzurufen.
Fähigkeiten
Speichere wiederverwendbare Prompt-Assets unter dem skills/ Ordner. Jeder Fertigkeitsordner enthält eine SKILL.md Datei mit Namen, Beschreibung und Markdown-Anweisungen. Die Laufzeit entdeckt automatisch Fähigkeiten und macht sie für gehostete Skills verfügbar. Skills helfen, die Grundanweisungen klein zu halten und bei Bedarf fachspezifische Anweisungen zur Verfügung zu stellen.
Ausführung in einer Sandbox
Die Runtime kann dynamische Sitzungen in Azure Container Apps verwenden, um gehosteten Skills ein execute_python Tool bereitzustellen. Dieses Tool führt Python in einem isolierten Session-Pool aus, was für Codeausführung und Datenanalyse nützlich ist. Konfigurieren Sie den Session-Pool-Endpunkt in agents.config.yaml.
Benutzerdefinierte Python-Tools
Nutze benutzerdefinierte Python-Tools für app-spezifische Funktionen. Fügen Sie .py Dateien dem Ordner tools/ hinzu und dekorieren Sie Funktionen mit @tool aus dem Laufzeitpaket. Die Laufzeit entdeckt und registriert diese Werkzeuge automatisch.
Ausführliche Informationen zur Konfiguration, Feldtabellen und Codebeispiele für jeden Tooltyp finden Sie unter Referenz zu in Azure Functions gehosteten Skills.
Dynamische Workflows
Dynamische Workflows ermöglichen es unterstützten KI-Aufgaben, dauerhafte, mehrstufige Pläne aus workflow-sicheren Tool-Aufrufen, Subagenten-Aufgaben und Wartezeiten zu starten. Sie erweitern das Muster für programmatische Toolaufrufe mit Durable Functions, sodass eine Aufgabe Arbeit aufteilen, isolierte spezialisierte Komponenten ausführen, auf durable Timer warten, Workerneustarts überstehen und große Zwischenergebnisse aus der Konversation heraushalten kann, bis eine abschließende Zusammenfassung bereit ist.
Im aktuellen experimentellen v1 Surface aktivieren Sie Workflows in einer unabhängig ausführbaren .agent.md Datei. Workflow-Aufgaben können Python-Funktionen aufrufen, die Sie explizit mit @workflow_tool dekorieren, oder spezialisierte Aufgaben, die Sie über workflows.subagents freigeben. Weitere Informationen finden Sie unter Dynamische Workflows in Azure Functions hosted skills.
Sitzungen und Status
Interaktionen mit mehreren Runden benötigen einen Sitzungsverlauf. In Azure speichert die Laufzeit den Sitzungsverlauf in Blob Storage über das AzureWebJobsStorage-Konto der Funktions-App. Für die lokale Entwicklung greift die Laufzeit auf einen dateibasierten Sitzungsverlauf zurück. Die Ausführung in der Sandbox berücksichtigt auch Sitzungen und verwendet isolierte Sitzungen für nicht zusammengehörige Ausführungen.
Observierbarkeit
Ab azure-functions-agents-runtime Version 0.1.0b6 enthält die Laufzeit ein Feature-Set für die Einblickbarkeit, das sich noch in der aktiven Entwicklung befindet und Änderungen unterliegt.
Für die neuesten Konfigurationsdetails, Telemetriefelder und Nutzungsanleitungen verwenden Sie die Laufzeitdokumentation des Repositoriums:
Verwandte Inhalte
- Azure Functions Agents Runtime documentation
- Referenz für in Azure Functions gehostete Skills
- Erstellen und Testen eines gehosteten Skills mit dem Canvas für in Azure Functions gehostete Skills
- Baue eine ereignisgesteuerte KI-App mit Azure Functions-gehosteten Fähigkeiten
- Dynamische Workflows in in Azure Functions gehosteten Skills
- Nutzung von KI-Tools und -Modellen in Azure Functions
- Builden eines benutzerdefinierten MCP-Remoteservers mit Azure Functions
- Hosting für den Flex Consumption-Plan