Robocikowo>ROBOCIKOWO
Agenci

Plan-and-Execute

2023AktywnyOpublikowano: 6 czerwca 2026Aktualizacja: 6 czerwca 2026Opublikowany
Wzorzec agentowy, w którym oddzielny planer generuje całą listę kroków przed wykonaniem, a executor realizuje je sekwencyjnie, opcjonalnie aktualizując plan po każdej obserwacji.
Kluczowa innowacja
Rozdziela planowanie od wykonania: jeden silny LLM tworzy wieloetapowy plan z góry, a tańszy executor (zwykle pętla ReAct) realizuje pojedyncze kroki, z opcjonalnym przeplanowaniem między krokami.
Kategoria
Agenci
Poziom abstrakcji
Wzorzec
Poziom operacji
Środowisko agentoweOrkiestracja
Zastosowania
agenci wieloetapowi w LangChain / LangGraphasystenci badawczy (deep research) wykonujący długie ścieżki wyszukiwańagenci kodujący rozkładający feature na pliki i edycjeworkflow data-analysis z wieloma zapytaniami SQL / wywołaniami APIautomatyzacja zadań biurowych z dziesiątkami kroków narzędziowych

Jak działa

1. Planer otrzymuje cel i ewentualny kontekst, po czym generuje uporządkowaną listę kroków (plan) — najczęściej w formacie strukturyzowanym (JSON / lista). 2. Executor pobiera pierwszy nieukończony krok i wykonuje go: typowo w pętli ReAct (thought → action → observation), z dostępem do narzędzi. 3. Wynik kroku jest dopisywany do stanu (scratchpad). 4. (Wariant z re-planowaniem) Planer ocenia, czy plan nadal jest aktualny w świetle obserwacji — jeśli nie, generuje nowy plan dla pozostałej części zadania. 5. Pętla trwa, aż plan jest wyczerpany lub planer zwróci sygnał ukończenia. Końcowa odpowiedź syntetyzowana jest na podstawie zebranych obserwacji.

Rozwiązany problem

Czysto reaktywne pętle agentowe typu ReAct mają tendencję do gubienia długoterminowego celu, mnożenia zbędnych wywołań narzędzi i przepalania tokenów silnego LLM na każdym pojedynczym kroku rozumowania. Plan-and-Execute wprowadza globalny kontekst (jawny plan) i pozwala odciążyć drogi model planowania od taniego modelu wykonującego rutynowe kroki.

Komponenty

PlannerTworzy globalny plan rozwiązania zadania.

Silny LLM, który na podstawie celu generuje uporządkowaną listę kroków. Często działa raz na początku i opcjonalnie ponownie przy re-planowaniu.

Oficjalna

ExecutorRealizuje pojedynczy krok i zwraca obserwację.

Agent (zwykle pętla ReAct) wykonujący pojedynczy krok planu z dostępem do narzędzi. Może być oparty o tańszy / mniejszy model niż planer.

Oficjalna

Re-plannerAdaptacja planu do obserwacji z executora.

Opcjonalny komponent oceniający aktualność planu po każdym kroku i generujący skorygowaną listę pozostałych kroków lub sygnał zakończenia.

Oficjalna

Tool registryUdostępnia zdolności działania.

Zbiór narzędzi (wyszukiwarka, kalkulator, API, kod) dostępnych dla executora; planer może być świadomy tego zbioru przy konstrukcji planu.

Oficjalna

State / scratchpadWspółdzielony kontekst pętli.

Pamięć robocza akumulująca cel, plan, wykonane kroki i ich obserwacje; współdzielona między planerem a executorem.

Implementacja

Pułapki implementacyjne
Plan oderwany od możliwości narzędziWysoka

Planer generuje kroki, których executor nie jest w stanie wykonać (brak narzędzia, zła sygnatura). Powoduje pętle błędów i marnowanie tokenów.

Rozwiązanie:Przekazuj planerowi listę narzędzi z opisami (tool schemas) i wymuszaj strukturyzowane wyjście walidowane wobec tej listy.
Brak re-planowania przy zmianie stanuWysoka

Sztywne wykonanie planu po pojawieniu się sprzecznych obserwacji prowadzi do nonsensownych kroków końcowych.

