DOCS/journey/plans/260320_로빙_다형식문서_RAG_적용1_계획.md
2026-03-20 17:49:24 +09:00

5.6 KiB

260320 로빙 다형식문서 RAG 적용 1차 계획

목적

  • 앞선 1~3차 산출물을 로빙 실제 질의 응답 경로에 연결하는 첫 적용 단계를 정의한다.
  • 목표는 "질문 -> 관련 문서 회수 -> 근거 기반 응답"의 최소 폐회로를 만드는 것이다.

참조 문서

현재 상태 (260320 확인)

항목 상태
대상 파일 리스트 /tmp/latest_200_companyx.txt (200개)
인덱싱 스크립트 skill-rag-file/scripts/reindex_companyx_latest_200.py
team_id 79441171-3951-4870-beb8-916d07fe8be5
DB 테이블 team_document (1,121 completed / 51 processing), team_document_chunk (3,095건)
임베딩 Gemini Embedding 2, 768차원, HNSW cosine 인덱스
MD 파생본 6.Company X_md/ 48,906개 생성 (front matter만, 본문 미추출)
NAS 문서 저장 documents/companyx/ (로빙 수집 원본), documents/companyx_md/ (로빙 생성 MD)
  • 1차(MD 생성): front matter 완료, 본문 미추출
  • 2차(DB 적재): 200개 대상 텍스트 추출 + 청크 + 임베딩 완료
  • 3차(OCR/관계/동기화): 미착수
  • 4차(로빙 연결): 미착수 ← 현재 목표

적용 범위

  • rb8001 (companyx_grounding_service.py)
  • skill-rag-file (search.py, postgres_vector_store.py)
  • skill-embedding (Gemini Embedding 2 게이트웨이)

이미 구현된 질의 흐름 (코드 기준)

  1. 사용자 질문 수신 → should_handle_companyx_grounding() 인텐트 판정
  2. 질문 유형 분류 → _classify_question_type() (설명/사실확인/수치/재정리)
  3. 멀티쿼리 생성 → _build_query_candidates() (7~9개 변형)
  4. 벡터 검색 → _search_companyx_documents() (PGVector cosine)
  5. LLM 근거 검증 → _call_llm_companyx_grounding() + Pydantic 검증
  6. 응답 생성 → CompanyXRAGOutput (direct_answer, evidence_docs, failure_reason)

추가 필요한 검색 경로

검색 방식 현재 목표
PGVector 벡터 검색 구현됨 유지
TSVECTOR 키워드 검색 미구현 추가
하이브리드 점수 합산 (RRF) 미구현 추가
Apache AGE 그래프 관계 확장 미설치 추가

샘플 검증 질문 (200개 파일 기준)

투자조합 관련 (파일 비중 최대)

  1. 아크로셀 개인투자조합 제2호 정기주총 서류 있어?
  2. 에프앤엘코퍼레이션 서면의결서 양식 찾아줘
  3. 컴퍼니엑스 IP 투자조합 9호 고유번호증 보여줘
  4. 코드크레용 정기주총 소집통지서 내용이 뭐야?
  5. 앤션트투투데이 2025년 재무상태표 수치 알려줘
  6. 컴퍼니엑스 IP 투자조합별 관리보수 자금계획 비교해줘
  7. 다리마티 보통주 계약서 핵심 조건이 뭐야?

TIPS/LIPS 프로그램 관련

  1. 팁스 운영사 본점 소재지 변경 공문 내용 요약해줘
  2. 립스 프로그램 운영사 소재지 변경 안내 있어?
  3. 엠에스코스 팁스 추천서에 어떤 내용이 있어?
  4. 팁스 투자적절성검증위원회 보완 서류 뭐가 필요해?

오늘전통/신규운영사 관련

  1. 오늘전통 6기 2차년도 창업기업 사업계획서 어디 있어?
  2. 오늘전통 AC 본점 이전 관련 공문 내용이 뭐야?
  3. e나라도움 정보공시 등록 방법 문서 있어?

근거 부족 예상 (실패 응답 검증)

  1. 컴퍼니엑스 내부 휴가 규정이 뭐야? → 200개에 없음
  2. 컴퍼니엑스 전체 투자사 몇 개야? → 200개로는 일부만 커버

260315에서 흡수한 항목

  • 인덱싱 파이프라인 배포 (Phase 5A: 코드 완료, 배포 미완)
  • 재오픈 질문 20개 Slack 실응답 검증 (Phase 5B)
  • Pydantic 출력 검증 구조 (CompanyXRAGOutput: direct_answer, evidence_docs, failure_reason)
  • SKILL.md와 코드 계약 정합화
  • 질문 유형 계약 / 근거 채택 계약 / 실패 계약 (구현 완료, 검증 미완)

닫는 조건

  • 200개 파일(latest_200_companyx.txt) 대상 완벽 RAG 구성
  • 벡터 검색(PGVector) + 키워드 검색(TSVECTOR) + 그래프 탐색(Apache AGE) 3중 검색 동작
  • 로빙이 200개 파일 범위 내 질문에 근거 문서(문서명, 경로, 핵심 문단)를 포함해 답변한다.
  • LLM 응답이 Pydantic 모델(CompanyXRAGOutput)로 검증된다.
  • 근거 없는 경우와 검색 실패를 구분해 응답한다.
  • 응답 로그에 사용 문서와 청크가 남는다.
  • 대표 질문셋(계약/MOU, 프로그램 운영, 보고서 수치) + 260315 재오픈 질문 20개 검증 통과.
  • SKILL.md와 실제 응답 형식 일치.

보류

  • 완전 자동 자가개선
  • 모든 파일 유형에 대한 완전 멀티모달 해석
  • 대규모 그래프 탐색 기반 답변