Model językowy sam w sobie jest zamkniętym systemem. Wie dużo — wszystko co było w danych treningowych — ale nie może sprawdzić aktualnej pogody, nie może wysłać emaila, nie może odczytać pliku z twojego dysku, nie może zapytać bazy danych. Wie, ale nie może działać.
Tool use jest mostem między wiedzą modelu a światem zewnętrznym.
Czym jest tool use
Tool use to zdolność modelu językowego do wywoływania zewnętrznych funkcji, API i serwisów w trakcie generowania odpowiedzi — model nie tylko odpowiada na podstawie wiedzy treningowej, ale aktywnie sięga po narzędzia (wyszukiwanie, bazy danych, kalkulatory, systemy zewnętrzne) żeby zebrać aktualne dane lub wykonać akcję. Fundament który odróżnia agenta od chatbota.
Jak to działa technicznie
Narzędzia są zdefiniowane jako funkcje z opisem co robią i jakie przyjmują parametry. Model czyta te definicje (w kontekście) i decyduje kiedy wywołać narzędzie zamiast odpowiadać z pamięci. Gdy model zdecyduje że potrzebuje narzędzia — generuje structured output z nazwą narzędzia i parametrami. Platforma wykonuje wywołanie i zwraca wynik do modelu. Model kontynuuje generowanie odpowiedzi z uwzględnieniem wyniku narzędzia.
Cały cykl: użytkownik pyta → model decyduje że potrzebuje narzędzia → wywołuje narzędzie → dostaje wynik → odpowiada użytkownikowi na podstawie tego wyniku.
MCP jako infrastruktura tool use
Model Context Protocol standaryzuje jak narzędzia są opisywane i wywoływane. Zamiast każdy developer definiował narzędzia w niestandardowy sposób — MCP daje jeden format który działa z każdym modelem który obsługuje MCP. Serwer MCP to kolekcja narzędzi dostępna przez standardowy protokół.
Tool use bez MCP: narzędzia są wbudowane w kod aplikacji, nie są przenośne między różnymi modelami i platformami. Tool use z MCP: narzędzia żyją na serwerze MCP, każdy agent który obsługuje MCP może z nich korzystać, niezależnie od dostawcy modelu.
Tool use a agent
Chatbot odpowiada na pytania. Agent wykonuje zadania. Kluczowa różnica to tool use — agent który ma dostęp do narzędzi może nie tylko odpowiadać ale działać: wyszukać, obliczyć, zapytać bazę danych, wysłać powiadomienie, zarezerwować termin, złożyć zamówienie.
Im więcej narzędzi ma agent, tym bardziej autonomiczny może być. Im bardziej autonomiczny, tym ważniejszy staje się human-in-the-loop i principle of least privilege — bo agent z szerokim zestawem narzędzi ma szeroki potencjał wyrządzenia szkody jeśli zostanie przejęty lub popełni błąd.
Function calling
„Function calling” to termin używany przez OpenAI i inne platformy dla mechanizmu który pozwala modelowi wywoływać zewnętrzne funkcje. Jest synonimem tool use — ta sama koncepcja, różna terminologia. OpenAI używa „function calling”, Anthropic „tool use”, Google „function declarations”.