Rozwiązanie:Włącz tryb re-planowania (po każdym kroku lub po porażce); użyj LangGraph state machine zamiast prostej pętli.
Eksplozja kosztów planeraŚrednia

Re-planowanie po każdym kroku w silnym modelu radykalnie zwiększa koszt — czasem przekraczając ReAct na pojedynczym modelu.

Rozwiązanie:Re-planuj tylko warunkowo (porażka kroku, zmiana scope’u); cache’uj plan; rozważ ReWOO dla zadań offline.
Zbyt drobne lub zbyt grube krokiŚrednia

Bardzo drobne kroki dają plany o setkach pozycji (eksplozja stanu), bardzo grube — kroki, których executor nie potrafi wykonać atomowo.

Rozwiązanie:Wymuszaj w prompcie planera granularność „jeden krok = jedno wywołanie narzędzia lub jedna sub-odpowiedź".

Ewolucja

Oryginalny paper · 2023 · ACL 2023 · Lei Wang
Plan-and-Solve Prompting: Improving Zero-Shot Chain-of-Thought Reasoning by Large Language Models
Lei Wang, Wanyu Xu, Yihuai Lan, Zhiqiang Hu, Yunshi Lan, Roy Ka-Wei Lee, Ee-Peng Lim
2022
ReAct (Reasoning + Acting)

Yao et al. proponują przeplatanie rozumowania i działań — bezpośredni poprzednik koncepcyjny, w którym planowanie i wykonanie są zlane w jedną pętlę.

2023
BabyAGI
Punkt przełomowy

Yohei Nakajima publikuje minimalistyczny agent z osobnym task-creator i task-executor — pierwsza popularna implementacja Plan-and-Execute w open source.

2023
Plan-and-Solve Prompting
Punkt przełomowy

Wang et al. formalizują rozdział na fazę planowania i wykonania w zero-shot CoT i pokazują przewagę nad „Let’s think step by step".

2023
LangChain Plan-and-Execute Agents
Punkt przełomowy

Harrison Chase wprowadza referencyjną implementację wzorca w LangChain — planer LLM + executor ReAct + opcjonalny re-planner.

2023
ReWOO (Reasoning WithOut Observation)

Xu et al. proponują wariant, w którym planer generuje cały plan jako zmienne, a wykonanie narzędzi i synteza są oddzielone — drastyczna redukcja tokenów.

2023
LLMCompiler

Kim et al. rozszerzają Plan-and-Execute o graf zależności między krokami i równoległe wykonanie niezależnych wywołań narzędzi.

Hiperparametry (konfigurowalne osie)

Planner modelKrytyczna

Model używany do generowania planu. Zwykle silny model rozumujący (np. GPT-4 / Claude Opus / o1).

Executor modelWysoka

Model wykonujący pojedyncze kroki. Często tańszy/szybszy niż planer.

Re-plan strategyWysoka

Kiedy uruchamiać re-planowanie: nigdy / po każdym kroku / tylko po porażce / przy zmianie scope’u.

Max stepsŚrednia

Twardy limit liczby kroków planu / iteracji executora; bezpiecznik przed pętlami.

Tool setKrytyczna

Zbiór narzędzi udostępnionych executorowi; wpływa na to, co planer w ogóle może zaplanować.

Paradygmat wykonania

Tryb główny
Warunkowy

Dwa odrębne etapy (planowanie, wykonanie) o różnych charakterystykach obliczeniowych — często realizowane na różnych modelach.

Wzorzec aktywacji
Zależne od etapu
Mechanizm routingu

Planer kieruje przepływem przez wybór kolejnych kroków i ich przypisanie do narzędzi w executorze; w wariancie z re-planowaniem może zmienić trasę po obserwacji.

Równoległość

Poziom równoległości
Sekwencyjny

Kroki planu wykonywane są zwykle sekwencyjnie (krok n+1 zależy od obserwacji z kroku n). Warianty takie jak LLMCompiler wykrywają niezależne kroki i wykonują je równolegle.

Zakres
Inferencja

Wymagania sprzętowe

Podstawowe

Wzorzec orkiestracyjny — działa na dowolnej infrastrukturze obsługującej wybrane LLM-y.