docs: add Company X grounding plan

This commit is contained in:
Claude-51124 2026-03-12 22:19:31 +09:00
parent 6f826affe0
commit f5c9dc2efc

View File

@ -0,0 +1,168 @@
# Company X 내부문서 RAG 근거응답 구현계획
**작성일**: 2026-03-12
**상태**: 초안
**목표**: Company X 소속 사용자의 내부 업무 질문에 대해, 로빙이 Company X 내부 문서를 우선 검색하고 `직접 답변 + 근거 문서` 형식으로 응답하도록 최소 운영 기준을 고정
**관련 문서**:
- [Company X 내부 문서 RAG 응답 아이디어](../ideas/260312_companyx_내부문서_rag_응답_아이디어.md)
- [Company X 내부 문서 근거응답 사용자 시나리오](../scenarios/260312_companyx_내부문서_근거응답_사용자시나리오.md)
- [Company X 내부문서 RAG 근거응답 현황 리서치](../research/260312_companyx_내부문서_rag_근거응답_현황_리서치.md)
---
## 1. 목표
- 대표 질문 `오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?`에 대해 현재의 `찾아보겠습니다` 응답을 끝낸다.
- Company X 내부 문서 2,000개 내외의 쉬운 문서군을 먼저 인덱싱해, 실제 근거 검색이 되는 운영 후보를 만든다.
- 임베딩 모델은 우선 `384d 로컬`을 기본 경로로 사용하고, `1536d OpenAI`는 계속 비교군으로 유지한다.
- 답변 품질은 단순 생성문보다 `근거 문서 검색 품질 + 근거가 붙은 최종 답변` 기준으로 본다.
## 2. 범위
- 포함:
- Company X 문서 1차 샘플셋 선정
- `skill-rag-file` 인덱싱 경로를 Company X 문서에 연결
- rb8001 질문 라우팅에서 Company X 내부 문서 검색 경로 추가
- 답변 형식을 `직접 답변 + 근거 문서명 + 문단 요약 + 필요 시 위치 정보`로 고정
- 답변 메타 평가용 최소 로그/피드백 연결
- 제외:
- 5만여 개 전체 문서 일괄 인덱싱
- 비소속 사용자 공개 정책의 최종 법무 수준 확정
- 전 문서군 OCR 고도화
## 3. 현상 요약
- 현재 질문은 `rb8001` 라우터에서 `UNKNOWN`으로 떨어져 내부 문서 검색 경로로 가지 않는다.
- `skill-rag-file` 인덱스에는 `오늘전통`, `옐로펀치` 관련 Company X 문서가 아직 들어가 있지 않다.
- 내부 NAS 원본에는 실제 근거 문서가 존재한다.
- 소규모 품질 비교 결과 `384d 로컬``1536d OpenAI`는 현재 표본에서 동률이었으므로, 지금 당장 OpenAI로 전환할 근거는 없다.
## 4. 아키텍처 기준
- 문서 원본 기준 경로는 내부 NAS `/mnt/nas/workspace/6.Company X`를 사용한다.
- 인덱싱 저장은 기존 `skill-rag-file` 경로와 컬렉션 구조를 재사용하되, Company X 전용 team/collection 경계를 별도로 둔다.
- 답변 라우팅은 `rb8001`이 맡고, 검색 책임은 `skill-rag-file`이 맡는다.
- 임베딩 기본값은 `multilingual-MiniLM-L12-v2` `384d`로 유지한다.
- 메타 평가는 기존 `self_improvement_run + feedback` 구조를 재사용하되, RAG 전용 평가 필드를 추가한다.
## 5. 우선 고정 결정
### A. 1차 문서셋은 `2,000개 쉬운 문서`로 제한한다
- 대상 문서군:
- 프로그램 소개서
- 운영안/사업계획서
- MOU/협력 문서
- 보도자료 초안/대외 소개 문서
- 제외:
- 이미지 위주 스캔본
- 대용량 압축파일
- 질문 빈도가 낮은 증빙성 문서
### B. 임베딩 기본 경로는 `384d 로컬`로 고정한다
- 이유:
- 현재 표본에서 OpenAI 1536d 대비 품질 열세가 확인되지 않았다.
- 문서 인덱싱 시간이 빠르고 외부 의존성이 적다.
- 단, OpenAI 1536d는 비교군으로 유지한다.
### C. 품질 평가는 `문서 수준 retrieval`을 먼저 본다
- 1차 지표:
- `Top1`
- `Top3`
- `MRR`
- 2차 지표:
- 근거 문단 사용 가능성
- 최종 답변의 근거 포함 여부
### D. 질문셋은 `20~50개`로 먼저 고정한다
- 유형:
- 설명형
- 사실 확인형
- 수치 확인형
- 재정리형
- 각 질문마다 사람이 `정답 근거 문서`를 붙인다.
### E. 답변 형식은 아래 3단 구조로 고정한다
- 1문장: 질문에 대한 직접 답
- 2문장 이상: 근거 문서명 + 문단 요약
- 필요 시: 파일 경로 또는 페이지/섹션 위치
### F. 근거 부족 시 응답 원칙을 고정한다
- 추정해서 단정하지 않는다.
- `문서 없음`, `문서 간 불일치`, `최신 집계 미확인` 중 하나로 명시한다.
## 6. 작업 단계
### Phase 1: Company X 전용 샘플셋 준비
- `2,000개 쉬운 문서` 선정 기준 고정
- `오늘전통`, `옐로펀치`, `X-COURSE`, 프로그램 소개/운영 문서 우선 포함
- 샘플셋 목록 파일 생성
### Phase 2: Company X 전용 인덱싱 경로 연결
- Company X 전용 team/collection 식별자 결정
- `skill-rag-file` 업로드/인덱싱 스크립트 작성 또는 기존 경로 재사용
- 문서 2,000개 1차 인덱싱 실행
### Phase 3: retrieval 품질 비교
- 같은 질문셋으로 `384d 로컬``1536d OpenAI` 비교
- `Top1/Top3/MRR` 측정
- 우세 모델이 아니라 `운영 기본 모델`을 결정
### Phase 4: rb8001 질문 라우팅 연결
- `근거 있어?`, `자료 기준으로`, `내부 문서 기준으로` 표현 우선 처리
- Company X 소속 사용자 질문이면 Company X 컬렉션 검색 우선
- 검색 결과를 포함한 답변 프롬프트/포맷 적용
### Phase 5: 메타 평가 연결
- `self_improvement_run.evaluate_snapshot`에 RAG 관련 최소 필드 추가
- `rag_used`
- `retrieval_hit_count`
- `grounding_present`
- `grounding_doc_ids`
- 사용자 좋아요/싫어요와 질문 유형을 같이 연결
### Phase 6: 대표 질문 닫기
- `오늘전통/옐로펀치` 질문군 5개 이상에서
- 근거 문서 포함 답변
- 근거 부족 시 추정 금지
- 재질문 없이 근거 재정리 가능
를 확인한다.
## 7. 테스트
- 인덱싱 테스트:
- MOU 1건
- 오늘전통 사업계획서 1건
- 프로그램 소개 문서 1건
- retrieval 테스트:
- 질문셋 `20~50개`
- `384d` vs `1536d` 비교
- 응답 테스트:
- 대표 질문 5개에 대해 `직접 답 + 근거 문서` 형식 검증
- 메타 평가 테스트:
- `self_improvement_run`에 RAG 평가 필드 적재 확인
- 사용자 피드백 저장 확인
## 8. 산출물
- Company X 샘플 문서셋 목록
- Company X 전용 인덱싱 경로/스크립트
- retrieval 품질 비교표
- rb8001 라우팅 규칙
- 근거 응답 형식 예시 세트
- 메타 평가 필드 정의
## 9. 리스크 및 대응
- 리스크: 문서군 오염으로 검색 품질 왜곡
- 대응: 1차는 쉬운 문서군만 제한
- 리스크: Company X 전용 team/권한 경계 불명확
- 대응: 초기에는 내부 검증용 식별자로 고정
- 리스크: OpenAI 품질 우위가 표본마다 흔들림
- 대응: 운영 기본값은 384d 유지, 비교군은 병행
- 리스크: 답변은 생성되지만 근거가 약함
- 대응: 생성 답변보다 retrieval 품질을 먼저 통과 조건으로 둠
## 10. 성공 판정
- 대표 질문군에서 `근거 문서 포함 답변`이 일관되게 나온다.
- `문서 없음/불일치` 상황에서 추정 단정이 사라진다.
- `384d` 기본 경로로도 Company X 질문 retrieval이 운영 후보 수준에 도달한다.
- 메타 평가 로그로 `RAG 사용 여부``근거 포함 여부`를 추적할 수 있다.
## 11. 연결 문서
- [Company X 내부 문서 RAG 응답 아이디어](../ideas/260312_companyx_내부문서_rag_응답_아이디어.md)
- [Company X 내부 문서 근거응답 사용자 시나리오](../scenarios/260312_companyx_내부문서_근거응답_사용자시나리오.md)
- [Company X 내부문서 RAG 근거응답 현황 리서치](../research/260312_companyx_내부문서_rag_근거응답_현황_리서치.md)