Preskočiť na obsah
1.8Začiatočník6 min

Tool Calling: Ako AI agenti používajú nástroje

Sebastian KarallAktualizované 17. októbra 2026
Definition

Tool Calling (nazývané aj Function Calling) je kľúčová schopnosť, vďaka ktorej AI agent prekračuje rámec čistého generovania textu: LLM dostane strojovo čitateľné popisy nástrojov (napríklad API a dátových zdrojov) a v prípade potreby vygeneruje štruktúrované volanie s parametrami, ktoré aplikácia vykoná. Výsledok sa vráti do modelu a model potom naplánuje ďalší krok. Týmto spôsobom sa LLM mení z generátora textu na konajúceho aktéra, ktorý vníma, rozhoduje a spúšťa akcie v reálnych systémoch.

Na prvý pohľad

  • Tool Calling je most medzi LLM a vonkajším svetom: model vráti štruktúrované volanie (názov funkcie plus parametre podľa JSON schémy), aplikácia ho vykoná a výsledok vráti ako pozorovanie do slučky uvažovania (Perceive-Reason-Act-Observe).
  • LLM nevolá nástroje samo, volanie len navrhuje. Vykonanie, validácia a oprávnenia sú vecou okolitého kódu. Práve tam patria oprávnenia nástrojov, validácia vstupov a Human-in-the-Loop pri nezvratných akciách.
  • Najčastejším zdrojom chýb nie sú modely, ale nejasné alebo prekrývajúce sa definície nástrojov. Presné názvy, jednoznačné popisy a klauzula „kedy nepoužiť“ majú väčší účinok než akýkoľvek trik v prompte.
  • Osvedčeným postupom v roku 2026 je mať aktívne načítaných 3 až 7 nástrojov; približne od 10 nástrojov sa výber nástroja merateľne zhoršuje. Dynamické objavovanie nástrojov (tool discovery) namiesto statického načítania všetkých nástrojov udržiava výber presný.
  • Model Context Protocol (MCP) je otvorený štandard na pripájanie nástrojov: agent môže cez MCP servery štandardizovane pristupovať k nástrojom a dátovým zdrojom bez toho, aby pre každú integráciu písal vlastný prepojovací kód (glue code).
  • Bezpečnosť nie je doplnok: minimálne rozsahy oprávnení (least privilege) pre každý nástroj, allowlisty, potvrdzovacie kroky pri zapisujúcich alebo nezvratných akciách a observabilita všetkých volaní nástrojov sú povinné, len čo sa agent dotkne reálnych systémov.

Čo je Tool Calling?

Tool Calling (nazývané aj Function Calling alebo Tool Use) je kľúčová schopnosť, vďaka ktorej AI agent prekračuje rámec čistého generovania textu. LLM dostane strojovo čitateľné popisy nástrojov, funkcií, API a dátových zdrojov a v prípade potreby vygeneruje štruktúrované volanie s parametrami, ktoré okolitá aplikácia vykoná. Výsledok sa vráti do modelu ako pozorovanie a model potom naplánuje ďalší krok. Týmto spôsobom sa LLM mení z generátora textu na konajúceho aktéra.

Tri kľúčové odpovede na úvod:

  • Čo sa technicky deje? Model nevracia súvislý text, ale štruktúrované volanie: názov funkcie plus argumenty vo formáte JSON. Aplikácia toto volanie vykoná a výsledok vráti do modelu.
  • Kto vlastne volá? Nie samotné LLM. Model volanie navrhuje; samotné vykonanie vrátane kontroly oprávnení a validácie je vecou okolitého kódu. Toto oddelenie je základom každej bezpečnostnej architektúry.
  • Prečo je to kľúčová schopnosť agentov? Bez Tool Use zostáva LLM poradcom, ktorý vie len rozprávať. Až Tool Calling premení uvažovací model (reasoning engine) na agenta, ktorý vníma, plánuje, koná a pozoruje, teda prechádza celou slučkou Perceive → Reason → Act → Observe.

Konkrétny príklad: overiť dostupnosť a rezervovať termín

Predpokladajme, že agent má zákazníkovi rezervovať konzultačný termín. Model dostane k dispozícii dva nástroje, každý s názvom, popisom a schémou parametrov:

  1. get_availability(date: string): vráti voľné sloty pre daný dátum.
  2. book_appointment(slot_id: string, customer_email: string): rezervuje slot.

Priebeh:

  1. Reason: Používateľ napíše „Je budúci utorok dopoludnia ešte voľný termín?“. Model rozpozná, že najprv potrebuje zistiť dostupnosť.
  2. Act: Namiesto textovej odpovede vráti model štruktúrované volanie: get_availability(date: "2026-06-16").
  3. Execute: Aplikácia, nie model, zavolá skutočné kalendárové API a dostane dva voľné sloty.
  4. Observe: Výsledok (["09:00", "10:30"]) sa vráti do modelu ako pozorovanie.
  5. Loop: Model sformuluje doplňujúcu otázku alebo po potvrdení zavolá book_appointment(...).

