← Vytvářejte agenty na Cloudflare / agents / concepts
Nástroje
Nástroje umožňují modelům získávat informace, zpracovávat data a provádět akce. Každý nástroj definuje rozhraní, které popisuje jeho vstupy, výstupy a chování.
Cestovní agent může využívat nástroje k vyhledávání letů, kontrole cen hotelů, zpracování plateb a odesílání potvrzovacích e-mailů. Rozhraní nástroje umožňuje modelu pochopit, kdy a jak každou schopnost použít.
Návrh nástrojů zahrnuje tři nezávislá rozhodnutí:
- Rozhraní modelu : zpřístupňuje nástroje jako přímá volání nástrojů nebo prostřednictvím Code Mode.
- Umístění spuštění : spouští implementace nástrojů ve Workeru, prohlížeči nebo jiném Agentovi.
- Zdroj nástroje : Definujte nástroje přímo v aplikaci, nebo se připojte k externě hostovaným nástrojům prostřednictvím Model Context Protocol (MCP).
Nástroje prohlížeče lze zpřístupnit například přímo nebo přes Code Mode. Stejně tak lze nástroj MCP zpřístupnit přes kterékoli z obou rozhraní modelu.
Zvolte rozhraní modelu
Přímá volání nástrojů a Code Mode určují, jak model nástroje vidí a volá. Neurčují ale, kde běží podkladové implementace nástrojů.
| Rozhraní | Jak to funguje | Kdy použít |
|---|---|---|
| Přímá volání nástrojů | Model dostává jednotlivé definice nástrojů. Každý výsledek se modelu vrátí ještě předtím, než zvolí další volání. | Úkol je jednoduchý a používá malou, známou sadu nástrojů. |
| Code Mode | Model dostává jeden nástroj typu kód a píše kód proti typovaným rozhraním nástrojů. | Úkol vyžaduje skládání, závislá volání, filtrování, větvení, opakovatelnou logiku nebo objevování nástrojů. |
Přímá volání nástrojů
Většina příkladů s nástroji používá přímá volání nástrojů, i když tento vzor výslovně nepojmenovávají. Každý nástroj definujete vy a jeho schéma předáváte modelu. Model vybere nástroj, vaše aplikace ho spustí a výsledek se vrátí zpět modelu.
Model vidí každý mezivýsledek ještě před volbou dalšího nástroje. Díky tomu je cestu provádění snadné zkontrolovat. Závislé operace ale vyžadují opakovaná kola modelu a zabírají kontext mezivýsledky.
Code Mode
Code Mode dává modelu jeden nástroj pro spouštění kódu. Model píše JavaScript, který volá typované nástroje, předává mezi nimi výsledky a řídí tok programu.
Vygenerovaný kód dokáže filtrovat rozsáhlé odpovědi a vracet jen konečnou hodnotu, kterou model potřebuje. Mezivýsledky zůstávají uvnitř sandboxu, místo aby po každé operaci vstupovaly do kontextu modelu. Díky tomu je Code Mode efektivnější pro skládané pracovní postupy a rozsáhlé katalogy nástrojů.
Code Mode navíc podporuje postupné zjišťování. Model může vyhledávat dostupné konektory a vyžádat si podrobné typy jen pro metody, které potřebuje. Úspěšné programy lze uložit jako opakovaně použitelné úryvky kódu.
Chování za běhu, schvalování, přehrávání a úryvky najdete v Jak funguje Code Mode.
Zvolte, kde nástroje běží
Umístění spuštění popisuje, kde běží implementace nástroje. Je nezávislé na rozhraní modelu. Nástroje v jednotlivých umístěních lze zpřístupnit přímo nebo prostřednictvím Code Mode.
| Umístění | Kdy použít | Začněte zde |
|---|---|---|
| Worker | Nástroj volá API, dotazuje SQL nebo používá bindingy a tajné klíče na straně serveru. | Nástroje na straně serveru |
| Prohlížeč | Nástroj potřebuje geolokaci, schránku, local storage nebo další API prohlížeče. | Nástroje na straně klienta |
| Jiný agent | Agent schopný chatu by měl běžet jako zachovaný streamovací nástroj. | Agents jako nástroje |
Při přímých voláních nástrojů model nástroj zavolá a framework nasměruje spuštění na nakonfigurované místo.
S Code Mode se vygenerovaný kód spouští v sandboxu. Volání z tohoto kódu překračují hranici sandboxu směrem k podkladové implementaci nástroje. Serverové nástroje se mohou spouštět v hostitelském Workeru, nástroje vlastněné prohlížečem se mohou spouštět na nadřazené stránce a nástroje Agent mohou práci delegovat na jiný Agent.
Připojení externích nástrojů pomocí MCP
Model Context Protocol (MCP) ↗ standardizuje způsob, jakým AI aplikace vyhledávají a vyvolávají externě hostované nástroje. MCP popisuje zdroj a transport nástroje, nikoli způsob, jakým ho model musí vyvolat.
Agent může zpřístupnit nástroje MCP prostřednictvím kteréhokoli z těchto rozhraní modelu:
- Předejte nástroje MCP přímo modelu pomocí MCP klient Agents.
- Zpřístupní nástroje MCP uvnitř Code Mode pro skládání a postupné zjišťování pomocí Konektory MCP.
Server MCP může sám o sobě zpřístupnit i Code Mode. Může například nabídnout jeden code nástroj nebo samostatné search a execute nástroje. Pro tyto vzory na straně serveru viz Vzory serverů MCP pro Code Mode.
Řiďte vedlejší efekty
Zásady schvalování jsou navíc nezávislé na místě spuštění a zdroji nástroje. Kterýkoli nástroj, který mění externí stav, může vyžadovat schválení uživatele.
Přímé nástroje mohou používat standardní schvalovací vzor s lidským zásahem.
Trvalý runtime Code Mode dokáže pozastavit vygenerovaný kód ještě předtím, než se spustí anotovaná metoda konektoru. Schválení přehraje dokončená volání z deníku běhů, provede schválenou akci a pokračuje ve stejném programu.