Jeden model językowny rzadko robi całą robotę sam. Realny system agentowy to sekwencja kroków: preprocessing inputu, retrieval z bazy wiedzy, wywołanie modelu, post-processing outputu, weryfikacja, wywołanie narzędzi, kolejne wywołanie modelu. Każdy krok ma wejście, wyjście i może zawieść na wiele sposobów.
Agent pipeline to sposób na opisanie i zarządzanie tą sekwencją — od chaosu ad-hoc do zarządzanego przepływu.
Czym jest agent pipeline
Agent pipeline to zdefiniowana sekwencja kroków przetwarzania w systemie agentowym — od odbioru inputu przez retrieval, preprocessing, wywołania modelu i narzędzi, post-processing, po delivery outputu — zarządzana jako kod (Directed Acyclic Graph lub sekwencja), testowalność i monitorowalna jako jednostka, z jasno zdefiniowanymi interfejsami między krokami.
Typowe kroki w agent pipeline
Input processing: parsowanie i walidacja wejścia od użytkownika. Sanityzacja (usunięcie potencjalnie złośliwych instrukcji), klasyfikacja (jaki typ pytania), routing (do którego agenta/modelu).
Retrieval: zapytanie do vector database lub knowledge graph. Reranking wyników retrieval przez mały model (cross-encoder) przed przekazaniem do dużego modelu.
Context assembly: złożenie kontekstu dla modelu — system prompt + retrieved documents + conversation history + current query. Optymalizacja by zmieścić się w context window.
Model inference: wywołanie modelu z assembled context.
Output processing: parsowanie odpowiedzi modelu, ekstrakcja tool calls jeśli model ich żąda, walidacja formatu (czy model zwrócił poprawny JSON jeśli wymagany).
Tool execution: wywołanie narzędzi, obsługa błędów, retry logic.
Response assembly: złożenie finalnej odpowiedzi dla użytkownika.
DAG jako reprezentacja pipeline
Złożone pipelines są reprezentowane jako Directed Acyclic Graph — węzły to kroki, krawędzie to przepływ danych. LangGraph implementuje tę reprezentację explicite, co ułatwia wizualizację, debugging i równoległe wykonywanie niezależnych gałęzi.
Pipeline vs ad-hoc
Agent bez pipeline: sekwencja wywołań napisana jako proceduralne imperatywne instrukcje. Działa dla prostych przypadków, trudny do testowania i modyfikowania.
Agent z pipeline: każdy krok jest oddzielną, testowalną jednostką z jasno zdefiniowanymi inputami i outputami. Zmiana jednego kroku nie psuje innych. Możliwa zamiana (inny model retrieval, inny reranker) bez przepisywania całości.