Dôležité: zapisujúci krok (book_appointment) má nezvratný účinok. Práve sem patrí Human-in-the-Loop alebo potvrdzovací krok, skôr než agent akciu vykoná.

Mechanika Function Calling

Function Calling sa vo všetkých bežných LLM API riadi rovnakým základným vzorom bez ohľadu na poskytovateľa:

  1. Definícia nástroja: Každý nástroj je popísaný JSON schémou: názov, popis účelu v prirodzenom jazyku a typované parametre. Tento popis je jedinou informáciou, podľa ktorej model rozhoduje, či a ako nástroj použije.
  2. Výber nástroja: Model v kroku uvažovania vyberie vhodný nástroj a vyplní parametre. Využíva pritom výhradne dodané popisy a kontext konverzácie.
  3. Štruktúrovaný výstup: Namiesto prózy dodá model strojovo čitateľný objekt. Ak je aktívny striktný režim (strict mode), resp. Structured Outputs, poskytovateľ cez obmedzené dekódovanie (constrained decoding) vynúti, aby argumenty zodpovedali schéme. Bez tohto režimu môže model vygenerovať neplatné argumenty. Executor validuje parametre v oboch prípadoch, pretože argumenty v súlade so schémou nezaručujú ani prípustné hodnoty, ani potrebné oprávnenia.
  4. Vykonanie a pozorovanie: Volanie sa vykoná, výsledok sa vráti a slučka beží ďalej, kým sa nedosiahne cieľ alebo kým sa neuplatní kritérium ukončenia (limit slučky, chyba, guardrail).

Najdôležitejší poznatok z praxe: keď agent koná nesprávne, príčina spravidla nie je v modeli, ale v definícii nástroja. Anthropic formuluje zásadu ostro: ak ľudský inžinier nevie jednoznačne povedať, ktorý nástroj treba v danej situácii použiť, nevie to ani agent.

Z toho vyplývajú tri pravidlá návrhu:

  • Obmedziť počet nástrojov: Osvedčeným postupom v roku 2026 je mať aktívne načítaných 3 až 7 nástrojov; približne od 10 nástrojov sa výber nástroja merateľne zhoršuje. V interných evaluáciách MCP od spoločnosti Anthropic stúpla presnosť výberu nástroja s dynamickým vyhľadávaním nástrojov zo 49 % na 74 % (Opus 4), resp. zo 79,5 % na 88,1 % (Opus 4.5).
  • Vyhnúť sa prekrývaniu: Dva nástroje, ktoré by mohli rovnako vierohodne obslúžiť tú istú požiadavku, sú problém, ktorý nevyrieši žiadny prompt. Jasná klauzula „kedy nepoužiť“ v popise je najúčinnejšia a často prehliadaná súčasť.
  • Jednoznačné názvy a parametre: Výstižné názvy a presne typované parametre znižujú počet chybných interpretácií skôr, než vôbec vzniknú.

Vzťah k MCP: štandard na pripájanie nástrojov

Bez štandardu treba každú integráciu nástroja zapojiť samostatne, pre každého agenta, každé API a každý dátový zdroj s vlastným prepojovacím kódom. Model Context Protocol (MCP) rieši tento problém M-na-N: definuje jednotný protokol, cez ktorý agent (MCP klient) štandardizovane komunikuje s nástrojmi a dátovými zdrojmi (MCP server).

MCP teda určuje, ako Tool Calling prebieha, len čo nástroje už nie sú vo vlastnom kóde, ale poskytujú sa ako opätovne použiteľné servery. MCP server poskytuje nástroje, zdroje a prompty; agent ich objaví za behu a volá ich cez ten istý vzor Function Calling. Úroveň zrelosti je vysoká: aktuálna špecifikácia MCP má verziu 2026-07-28 a pracuje s bezstavovými, samostatnými požiadavkami. Projekt bol v decembri 2025 odovzdaný nadácii Linux Foundation (Agentic AI Foundation) a existuje už viac než 10 000 MCP serverov.

Zatiaľ čo MCP štandardizuje spojenie agent ↔ nástroj, komplementárny protokol A2A (Agent-to-Agent) upravuje komunikáciu agent ↔ agent v multiagentových systémoch. A2A je od júna 2025 takisto pod správou Linux Foundation a podporuje ho viac než 150 organizácií. Pre samotné Tool Calling je relevantným štandardom MCP; A2A sa stáva dôležitým až vtedy, keď spolupracuje viacero agentov.

Bezpečnosť: oprávnenia nástrojov ako povinnosť, nie ako možnosť

Len čo agent pracuje s reálnymi systémami, teda zapisuje do databáz, odosiela e-maily alebo spúšťa kód, bezpečnosť nástrojov sa stáva ústrednou požiadavkou. Dobrá správa: keďže LLM volania len navrhuje a okolitý kód ich vykonáva, kontrolný bod je presne tam, kam patrí.

Aspekt

Riziko bez ochrany

Opatrenie

Oprávnenia (scopes)

Agent získa plný prístup cez API token

Princíp najnižších oprávnení: pre každý nástroj len minimálne potrebné rozsahy oprávnení, samostatné prihlasovacie údaje pre každý nástroj

