KI-Agentenwerkzeuge
Wichtig
Dieses Feature befindet sich in der Public Preview.
Dieser Artikel enthält eine Übersicht über das Erstellen von KI-Agent-Tools mithilfe des Mosaik AI Agent Frameworks.
MIT KI-Agent-Tools können Agents Aufgaben außerhalb der Sprachgenerierung ausführen, z. B. strukturierte oder unstrukturierte Daten abrufen und benutzerdefinierten Code ausführen.
Eine Einführung in KI-Agents finden Sie unter Was sind zusammengesetzte KI-Systeme und KI-Agents?.
Unity Catalog-Funktionstools im Vergleich zu Agent-Codetools
Um ein Tool mit Mosaik AI Agent Framework zu erstellen, können Sie eine beliebige Kombination der folgenden Methoden verwenden:
Methode | Beschreibung |
---|---|
Unity-Katalogfunktionen | – Definiert und verwaltet im Unity-Katalog mit integrierten Sicherheits- und Compliancefeatures – Gewährt einfachere Auffindbarkeit, Governance und Wiederverwendung - Ideal für das Anwenden von Transformationen und Aggregationen auf großen Datasets |
Agent-Codetools | - Definiert im Code des KI-Agents - Nützlich für das Aufrufen von REST-APIs mit beliebigem Code oder ausführen von Tools mit geringer Latenz - Fehlende integrierte Governance und Auffindbarkeit von Funktionen |
Beide Methoden sind mit benutzerdefinierten Python-Agents oder Agent-Authoring-Bibliotheken wie LangGraph kompatibel.
Erstellen von KI-Agententools
Erfahren Sie, wie Sie KI-Agent-Tools erstellen, mit denen Ihre Agents benutzerdefinierten Python-Code ausführen können. Siehe Erstellen benutzerdefinierter KI-Agent-Tools mit Unity Catalog-Funktionen.
Beispiele für Agent-Tools
Beispiele für Agenttools finden Sie in den folgenden Artikeln:
- Tools zum Abrufen strukturierter Daten es Ihrem Agent ermöglichen, strukturierte Datenquellen wie SQL-Tabellen abzufragen.
- Tools für den Abruf unstrukturierter Daten ermöglichen es Ihrem Agenten, unstrukturierte Datenquellen wie Textkorpora abzufragen, um Retrieval Augmented Generation durchzuführen.
- Tools für externe Verbindungen Agenttools mit externen Diensten und APIs verbinden.
Hinzufügen von Unity Catalog-Tools zu Agents
Im Gegensatz zu Agent-Codetools, die im Code des Agents definiert sind, müssen Unity-Katalogtools explizit den Agents hinzugefügt werden, um sie zur Verwendung zur Verfügung zu stellen.
Databricks empfiehlt die Verwendung von UCFunctionToolkit
zur Integration von Unity-Katalogtools in Agent-Erstellungsframeworks und SDKs. Siehe Erstellen benutzerdefinierter KI-Agent-Tools mit Unity Catalog-Funktionen.
Sie können auch den KI-Playground verwenden, um den Agenten schnell Unity-Katalog-Tools hinzuzufügen, um das Verhalten zu prototypisieren. Weitere Informationen finden Sie unter Erstellen eines Prototyps für Toolaufruf-Agents im KI-Playground.
Verbessern des Toolaufrufs durch klare Dokumentation
Gut dokumentierte Tools helfen KI-Agenten zu verstehen, wann und wie Tools effektiv verwendet werden. Befolgen Sie die folgenden bewährten Methoden beim Dokumentieren von Toolparametern und Rückgabewerten:
- Verwenden Sie für Unity-Katalogfunktionen
COMMENT
, um Toolfunktionen und Parameter zu beschreiben. - Definieren Sie die erwarteten Eingaben und Ausgaben eindeutig.
- Stellen Sie aussagekräftige Beschreibungen bereit, um die Benutzerfreundlichkeit zu verbessern.
Beispiel: Effektive Tooldokumentation
Das folgende Beispiel zeigt effektive COMMENT
Zeichenfolgen für ein Unity Catalog-Funktionstool, das eine strukturierte Tabelle abfragt.
CREATE OR REPLACE FUNCTION main.default.lookup_customer_info(
customer_name STRING COMMENT 'Name of the customer whose info to look up.'
)
RETURNS STRING
COMMENT 'Returns metadata about a specific customer including their email and ID.'
RETURN SELECT CONCAT(
'Customer ID: ', customer_id, ', ',
'Customer Email: ', customer_email
)
FROM main.default.customer_data
WHERE customer_name = customer_name
LIMIT 1;
Beispiel: Ineffektive Tooldokumentation
Im folgenden Beispiel fehlen wichtige Details, wodurch es für den KI-Agenten schwieriger wird, das Tool effektiv zu verwenden:
CREATE OR REPLACE FUNCTION main.default.lookup_customer_info(
customer_name STRING COMMENT 'Name of the customer.'
)
RETURNS STRING
COMMENT 'Returns info about a customer.'
RETURN SELECT CONCAT(
'Customer ID: ', customer_id, ', ',
'Customer Email: ', customer_email
)
FROM main.default.customer_data
WHERE customer_name = customer_name
LIMIT 1;