LLM + RAG + Function Calling to nie agent AI

Wiele osób określa każdą aplikację wykorzystującą LLM, RAG i function calling jako agenta AI.

To błąd.

Te narzędzia dodają możliwości. Nie dodają jednak autonomii. Bez autonomii nie masz agenta.

Zamieszanie wynika z tego, że ludzie mylą możliwości systemu z jego zachowaniem.

Przyjrzyjmy się rolom tych komponentów:

  • LLM generują odpowiedzi na podstawie kontekstu. Nie kontrolują one przepływu systemu.
  • RAG pobiera istotne dane. Dostarcza kontekst, ale nie podejmuje decyzji ani nie planuje kroków.
  • Function calling pozwala modelowi LLM prosić o wykonanie akcji. To system nadal decyduje, jakie funkcje istnieją i kiedy je uruchomić.

Nawet po połączeniu wszystkich trzech elementów, systemowi wciąż brakuje kontroli nad przepływem wykonania.

W większości konfiguracji aplikacja podąża za zdefiniowanym wcześniej potokiem (pipeline). Kod decyduje o tym:

  • Kiedy użyć RAG.
  • Kiedy wywołać LLM.
  • Kiedy wywołać funkcję.
  • Jak zwrócić odpowiedź.

Jest to ograniczony przepływ pracy (workflow). Model podąża wyznaczoną ścieżką, a następnie się zatrzymuje. Nie planuje ani nie iteruje samodzielnie.

Agent AI działa inaczej. Nie podąża za sztywną sekwencją. Decyduje o swoim kolejnym kroku na podstawie tego, co dzieje się w trakcie procesu.

Różnica jest prosta:

  • System niebędący agentem podąża za przepływem pracy.
  • System agentowy dąży do celu.

Agent jest definiowany przez zachowanie, a nie przez narzędzia. Agent musi być w stanie:

  • Wybrać kolejną akcję.
  • Dynamicznie wybierać narzędzia.
  • Wykonywać wiele kroków w pętli.
  • Zmieniać plan na podstawie nowych wyników.
  • Pracować aż do osiągnięcia celu.

Pomyśl o odpowiedzialności.

W aplikacji opartej na LLM system mówi modelowi, co ma robić.

W przypadku agenta system podaje modelowi cel. Model decyduje, jak go osiągnąć.

RAG poprawia kontekst. Function calling umożliwia akcje. LLM zapewniają rozumowanie. Żadne z nich samo w sobie nie tworzy agenta.

Agent istnieje tylko wtedy, gdy model kontroluje własną sekwencję działań.

Źródło: https://dev.to/rohith_kn/llm-rag-function-calling-is-not-an-ai-agent-5459