Validácia volaní

Model vygeneruje neprípustné alebo škodlivé parametre

Allowlisty, validácia schémy a rozsahu hodnôt v executore, nie v modeli

Nezvratné akcie

Agent maže, rezervuje alebo odosiela bez kontroly

Human-in-the-Loop / potvrdzovací krok pri zapisujúcich a nezvratných volaniach

Prompt injection / tool injection

Manipulovaná odpoveď nástroja riadi agenta

Nedôveryhodný výstup zapuzdriť, karanténa, neoverený výstup nástroja nikdy nepovažovať za príkaz

Spätná sledovateľnosť

Chybné správanie sa nedá zrekonštruovať

Observabilita: zaznamenávať každé volanie nástroja s parametrami, výsledkom a kontextom rozhodnutia

Tri úskalia z praxe sú obzvlášť časté: považovať agentov za deterministických, hoci výber nástroja je pravdepodobnostný; nezaviesť observabilitu, takže chyby v slučke zostávajú neviditeľné; a nezabezpečiť Human-in-the-Loop pri nezvratných akciách. V regulačne citlivých prostrediach v regióne DACH k tomu pribúda: zapisujúce operácie s osobnými údajmi sa dotýkajú povinností podľa GDPR a automatizované rozhodnutia s právnym účinkom môžu spadať pod čl. 22 GDPR (informatívne, nie právne poradenstvo).

Záver

Tool Calling je mechanizmus, ktorý mení LLM na agenta: model navrhuje štruktúrované volania, kód ich vykonáva a výsledok poháňa ďalší krok. O kvalite sa rozhoduje na troch miestach: pri presných definíciách nástrojov, ktoré sa neprekrývajú, pri malej aktívnej sade nástrojov (3 až 7) s dynamickým objavovaním a pri bezpečnostnej architektúre postavenej na princípe najnižších oprávnení, validácii, potvrdzovacích krokoch a observabilite. MCP na to dodáva otvorený štandard, ktorý posúva pripájanie nástrojov od jednotlivých integrácií k opätovne použiteľným serverom. Kto tieto základy ovláda, stavia agentov, ktorí v produkcii konajú spoľahlivo a kontrolovane.

Zhrnúť pomocou AIChatGPTClaudePerplexity

Otvorí chat s pripraveným promptom.

Často kladené otázky

Aký je rozdiel medzi Tool Calling a Function Calling?
Pojmy sa používajú do veľkej miery ako synonymá. Function Calling zdôrazňuje technickú mechaniku (model vygeneruje volanie funkcie podľa JSON schémy), Tool Use opisuje to isté z pohľadu agenta (model používa nástroj). V praxi oba pojmy označujú ten istý proces: LLM vráti štruktúrované volanie, ktoré aplikácia vykoná.
Volá LLM nástroje samo?
Nie. LLM volanie len navrhuje: vygeneruje názov funkcie a parametre. Samotné vykonanie preberá okolitý kód (executor), ktorý zároveň kontroluje oprávnenia, validuje parametre a vracia výsledok. Toto oddelenie je základom každej bezpečnostnej architektúry pre agentov.
Čo má MCP spoločné s Tool Calling?
MCP (Model Context Protocol) je otvorený štandard, ktorý zjednocuje spojenie medzi agentom a nástrojom. Namiesto toho, aby sa každá integrácia programovala samostatne, MCP server poskytuje nástroje štandardizovane; agent ich objaví za behu a volá cez bežný vzor Function Calling. MCP určuje, ako Tool Calling prebieha, len čo sú nástroje k dispozícii ako opätovne použiteľné servery.
Koľko nástrojov by mal mať agent naraz?
Osvedčeným postupom v roku 2026 je mať aktívne načítaných 3 až 7 nástrojov. Približne od 10 nástrojov sa výber nástroja merateľne zhoršuje, pretože model má čoraz väčšie ťažkosti s výberom správneho nástroja. Lepšie než veľká statická sada je dynamické objavovanie nástrojov: načítajú sa len nástroje relevantné pre aktuálny krok.
Ako zabezpečiť volania nástrojov?
Na viacerých úrovniach: minimálne rozsahy oprávnení (least privilege) pre každý nástroj a samostatné prihlasovacie údaje, validácia vstupov a allowlisty v executore, Human-in-the-Loop alebo potvrdzovací krok pri zapisujúcich a nezvratných akciách, zapuzdrenie nedôveryhodných výstupov nástrojov (proti tool injection) a observabilita, ktorá zaznamenáva každé volanie s parametrami a výsledkom.
Čo je najčastejším zdrojom chýb pri Tool Calling?
Nie model, ale definícia nástroja. Nejasné alebo prekrývajúce sa popisy vedú k tomu, že agent vyberie nesprávny nástroj. Pomôžu výstižné názvy, presne typované parametre a predovšetkým jednoznačná klauzula „kedy nepoužiť“ pre každý nástroj. Má to väčší účinok než akýkoľvek trik v prompte.

Ísť hlbšie?

Získajte nové analýzy priamo do schránky, alebo sa pozrite, ako tieto poznatky nasadzujeme pre firmy.