DOCS/journey/troubleshooting/260312_companyx_rag_answer_composition_regression.md

6.8 KiB

tags
tags
robeing
companyx
rag
troubleshooting
answer-quality

Company X RAG 답변 합성 회귀

상태: 닫힘
종결 범위: Slack에서 컴퍼니엑스 또는 Company X가 정확 표기로 포함된 질문

관련 문서

이 문서가 다루는 범위

  • 대상은 Company X 내부문서 근거응답답변 합성 단계입니다.
  • 이번 문서의 종결 범위는 Slack 실사용 경로에서 컴퍼니엑스 또는 Company X가 정확 표기로 명시된 질문으로 한정합니다.
  • 검색 인프라 자체 장애, 권한 차단, 문서 업로드 실패는 본 문서의 1차 범위가 아닙니다.
  • 핵심은 질문에 맞는 직접 답, 질문 적합 근거 선별, 근거 부족 시 실패 처리가 실제 응답에서 깨진 문제입니다.
  • 컴액, 컴퍼이엑스, 복합 발화, 후속 질문 문맥 복원은 본 문서 종결 범위에 포함하지 않습니다.

문제

  • Company X RAG 연결 자체는 되었지만, 실제 Slack 실응답이 시나리오의 기대 답변 형식을 만족하지 못했습니다.
  • 질문:
    • 컴퍼니엑스의 투자사는 몇개야?
  • 실제 응답:
    • Company X 내부 문서에서 관련 근거를 찾았습니다.
    • 질문에 대한 직접 답이 없음
    • 투자사 개수 질문과 직접 관련 없는 청크가 그대로 노출됨
  • 추가 질문:
    • 그럼 컴퍼니엑스 내부 규정 상 휴가는 얼마나 쓸 수 있어?
  • 추가 실제 응답:
    • 휴가 규정과 무관한 companyx_todaytradition.pdf 청크만 반환
    • 사용자가 아직 완벽하지 않네.라고 하자, 로빙이 근거 보강 대신 어떤 부분이 더 필요하신지를 묻는 메타 대화로 빠짐

왜 문제인가

  • 시나리오 완료 기준은 직접 답 먼저, 질문과 맞는 근거만 선별, 근거 부족 시 모른다고 말하기입니다.
  • 현재 응답은 retrieval hit는 있지만, answer composition 단계에서 질문 적합도 필터링이 부족합니다.
  • 따라서 이 상태는 시나리오 종결이 아니라 시나리오 재오픈 판단이 맞습니다.

확인된 사실

  • 오늘전통/옐로펀치 대표 질문은 근거응답이 가능했습니다.
  • 하지만 다른 Company X 질의에서는 검색 결과를 그대로 요약 없이 붙이는 회귀가 확인됐습니다.
  • 규정형 질문처럼 아예 문서군이 다를 가능성이 큰 질의에서도, 근거 없음 대신 무관한 청크를 억지로 반환했습니다.
  • 즉 현재 구현은 질문별 답변 합성 품질이 안정화되지 않았습니다.

재현 질문셋과 기대 결과

  1. 컴퍼니엑스의 투자사는 몇개야?
  • 기대 결과: 직접 답이 먼저 나와야 하며, 내부 문서만으로 단정 불가하면 그 사실을 명확히 말해야 합니다.
  • 금지 결과: 관련 근거를 찾았습니다 같은 메타 문장만 반환하거나, 개수와 무관한 청크를 그대로 노출하는 것
  1. 그럼 컴퍼니엑스 내부 규정 상 휴가는 얼마나 쓸 수 있어?
  • 기대 결과: 휴가 규정 문서가 없거나 확인되지 않으면 내부 문서 기준으로는 확인되지 않는다고 답해야 합니다.
  • 금지 결과: 휴가와 무관한 사업계획서 청크를 근거처럼 붙이는 것
  1. 오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?
  • 기대 결과: 직접 답 + 근거 문서명 + 짧은 근거 요약이 함께 나와야 합니다.
  • 의미: 이 질문은 이미 일부 성공한 기준 질문으로, 회귀 여부를 함께 봐야 합니다.

원인 가설

  1. retrieval 결과를 질문 적합도 기준으로 재정렬/필터링하지 않습니다.
  2. 수치형 질문과 사실 확인형 질문을 분리하지 않고 같은 응답 포맷으로 처리합니다.
  3. 직접 답 생성 전에 근거 청크 선별이 충분히 정교하지 않습니다.
  4. 적절한 근거가 없을 때 모른다/문서 미확인로 빠지는 실패 경로가 약합니다.

범위 밖으로 고정하는 것

  • Company X 전체 문서셋 확대 자체를 이번 회귀의 직접 원인으로 단정하지 않습니다.
  • skill-rag-file 검색 API 자체가 항상 실패한다고 보지 않습니다.
  • rb8001 메모리 컬렉션의 768/384 차원 드리프트는 별도 이슈이며, 이번 회귀의 직접 원인으로 섞지 않습니다.

필요한 조치

  1. 질문 유형별 응답 규칙 분기
    • 수치 확인형
    • 사실 확인형
    • 설명형
  2. retrieval 결과의 질문 적합도 재평가
  3. 직접 답이 없으면 근거 목록만 반환하지 않도록 가드 추가
  4. Slack 실응답 기준으로 시나리오 질문셋 재검증
  5. 근거 부족 시 메타 대화가 아니라 문서 없음 또는 미확인으로 답하는 실패 경로 고정

닫힘 판정 기준

  • 위 재현 질문셋에서 직접 답 없음, 무관한 청크 노출, 메타 대화로 회피가 더 이상 재현되지 않아야 합니다.
  • 성공 질문은 계속 성공해야 하고, 근거 부족 질문은 억지 답변 대신 명시적 부족 안내로 고정돼야 합니다.
  • 이 문서와 시나리오 문서를 함께 만족시키는 단일 research 문서가 후속으로 작성돼야 합니다.

종결 판단

  • 컴퍼니엑스의 투자사는 몇개야?는 이제 companyx_rag 경로로 들어가며, 근거 부족 시 수치를 추정하지 않고 실패 응답으로 고정됩니다.
  • 컴퍼니엑스의 구성원은 몇명이야?도 같은 경로에서 grounding_present=false로 처리되며, 근거 부족 실패 응답으로 끝납니다.
  • 오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?는 관련성 높은 MOU 근거만 남기도록 정리됐습니다.
  • Slack 사용자-팀 매핑도 실제 event.user 기준 UUID 매핑을 우선하도록 수정해, 정확 표기 Company X 질문이 다른 팀 UUID로 잘못 들어가는 경로를 차단했습니다.

종결 근거