26차시. Verifier Node 설계
9. 자주 겪는 문제
출처: 원본 PDF 26차시_VerifierNode설계.pdf 19쪽 · 쪽 그림 19쪽
| 증상 | 원인과 해결 |
|---|---|
| JSONDecodeError 발생 | 정규식으로 { } 블록만 추출하세요. 모델이 앞뒤에 말을 붙입니다 |
| KeyError: 'grounded' | v.get("grounded")로 읽고 기본값을 주세요 |
| 심판이 평가 대신 답변을 다시 써줌 | "답변을 생성하지 말라"를 프롬프트에 명시하세요 |
| 템플릿에서 KeyError: 'grounded' | 프롬프트의 JSON 예시에 중괄호를 두 번 {{ }} 쓰세요 |
| 정상 답변도 계속 retry | 기준이 엄격합니다. relevant를 빼거나 프롬프트를 완화하세요 |
| 모든 답변을 LLM 심판에 보내 비용 폭증 | 규칙 기반 1차 필터를 앞에 두세요 |
| 검증 오류로 서비스가 멈춤 | except에서 pass로 처리하세요. 검증이 서비스를 막으면 안 됩니다 |
9-1) 심판도 틀릴 수 있습니다
⚖️ 검증을 100% 신뢰하지 마세요
Verifier도 결국 LLM입니다.
· 맞는 답변을 틀렸다고 할 수 있습니다
· 틀린 답변을 통과시킬 수 있습니다
그래서 반드시 필요한 것이
① 재시도 횟수 상한 (27차시)
② 상한 도달 시 안전 종료 (31차시)
"검증이 통과할 때까지 반복"은 위험한 설계입니다.
심판이 잘못 판단하면 영원히 끝나지 않습니다.