Entwickeln von Agents mit dem Microsoft Foundry Agent Service
Bei früheren Lösungen für eine agentähnliche Erfahrung wurden Hunderte von Codezeilen verwendet, um Dinge wie das Verweisen auf Erdungsdaten oder das Herstellen einer Verbindung mit einer benutzerdefinierten Funktion zu erledigen. Der Agent-Dienst vereinfacht jetzt all dies und unterstützt clientseitige Funktionsaufrufe mit nur wenigen Codezeilen und Verbindungen zu Azure-Funktionen oder einem openAPI-definierten Tool.
Hinweis
Der Foundry Agent Service bietet verschiedene Vorteile für die Erstellung von Agenten, ist aber nicht immer die richtige Lösung für Ihren Anwendungsfall. Wenn Sie beispielsweise versuchen, eine Integration mit Microsoft 365 zu erstellen, können Sie die Copilot Studio Lite-Oberfläche auswählen und wenn Sie versuchen, mehrere Agents zu koordinieren, können Sie das Semantic Kernel Agents Framework auswählen.
Diese Grundlagen der KI-Agenten untersucht weitere Möglichkeiten für die Erstellung von Agenten.
Entwickeln von Apps, die Agents verwenden
Der Foundry Agent Service bietet mehrere SDKs und eine REST-API, mit der Sie Agents mithilfe Ihrer bevorzugten Programmiersprache in Ihre App integrieren können. Die Übung später in diesem Modul konzentriert sich auf Python, aber das allgemeine Muster ist für REST- oder andere Sprach-SDKs identisch.
Das Diagramm zeigt die folgenden allgemeinen Schritte, die Sie in Ihrem Code implementieren müssen:
- Stellen Sie mithilfe des Projektendpunkts und der Entra-ID-Authentifizierung eine Verbindung mit dem AI Foundry-Projekt für Ihren Agent her.
- Rufen Sie einen Verweis auf einen vorhandenen Agent ab, den Sie im Microsoft Foundry-Portal erstellt haben, oder erstellen Sie einen neuen Agent, der Folgendes angibt:
- Die Modellbereitstellung im Projekt, die der Agent verwenden sollte, um Prompts zu interpretieren und darauf zu reagieren.
- Anweisungen , die die Funktionalität und das Verhalten des Agents bestimmen.
- Tools und Ressourcen , die der Agent zum Ausführen von Aufgaben verwenden kann.
- Erstellen Sie einen Thread für eine Chatsitzung mit dem Agent. Alle Unterhaltungen mit einem Agent werden in einem zustandsbehafteten Thread durchgeführt, der den Nachrichtenverlauf und Datenartefakte aufbewahrt, die während des Chats generiert werden.
- Fügen Sie dem Thread Nachrichten hinzu, und rufen Sie sie mit dem Agent auf.
- Überprüfen Sie den Threadstatus, und rufen Sie die Nachrichten und Datenartefakte ab, wenn sie bereit sind.
- Wiederholen Sie die beiden vorherigen Schritte als Chatschleife , bis die Unterhaltung abgeschlossen werden kann.
- Löschen Sie nach Abschluss des Vorgangs den Agent und den Thread, um die Ressourcen zu bereinigen und nicht mehr erforderliche Daten zu löschen.
Hinweis
Sie erhalten die Möglichkeit, dieses Muster später in diesem Modul in die Übung umzusetzen.
Für Ihren Agent verfügbare Tools
Ein Großteil der erweiterten Funktionen eines Agents stammt aus der Fähigkeit des Agenten, zu bestimmen, wann und wie Tools verwendet werden. Tools stellen Ihrem Agent zusätzliche Funktionen zur Verfügung, und wenn die Unterhaltung oder Aufgabe die Verwendung eines oder mehrerer Tools garantiert, ruft der Agent dieses Tool auf und verarbeitet die Antwort.
Sie können Tools beim Erstellen eines Agents im Microsoft Foundry-Portal oder beim Definieren eines Agents im Code mithilfe des SDK zuweisen.
Beispielsweise ist eines der verfügbaren Tools der Codedolmetscher. Mit diesem Tool kann Ihr Agent benutzerdefinierten Code ausführen, den er schreibt, um etwas zu erreichen, z. B. MATLAB-Code zum Erstellen eines Diagramms oder zum Lösen eines Datenanalyseproblems.
Verfügbare Tools sind in zwei Kategorien unterteilt:
Wissenstools
Wissenstools verbessern den Kontext oder das Wissen Ihres Agenten. Zu den verfügbaren Tools gehören:
- Bing Search: Verwendet Bing-Suchergebnisse, um Eingabeaufforderungen mit Echtzeitdaten aus dem Web zu untermauern.
- Dateisuche: Groundet Prompts mit Daten aus Dateien in einem Vektorspeicher.
- Azure KI Search: Groundet Prompts mit Daten aus Azure AI Search-Abfrageergebnissen.
- Microsoft Fabric: Verwendet den Fabric Data Agent, um Eingabeaufforderungen mit Daten aus Ihren Fabric-Datenspeichern zu bodenieren.
Tipp
Sie können auch lizenzierte Daten von Drittanbietern mithilfe des OpenAPI Spec-Aktionstools (siehe unten) integrieren.
Aktionstools
Aktionstools führen eine Aktion oder eine Funktion aus. Zu den verfügbaren Tools gehören:
- Codedolmetscher: Eine Sandbox für vom Modell generierten Python-Code, der auf hochgeladene Dateien zugreifen und verarbeiten kann.
- Benutzerdefinierte Funktion: Aufrufen des benutzerdefinierten Funktionscodes – Sie müssen Funktionsdefinitionen und Implementierungen bereitstellen.
- Azure-Funktion: Aufrufen von Code in serverlosen Azure-Funktionen.
- OpenAPI-Spezifikation: Aufrufen externer APIs basierend auf der OpenAPI 3.0-Spezifikation.
Durch die Verbindung von integrierten und benutzerdefinierten Tools können Sie Ihrem Agent erlauben, unzählige Aufgaben in Ihrem Auftrag auszuführen.