Budowa wnioskującego agenta AI z LlamaIndex: ReAct i Function Agent w Pythonie
Warsztat dla mid-level developerów, którzy chcą krok po kroku zbudować w Pythonie agenta wnioskującego w LlamaIndex, porównać ReActAgent i FunctionAgent, nauczyć się projektowania narzędzi, debugowania, guardrailów oraz złożyć na końcu pełny listing działającego agenta.
Praktyczny kurs warsztatowy pokazujący, jak od podstaw zaprojektować, zaimplementować i uruchomić agenta AI wnioskującego z użyciem biblioteki LlamaIndex. Uczestnik przejdzie przez pełny proces: od wyboru architektury agenta, przez definiowanie narzędzi w Pythonie, projektowanie instrukcji systemowych, obsługę pamięci i stanu, aż po testowanie, diagnozowanie błędów i składanie kompletnego rozwiązania end-to-end. Kurs celowo zestawia dwa podejścia wspierane przez aktualną dokumentację LlamaIndex: FunctionAgent, preferowany dla modeli z natywnym function/tool calling, oraz ReActAgent, przydatny wtedy, gdy chcemy jawnego cyklu reason-act lub pracujemy z modelami bez natywnego function callingu. Warsztat opiera się na aktualnych wzorcach z dokumentacji LlamaIndex, gdzie agenci są budowani z pakietu workflow, narzędzia mogą być zwykłymi funkcjami Pythona albo QueryEngineTool, a szerszy kontekst architektoniczny osadzony jest w event-driven Workflows. Oprócz samego kodu kurs tłumaczy, dlaczego konkretne decyzje projektowe są poprawne, jakie błędy pojawiają się najczęściej oraz jak ich unikać w praktyce produkcyjnej.
Czego się nauczysz
- Wyjaśnisz różnice między ReActAgent i FunctionAgent oraz dobierzesz właściwy typ agenta do możliwości modelu LLM.
- Zbudujesz w Pythonie działającego agenta LlamaIndex opartego o własne funkcje-narzędzia oraz poprawnie opisane sygnatury i docstringi.
- Zaprojektujesz instrukcję systemową, opisy narzędzi i kontrakt wejścia/wyjścia tak, aby agent częściej wybierał właściwe akcje.
- Dodasz stan rozmowy i kontekst wykonania z użyciem mechanizmów workflow oraz nauczysz się kontrolować przebieg wieloetapowego wnioskowania.
- Zdiagnozujesz najczęstsze błędy: zły dobór narzędzia, halucynowane argumenty, pętle agentowe, zbyt szerokie prompty i nieczytelne opisy funkcji.
- Porównasz pełne artefakty before/after: słabo zaprojektowane i dobrze zaprojektowane narzędzia, prompty oraz przebiegi decyzji agenta.
- Zintegrujesz narzędzia funkcyjne z narzędziami opartymi o QueryEngineTool, aby agent potrafił korzystać zarówno z logiki aplikacyjnej, jak i warstwy wiedzy.
- Przeprowadzisz testy manualne i scenariuszowe agenta, dodasz logowanie zdarzeń i przygotujesz checklistę jakości przed wdrożeniem.
- Złożysz na końcu kursu kompletny, pełny listing całego agenta wraz z omówieniem każdej sekcji kodu i powodów stojących za architekturą.
Wymagania wstępne
Znajomość Pythona na poziomie średnio zaawansowanym, podstawy pracy z API modeli LLM, umiejętność uruchamiania projektów w virtualenv lub uv, podstawowa znajomość JSON i typowania funkcji. Przydatne będzie doświadczenie z prompt engineeringiem oraz podstawowa wiedza o RAG, ale kurs prowadzi krok po kroku również przez decyzje architektoniczne. Uczestnik powinien mieć skonfigurowane środowisko Python 3.10+ oraz klucz API do wybranego dostawcy modelu.
Program kursu
- Use case kursu: agent developerski, który wybiera tool, wywołuje API i uzasadnia wynik
- Aktualny stack LlamaIndex dla agentów: tools, Context, workflow i instrumentacja
- ReActAgent vs FunctionAgent w praktyce: tabela decyzji, ograniczenia modeli i koszt błędnych wyborów
- Artefakt roboczy: macierz wyboru ReAct vs FunctionAgent dla 6 typów zadań
- Quiz: rozpoznawanie właściwej architektury agenta na podstawie wymagań systemowych
- Od zwykłej funkcji Pythona do FunctionTool: sygnatura, docstring, typy i kontrakt wejścia
- Słaby vs mocny opis narzędzia: porównanie pełnych definicji tooli before/after
- Projektowanie argumentów JSON bez pułapek: enumy, wartości domyślne, pola opcjonalne i walidacja
- Return_direct, format odpowiedzi i kiedy tool ma zwracać surowe dane zamiast narracji
- Warsztat: przygotowanie checklisty jakości toola i szablonu specyfikacji do repozytorium
- Quiz: identyfikacja błędów w definicjach narzędzi powodujących złe tool calling
- Setup projektu: virtualenv lub uv, struktura katalogów, zależności i konfiguracja kluczy API
- Implementacja wspólnego zestawu narzędzi: kalkulacja, pobranie danych z API i prosty lookup lokalny
- Budujemy ReActAgent: prompt sterujący, kroki Thought/Action i kontrola odpowiedzi końcowej
- Budujemy FunctionAgent: natywne tool calling, Context i obsługa stanu pomiędzy wywołaniami
- To samo zadanie, dwa agenty: pełny worked example od inputu do outputu z krytyką odpowiedzi
- Quiz: który fragment implementacji odpowiada za wybór toola, stan i format odpowiedzi
- Jak streamować eventy i logować przebieg agenta: AgentInput, ToolCall, ToolCallResult i output
- Typowe błędy ReActAgent: pętle rozumowania, zły wybór narzędzia i nadpisywanie instrukcji systemowej
- Typowe błędy FunctionAgent: niezgodny schema, błędne argumenty i krucha serializacja danych
- Debug notebook: 5 awarii end-to-end i ich naprawa krok po kroku z logami before/after
- Artefakt zespołowy: scorecard oceny odpowiedzi agenta, wywołań tooli i jakości uzasadnień
- Quiz: diagnoza źródła błędu na podstawie logu wykonania
- Granice odpowiedzialności agenta: co ma rozstrzygać model, a co twardy kod aplikacji
- Pamięć i stan w LlamaIndex: kiedy używać Context, a kiedy izolować sesje i resetować historię
- Guardraile dla tooli i odpowiedzi: walidacja, retry, timeouts, fallbacki i bezpieczne komunikaty błędów
- Koszt i latencja: jak ograniczać liczbę wywołań modelu i narzędzi bez utraty jakości
- Porównanie architektur: pojedynczy agent, agent z workflow i lekki agent nad RAG
- Quiz: wybór mechanizmów hardeningu dla konkretnych scenariuszy produkcyjnych
- Brief projektu: agent Pythonowy do obsługi zapytań operacyjnych nad API i narzędziami lokalnymi
- Wybór architektury i plan implementacji: Mermaid diagram przepływu, lista tooli i kryteria sukcesu
- Implementacja MVP: pełny przebieg od pierwszego promptu do działającej odpowiedzi agenta
- Testy scenariuszowe i regresyjne: zestaw przypadków, oczekiwane wyniki i tabela oceny
- Hardening review: checklista przed produkcją, długi techniczne i plan kolejnych iteracji
- Quiz końcowy: dobór poprawek architektonicznych na podstawie symptomów z mini-projektu
Najczęściej zadawane pytania
Nauczysz się od podstaw budować wnioskującego agenta AI w Pythonie z wykorzystaniem LlamaIndex: od doboru architektury, przez definiowanie narzędzi i promptów systemowych, po obsługę pamięci, stanu, debugowanie i uruchomienie pełnego rozwiązania end-to-end.
Bo oba podejścia są istotne w praktyce. Aktualna dokumentacja LlamaIndex wskazuje, że FunctionAgent warto preferować dla modeli wspierających natywne function calling, a ReActAgent pozostaje bardzo użyteczny tam, gdzie liczy się większa uniwersalność modelu i jawny tok działania. Dzięki temu kurs pomaga zrozumieć nie tylko jak zbudować agenta, ale też kiedy wybrać dane podejście.
Tak. Rynek szybko przesuwa się w stronę systemów agentowych: Gartner prognozował, że do końca 2026 roku 40% aplikacji enterprise będzie zawierać wyspecjalizowanych agentów AI, podczas gdy w 2025 było to mniej niż 5%. To sprawia, że praktyczna umiejętność budowy agentów z narzędziami, pamięcią i kontrolą przepływu staje się coraz bardziej cenna.
Dla programistów Pythona, inżynierów AI/ML, osób budujących aplikacje LLM oraz praktyków, którzy chcą przejść od prostych chatbotów do agentów wykonujących zadania z użyciem narzędzi, logiki wnioskowania i kontroli stanu.
Nie. Kurs prowadzi krok po kroku przez najważniejsze elementy ekosystemu potrzebne do budowy agenta. Przyda się natomiast podstawowa znajomość Pythona i ogólne rozumienie działania modeli językowych.
To kurs warsztatowy, nastawiony na implementację, a nie teorię. Zamiast ogólnego przeglądu dostajesz proces projektowy, konkretne decyzje architektoniczne, pracę z narzędziami w Pythonie, pamięcią i stanem agenta oraz metody diagnozowania błędów w realnym rozwiązaniu.
- 8 godzin
- Średniozaawansowany
- Certyfikat po ukończeniu
- Dostęp natychmiast po zakupie