Plan‑and‑Execute: plan jako artefakt kontroli i jakości
Jak oddzielić planowanie od wykonania, zwalidować plan przed uruchomieniem i uruchamiać przebiegi, które da się testować i utrzymywać jak klasyczny workflow.
Plan jako artefakt: po co to robić
Plan‑and‑Execute bywa mylony z „łańcuchem promptów”. Różnica jest zasadnicza: plan jest artefaktem kontroli. Da się go walidować, wersjonować, audytować i testować – zanim cokolwiek zostanie wykonane.
Minimalny schemat planu
plan:
goal: "..."
constraints: ["privacy", "policy@2.1", "tool.read_only"]
steps:
- id: "retrieve_policy"
tool: "knowledge.search"
input: {query:"..."}
expected: "citations"
- id: "draft_answer"
tool: "llm.generate"
input: {format:"answer_md"}
- id: "final_check"
tool: "lint.language"
input: {tone:"tone_v2"}
Walidacja planu (bramki)
- Policy gate: czy plan respektuje ograniczenia (PII, cytowania, narzędzia).
- Tool gate: czy kroki narzędziowe mają kontrakt, timeout, retry, idempotency.
- Cost gate: budżet tokenów i czas p95 (SLO).
Egzekucja i ślad
Execute powinien produkować dziennik: krok → wejście → wynik → decyzja bramki. To jest podstawa debugowania i regresji.
- trace: rozmowa + kroki narzędziowe,
- replay: odtwarzanie krok po kroku (mini-scrubber),
- post-mortem: porównanie planu z wykonaniem (odchylenia).
- różnica względem ReAct
- struktura planu (JSON)
- walidacja planu: policy/RBAC/DLP
- execute: timeouts, idempotency, trace
- checklist wdrożeniowy