---
id: pattern-reflection
title: "Reflection Pattern"
category: "Pattern_AI"
status: "draft"
verification_status: "applied"
canonical_id: ""
aliases: ["Reflection", "자기성찰 패턴", "self-reflection", "self-critique"]
duplicate_of: ""
source_trust_level: "A"
confidence_score: 0.88
created_at: 2026-06-13
updated_at: 2026-06-13
review_reason: ""
merge_history: []
tags: ["pattern", "ai", "reflection", "self-improvement", "platform-independent"]
raw_sources: ["일반 소프트웨어 공학 지식", "AstraAI/src/intelligence/*, src/features/selfReflector/* (적용 예)"]
applied_in: ["AstraAI"]
github_commit: ""
---

# [[Reflection Pattern]]

## 🎯 한 줄 통찰 (One-line insight)
Reflection 은 "모델이 자기 출력을 다시 점검·수정" 하는 패턴으로, 작은 모델의 1-pass 오류를 줄이지만 *호출이 늘어 비용/지연이 증가* 하므로 조건부로 써야 한다.

## 🧠 핵심 개념 (Core concepts)
1. **생성 → 점검 → (필요시) 재생성** 루프. 2. 점검은 *결정론 신호* 또는 *LLM 자기비판*. 3. 자기검토 지시를 시스템 프롬프트에 주입. 4. 무한 루프 방지(최대 라운드).

## 📖 세부 내용 (Details · 패턴 명세)
- **Problem (언제 쓰나):** 1-pass 정확도가 부족하고, 오류 비용이 재검토 비용보다 클 때.
- **사용 조건:** 점검 신호(규칙/요구사항/근거) 정의 가능; 추가 호출 latency 감당.
- **장점:** 정확도·완결성↑, 누락/모순 발견, 불확실성 표면화.
- **단점:** 지연·비용↑, 과도하면 헤지 남발, 무한 루프 위험.
- **대안:** 결정론 검증만(무LLM), 외부 검증기, 더 큰 모델 1-pass.
- **실패 사례:** 매 턴 무조건 reflect 로 latency 폭증; 자기비판이 오히려 정답을 망침; 종료 조건 없어 루프.

## 💻 코드 패턴 (Code patterns)
```text
draft = LLM(task)
signals = deterministicChecks(draft)        # 커버리지/근거/확신도 — 항상(저비용)
if signals.risky:                           # 조건부로만 LLM 점검
    issues = LLM_critique(task, draft)
    if issues: draft = revise(draft, issues)  # 최대 N라운드
emit(draft + confidence_footer)
```
적용 예: [[Intelligence 검증 레이어]] (사전 자기검토 블록 + 조건부 critic), 결정 [[ADR-0009 결정론 항상 LLM검증 조건부]].

## ⚖️ 모순 및 업데이트 (Contradictions & updates)
"항상 성찰하면 좋다" 는 비용을 무시한 통념 — *위험 신호가 있을 때만* 깊은 성찰이 비용 대비 효과적.

## 🛠️ 적용 사례 (Applied in summary)
AstraAI selfReflector + 조건부 Critic.

## 🔗 지식 그래프 (Knowledge Graph)
- **상위/루트:** [[패턴 카탈로그 인덱스]]
- **관련 개념:** [[Critic Pattern]], [[Agent Orchestration Pattern]], [[프롬프트 엔지니어링 패턴]]
- **참조 맥락:** 작은 모델의 자기개선 루프 설계 시 참조.

## 📚 출처 (Sources)
- [S1] 일반 reflection/self-critique 지식
- [S2] AstraAI/src/intelligence/*, features/selfReflector/* — 적용 예

## 📝 변경 이력 (Change history)
- 2026-06-13: 프로젝트 독립 패턴 카드 작성.
