Skapa AI-agentverktyg
Viktigt!
Den här funktionen finns som allmänt tillgänglig förhandsversion.
Den här artikeln innehåller en översikt över hur du skapar AI-agentverktyg med hjälp av Mosaic AI Agent Framework.
Agent Framework hjälper utvecklare att skapa verktyg som AI-agenter kan använda för att utföra åtgärder utöver språkgenerering, till exempel att hämta strukturerade eller ostrukturerade data eller köra kod.
En introduktion till AI-agenter finns i Vad är sammansatta AI-system och AI-agenter?.
Funktionsverktyg för Unity Catalog jämfört med agentkodverktyg
Om du vill skapa verktyg och lägga till dem i agenter med Mosaic AI Agent Framework kan du använda valfri kombination av följande metoder:
- Unity Catalog-funktioner: Unity Catalog-funktioner definieras och hanteras i Unity Catalog och erbjuder inbyggda säkerhets- och efterlevnadsfunktioner. Genom att skriva verktyget som en Unity Catalog-funktion blir det enklare att identifiera, styra och återanvända verktyget. Funktionerna i Unity Catalog fungerar särskilt bra för att tillämpa transformeringar och aggregeringar på stora datamängder.
- Agentkodverktyg: Dessa verktyg definieras i samma kod som definierar AI-agenten. Den här metoden är användbar när du anropar REST-API:er, använder godtycklig kod eller bibliotek eller kör verktyg med låg latens. Den här metoden saknar dock den inbyggda identifieringen och styrningen som tillhandahålls av Unity Catalog-funktioner.
Båda metoderna är kompatibla med agenter som skrivits i anpassad Python-kod eller med hjälp av agentredigeringsbibliotek som LangGraph.
Exempel på funktionsverktyg och agentkodverktyg för Unity Catalog finns i Exempel på agentverktyg
Förbättra verktygssamtal med dokumentation
Tydlig och detaljerad dokumentation hjälper AI-agenter att förstå när och hur du använder de verktyg du tillhandahåller. När du skapar verktyg, dokumenterar verktygsparametrar och returnerar värden noggrant för att säkerställa att AI-agenten använder verktygen korrekt och vid rätt tidpunkt:
För Unity Catalog-funktioner använder du COMMENT
för att beskriva verktyget och parametrarna.
Exempel på effektiv verktygsdokumentation
I följande exempel visas effektiva COMMENT
strängar för ett funktionsverktyg i Unity Catalog som frågar en strukturerad tabell.
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;
Exempel på ineffektiv verktygsdokumentation
I följande exempel visas ineffektiva COMMENT
strängar som saknar nyckelinformation, till exempel returvärdena.
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;
Exempel på agentverktyg
I följande artiklar finns exempel på agentverktyg:
- Kodtolkarverktyg tillåta agenter att köra godtycklig kod, till exempel Python.
- Strukturerade datahämtningsverktyg tillåta agenten att fråga strukturerade datakällor som SQL-tabeller.
- Verktyg för ostrukturerad datahämtning tillåter din agent att köra frågor mot ostrukturerade datakällor som textkorpusar för att utföra generering förstärkt med hämtning.
Lägga till Unity Catalog-verktyg i agenter
När du har skapat Unity Catalog-verktygen lägger du till dem i din agent. LangChain-agenter kan använda UCFunctionToolkit för att införliva UC-verktyg.
Exportera verktygssamtalsagenter från AI Playground
AI Playground- är ett bekvämt sätt att lägga till Unity Catalog-verktyg i en LLM, testa agenten och exportera dess kod.
Om du vill använda AI Playground för att exportera agenter måste arbetsytan uppfylla följande krav:
- Unity Catalog måste vara aktiverat.
- serverlös beräkning måste vara aktiverad.
- Antingen Betala per token-grundmodeller eller externa modeller måste vara aktiverade.
Använd följande steg för att exportera kod för verktygsanropsagenter:
Från AI Playground väljer du en modell med etiketten Tools aktiverat.
Välj Verktyg och klicka på Lägg till ett verktyg.
I den nedrullningsbara menyn väljer du en Unity Catalog-funktion:
Använd Playground för att chatta och testa den aktuella kombinationen av LLM, verktyg och systemprompt. Prova varianter för att få en känsla för hur den aktuella installationen fungerar.
När du har lagt till verktyg exporterar du agenten till Python-notebook-filer:
Klicka på Exportera för att generera Python-notebook-filer som definierar och distribuerar agenten.
När du har exporterat agentkoden ser du tre filer som sparats på din arbetsyta:
-
agent
notebook: Innehåller Python-kod som definierar din agent med hjälp av LangChain. -
driver
notebook: Innehåller Python-kod för att logga, spåra, registrera och distribuera AI-agenten med hjälp av Mosaic AI Agent Framework. -
config.yml
: Innehåller konfigurationsinformation om din agent, inklusive verktygsdefinitioner.
-
Öppna anteckningsboken
agent
för att se LangChain-koden som definierar din agent. Använd den här notebook-filen för att testa och iterera på agenten programmatiskt, till exempel definiera fler verktyg.När du är nöjd med agentens utdata kör du
driver
notebook-filen för att logga och distribuera din agent till en modellserverslutpunkt.