27차시. 기본 Modular RAG 구현
1. 오늘 완성할 시스템
출처: 원본 PDF 27차시_기본ModularRAG구현.pdf 3쪽 · 쪽 그림 3쪽
24~26차시에서 모듈 3개를 만들었습니다. 오늘 이들을 연결합니다.
■ 22차시 (2부 결과물)
──────────────────────────────────────
START → retrieve ─ ok ────→ generate → END
└ empty ─→ fallback → END
■ 27차시 (오늘 완성)
──────────────────────────────────────
START → retrieve ─ ok ────→ generate → verify
└ empty ─→ fallback │
↑ ├ pass ──→ END
│ ├ retry ─→ bump
│ └ giveup ┘ │
└────────────────┐ │
generate ←──────┘1-1) 무엇이 달라지나
| 22차시 버전 | 27차시 버전 |
|---|---|
| 생성된 답을 그대로 내보냄 | 심판을 통과한 답만 내보냄 |
| 환각이 섞여도 알 수 없음 | 근거 이탈이 잡히면 재생성 |
| 품질이 나빠도 재시도 불가 | 최대 2회까지 다시 시도 |
| 왜 이 답이 나왔는지 기록 없음 | 판정 이유가 로그에 남음 |
🎯 이제 시스템이 자기 답변을 검토합니다
이것이 실무 최소 요건입니다.
"답변이 틀릴 수도 있다"를 전제로
· 검증하고
· 실패하면 다시 시도하고
· 그래도 안 되면 정직하게 마무리합니다
검증이 없는 RAG를 실무에 올리는 것은
브레이크 없는 차를 파는 것과 같습니다.