制御された修復経路:invalid_arguments フィードバック後の回復
Agent支援エンジニアリングチェック
前提条件
Day 74 の検証層。決定論的アダプタの障害モード。
学習目標
注入された invalid_arguments 障害を実行し、構造化エラー観測を確認し、アダプタがリトライ予算内で回復して外部検証済みの完了実行へ至ることを確かめます。
手順
1. REPL で tempfile ワークスペース内に DeterministicModelAdapter(fault="invalid_arguments") と AgentConfig(max_steps=6, max_retries=2) でタスクを実行します。
2. ステップ 1 は filename ../outside.txt の read_note を提案。basename 規則が拒否:観測 {ok:false, error:invalid_arguments}。retries が 1 になります。
3. 次のモデルリクエストでアダプタは履歴(まだ成功した list_notes がない)から再計画し、list_notes → 両方の読み取り → write_report を発行します。これが制御された修復経路:悪い呼び出しを黙って再試行せず、エラー観測が次のアクションを操縦します。
4. RunResult を検証:status completed、steps 5、retries 1、termination goal_reached。続いて evaluate() で採点します。
5. Reflexion 流の言語化フィードバックとの対比:本アダプタは失敗の観測を読み直すだけで推論テキストを保存しません。修復の証拠はすべて action/observation トレースにあります。
演習と予測記録
障害実行を行い、trace[0].observation.error、trace[1].observation.ok、steps、retries、status、termination を記録し、report.txt の内容が expected_report() と一致することを確認しなさい。
tests/projects/test_agent_learning.py::test_invalid_arguments_are_observed_then_corrected_within_retry_budget を参照。
import tempfile
from pathlib import Path
from projects.agent_learning.agent import DeterministicModelAdapter, AgentConfig, run_task, evaluate
from projects.agent_learning.fixtures import create_fixture, expected_report
with tempfile.TemporaryDirectory() as d:
ws = Path(d); create_fixture(ws)
r = run_task("summarize-notes", ws, DeterministicModelAdapter(fault="invalid_arguments"), AgentConfig(max_steps=6, max_retries=2))
assert r.trace[0]["observation"]["error"] == "invalid_arguments"
assert r.status == "completed" and r.retries == 1 and r.steps == 5
assert (ws / "report.txt").read_text() == expected_report()
正確なカウンタ(steps=5、retries=1、completed/goal_reached)で修復経路を再現し、同じ悪い呼び出しが逐語再試行されない理由を説明できること。
公式ソースリソースと権利証跡
Reflexion: Language Agents with Verbal Reinforcement Learning
該当セクション・タイムスタンプ: Section 2 & 3 (Reflexion Architecture and Memory Buffer)
検証バージョンと日付: NeurIPS 2023 / arXiv:2303.11366v4 (Verified: 2026-10-30)
Rigorous framework analyzing dynamic error feedback, memory buffering of execution failures, and controlled self-reflection loops without updating model weights.
Reinforcement learning concepts, agent evaluation loops, and error feedback handling.
Error recovery state diagrams and retry budget algorithms are detailed in curriculum materials.
比較対象候補リソースと選定評価 (2)
Single-turn generative text refinement; Reflexion operates across multi-turn external environment action-observation failures.
Domain-specific LLM-based agent for open-world Minecraft; Reflexion establishes domain-general verbal feedback control loops.
ReAct: Synergizing Reasoning and Acting in Language Models
該当セクション・タイムスタンプ: Section 3 & 4 (ReAct Formulation and Synergy)
検証バージョンと日付: ICLR 2023 / arXiv:2210.03629v2 (Verified: 2026-10-30)
Foundational academic paper introducing the interleaved Thought-Action-Observation control loop in LLM agents, establishing formal interleaving of task reasoning and external tool execution.
Prompt engineering, token generation basics, and conversational interaction loops.
Complete algorithmic step traces, state loop diagrams, and control loop pseudocode are self-contained in curriculum materials.
比較対象候補リソースと選定評価 (2)
Pure reasoning without environmental actions or external tool grounding; ReAct extends reasoning into an interactive environment action-observation loop.
Early neuro-symbolic modular router concept; ReAct offers simpler, prompting-native action-observation loop dynamics suitable for standard API models.