LangGraph 실전 — Reflection Agent와 Planning 패턴
Tool Calling으로 ReAct를 개선하고, LangGraph로 Reflection Agent와 Planning Agent를 구현합니다.

LangGraph 실전 — Reflection Agent와 Planning 패턴
Part 1에서 만든 ReAct Agent는 한 가지 치명적 약점이 있습니다: 자기가 틀렸는지 모릅니다. "서울 인구가 5천만"이라고 답해도, 본인은 확신에 차 있죠. Reflection 패턴은 에이전트에게 "자기 검증" 능력을 부여합니다. 그리고 Planning 패턴은 복잡한 태스크를 체계적으로 분해하는 능력을 줍니다.
시리즈: Part 1: ReAct 패턴 | Part 2 (이 글) | Part 3: MCP + Multi-Agent | Part 4: 프로덕션 배포
Self-Critique: 에이전트가 자기 출력을 검증하는 법
사람도 글을 쓰고 나면 퇴고를 합니다. 첫 번째 초안이 완벽한 경우는 거의 없죠. LLM Agent도 마찬가지입니다. 한 번에 완벽한 답을 기대하는 건 비현실적이고, 스스로 검증하고 개선하는 루프를 만들어주면 품질이 확연히 달라집니다.
관련 포스트

TurboQuant vLLM, A100 한 장에서 실측 — 8B 모델에서 프리셋 4개의 용량·속도·정확도
vLLM 0.28, Qwen3-8B bf16, A100 80GB: bf16·fp8·TurboQuant 프리셋 4개의 KV 용량, 배치 처리량, 32K 디코드, needle-in-haystack, GSM8K를 직접 쟀습니다. vLLM 연구가 다루지 않은 8B 크기입니다.

TurboQuant를 실제 KV 텐서 위에서 밑바닥부터 — 3비트의 진짜 비용, 그리고 포크가 논문 레이아웃을 이기는 이유
PolarQuant를 PyTorch 60줄로 구현해 Llama-3.2-1B·Qwen3-8B의 실제 KV에 적용. 3비트는 +10%, k8v4는 +0.2%, QJL은 저비트에서만 유효, 블록-32 레이아웃이 포크 우위의 절반을 설명합니다.

TurboQuant llama.cpp CUDA 포크, A100에서 실측 — turbo4는 q4_0급, turbo3는 긴 컨텍스트에서 무너진다
Qwen3-8B Q4_K_M, A100 한 장, KV 타입 6종: perplexity·프리필·깊이별 디코드·VRAM 실측. turbo4는 q4_0과 품질 동급에 깊은 컨텍스트에선 q8_0보다 2.5배 빠르고, turbo3는 32K에서 PPL이 세 배로 뜁니다.