2026년 8월 26일 수요일

RAG 실전 ⑦ — 생성과 grounding: 무엇을 넣지 않을지, 언제 답하지 않을지

생성 단계의 진짜 기술은 프롬프트 문구가 아니라 무엇을 컨텍스트에 넣지 않을지, 그리고 언제 답하지 않을지를 결정하는 파이프라인이다. 근거가 되는 발견 네 가지부터.

컨텍스트 조립의 과학

  • 배치 순서Lost in the Middle(TACL 2024): 정답 청크가 중간에 있으면 정확도 20점+ 하락, 클로즈드북보다도 낮아진다. 최고 점수 청크를 맨 앞에(LangChain LongContextReorder가 구현). k를 늘릴수록 좋은 청크가 죽은 중간으로 밀린다는 것도 k를 아끼는 이유.
  • 가장 위험한 건 "비슷하지만 쓸모없는" 청크The Power of Noise(SIGIR 2024): 검색기의 고점수 근접 오답(distractor)이 정확도를 적극적으로 깎는다. 코사인 유사도가 아니라 answer-bearing 여부로 리랭킹해야 하는 이유.
  • "컨텍스트에 없으면 모른다고 해" 프롬프트는 실패한다Sufficient Context(ICLR 2025): 프런티어 모델들은 컨텍스트가 불충분해도 자신 있게 오답한다. 지시가 아니라 명시적 충분성 게이트(저렴한 분류기/오토레이터)로 abstention을 트리거하면 정답률 2~10% 개선.
  • 모델은 틀린 문서도 충실히 반복한다ClashEval(NeurIPS 2024): 문서를 조작해 틀리게 만들면 모델이 자기 정답 지식을 버리고 틀린 문서를 60%+ 채택. 낡은 정책 문서 방치가 곧 생성 품질 문제다. 상충 문서가 있으면 출처 분리·귀속 후 답하게 하는 Astute RAG 레시피(ACL 2025) 참고.

인용 — 정규식 파싱의 시대는 끝났다

프롬프트로 [1][2] 마커를 시키는 방식은 ALCE 벤치마크 기준 주장의 50%가 인용 미지원일 만큼 부정확하다. 2026년의 답은 API 네이티브: Anthropic Citations API — RAG 청크를 custom content 블록으로 넣으면 검증된 cited_text와 위치 인덱스가 반환되고(환각 인용 불가), cited_text는 출력 토큰에 과금 안 되며, citations_delta로 스트리밍 인용 UX까지 해결된다. 함정 하나: 인용과 structured output은 한 호출에서 양립 불가(400 에러) — "인용 달린 JSON"은 2회 호출 또는 Cohere식 span 인용으로.

출고 전 검증 — CPU로 돌아가는 환각 게이트

응답을 문장 단위로 쪼개 검색 청크가 지지하는지 NLI로 검사: MiniCheck(770M, GPT-4급 정확도를 ~400분의 1 비용) 또는 Vectara HHEM-2.1(0.1B, CPU에서 2k토큰 ~1.5초, Apache 2.0). 임계값 ~0.5 미만이면 재생성 또는 abstain — 전 응답에 돌릴 수 있을 만큼 싸다.

롱컨텍스트 시대의 top-k

Databricks 13개 모델 실측: 대부분의 모델이 32~64K 이후 성능 저하 + 기괴한 모델별 실패(Claude 3 Sonnet의 저작권 거부 3.7%→49.5%, DBRX는 요약으로 퇴행). 리랭킹된 top 5~10 청크(~8-32K 토큰)를 유지하고, 필요하면 Self-Route로 라우팅. 멀티턴 챗봇이면 두 가지 필수: 검색 전 질문을 독립형으로 재작성 + 턴마다 답변 가능성 체크(MTRAG 벤치마크가 보여준 후반 턴 붕괴 대응).

한 줄 요약: 생성기는 먹인 것을 충실히 반복한다 — 그래서 생성 단계의 기술은 먹이지 않을 것과 답하지 않을 때를 정하는 것이다.

— RAG 실전 시리즈 ⑦ / 다음 글: 고급 패턴 — GraphRAG의 비용, agentic RAG의 손익

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

에이전트 설계 ⑪ (완결) — 프레임워크와 2026 스택: 제어 흐름의 소유권만은 넘기지 마라

마지막 편. 프레임워크 전쟁은 사실상 수렴했다 — 모든 메이저 벤더가 공식 SDK를 냈고 원시 개념(도구 루프·subagent/handoff·체크포인팅·MCP)도 동일해졌다. 차별화 전선은 루프가 아니라 하네스 품질과 내구성(durability) 으로...