30차시. 질의 재작성 및 재검색
정리
- 남은 실패의 원인은 사용자 표현과 문서 표현이 다른 어휘 불일치입니다. 파라미터로는 고쳐지지 않습니다. (30차시 「1. 14차시부터 남아 있던 문제」 › 1-2) 지금까지의 처방이 왜 안 통했나)
- 재작성 전략은 동의어 치환, 구어체를 문어체로, 핵심어만 추출, 질문 분해 네 가지입니다. 오늘은 앞의 세 가지만 씁니다. (30차시 「2. 질의 재작성의 4가지 전략」)
- 검색에는 query를, 답변 생성에는 question을 씁니다. 두 키를 나눠 두어서 재작성해도 원문이 남습니다. (30차시 「3. question과 query를 나눈 이유」)
- 이미 시도한 검색어를 프롬프트에 넣어야 temperature 0에서 같은 재작성이 반복되지 않습니다. (30차시 「4. 실습 ① — Rewrite 프롬프트」 › 4-1) tried 목록이 필요한 이유)
- retries와 rewrites는 비용이 다르므로 상한을 따로 둡니다. (30차시 「5. 실습 ② — Rewrite Node 구현」 › 5-1) State에 키 추가)
- 재작성과 재생성이 모두 상한까지 돌면 LLM 호출이 9회까지 늘 수 있으니 최악의 비용을 미리 계산해 둡니다. (30차시 「7. 완성된 그래프 구조」)