Wprowadzenie do agentów AI
W ostatnich latach termin „agenci AI” zyskał na popularności w ekosystemie sztucznej inteligencji, zwłaszcza w kontekście generatywnej AI. Mimo że agenci AI coraz częściej pojawiają się w różnych branżach, definicja tego pojęcia pozostaje niejasna. W artykule tym postaramy się przybliżyć koncepcję agentów AI, szczególnie w kontekście możliwości, jakie oferują programistom. Przyjrzymy się, jak zbudować takiego agenta od podstaw oraz jakie są jego kluczowe elementy.
Czym jest agent AI?
Najłatwiej można pomyśleć o agencie AI jako cyfrowym odpowiedniku pracownika. Kiedy osoba podejmuje nową pracę, ma jasno określone obowiązki, cele do osiągnięcia, hierarchię raportowania oraz dostęp do informacji organizacyjnych. Podobnie agenci AI funkcjonują na podstawie określonych ról i zadań. Mają one określoną strukturę i funkcje, które pozwalają na efektywną realizację swoich zadań, a wszystko to wspierane jest przez nowoczesne technologie AI, takie jak modele językowe typu LLM (Large Language Models).
Budowa agenta AI
Każdy agent AI posiada kilka kluczowych elementów, które definiują jego działanie. Te elementy można porównać do specyfikacji stanowisk pracy w tradycyjnych organizacjach:
1. Persona
Persona to odpowiednik tytułu zawodowego lub funkcji, jaką agent będzie pełnił. Dla agenta AI persona to rola, którą odgrywa w interakcji z użytkownikiem. Może to być na przykład rola „inżyniera wsparcia technicznego”, który pomaga użytkownikom rozwiązywać problemy techniczne.
Technicznie, persona agenta AI jest zdefiniowana przy użyciu tzw. systemowych promptów, które określają, jak agent ma się zachowywać w ramach swojej roli. Przykładowy prompt dla agenta wsparcia technicznego mógłby brzmieć:
plaintext
Jesteś inżynierem wsparcia technicznego w firmie technologicznej. Twoim zadaniem jest pomaganie klientom w rozwiązywaniu problemów związanych z oprogramowaniem. Powinieneś reagować profesjonalnie i empatycznie, dbając o to, aby klient czuł się wysłuchany i zrozumiany.
2. Instrukcja
Instrukcja to ogólny opis zadań, jakie agent ma wykonać. Określa ona zakres działań, których agent może się podjąć w zależności od potrzeb użytkownika. Przykładowo, dla agenta wsparcia technicznego może to być instrukcja dotycząca rozwiązywania problemów związanych z oprogramowaniem, ale także przekierowywania pytań spoza jego kompetencji do odpowiednich działów.
3. Zadanie
Zadanie to bardziej szczegółowa wersja instrukcji, skoncentrowana na konkretnym działaniu. Chociaż instrukcja daje ogólny plan działania, zadanie definiuje konkretne kroki, które agent ma wykonać. W praktyce, zadanie może wyglądać tak:
plaintext
Użytkownik zgłasza problem z generowaniem raportu finansowego w oprogramowaniu. Pomóż użytkownikowi zidentyfikować możliwe przyczyny, takie jak błędne dane wejściowe lub problemy z wersją oprogramowania.
4. Planowanie
Planowanie w kontekście agenta AI polega na zastosowaniu zaawansowanych technik inżynierii promptów, takich jak „Chain-of-Thought” (łańcuch myśli) czy „Reflection” (refleksja). Dzięki odpowiedniemu planowaniu agent może lepiej zrozumieć złożone problemy i dostosować swoje działania w odpowiedzi na zapytania użytkownika.
5. Pamięć
Pamięć agenta AI działa analogicznie jak ludzka pamięć w kontekście wsparcia technicznego. Krótkoterminowa pamięć pozwala agentowi zapamiętać informacje w ramach jednej sesji, np. szczegóły zgłoszonego problemu. Długoterminowa pamięć pozwala na przechowywanie informacji o poprzednich interakcjach użytkownika, co umożliwia lepsze dostosowanie obsługi w przyszłości.
Technologie takie jak bazy danych wektorowych umożliwiają agentowi AI szybkie odwołanie się do kontekstu wcześniejszych interakcji, a tradycyjne bazy danych przechowują długoterminowe informacje, co pomaga w budowaniu ciągłości obsługi.
6. Narzędzia
Agenci AI, podobnie jak ich ludzcy odpowiednicy, potrzebują narzędzi, aby efektywnie realizować swoje zadania. Mogą to być zewnętrzne API, narzędzia do wyszukiwania informacji czy systemy wewnętrzne, z którymi agent może się integrować. Dzięki tzw. „function calling”, agent może dynamicznie korzystać z tych narzędzi, na przykład, aby zaktualizować dane w systemie ERP.
7. Delegowanie
Delegowanie zadań to kluczowa umiejętność zarówno dla ludzi, jak i dla agentów AI. W sytuacji, gdy agent napotka problem, którego nie jest w stanie rozwiązać samodzielnie, może przekazać zadanie innemu agentowi, który posiada bardziej specjalistyczną wiedzę. Przykładowo, agent AI obsługujący problemy techniczne może przekazać zadanie do agenta specjalizującego się w debugowaniu kodu.
Podsumowanie
Agenci AI to zaawansowane narzędzia, które w coraz większym stopniu zaczynają przypominać ludzkich pracowników. Dzięki personie, zadaniom, pamięci i narzędziom, mogą wykonywać różnorodne zadania, w tym rozwiązywać problemy, planować działania czy delegować zadania do innych agentów. W przyszłości agenci AI mogą stać się integralną częścią wielu organizacji, wspierając pracowników w codziennych obowiązkach.
W kolejnych artykułach skupimy się na przykładach implementacji tych koncepcji oraz na budowie rzeczywistych rozwiązań z wykorzystaniem agentów AI.