tags: [robeing, companyx, rag, research, internal-documents, grounding] # 260312 Company X 내부문서 RAG 근거응답 현황 리서치 ## 상위 원칙 - [Writing Principles](https://github.com/happybell80/0_VALUE/blob/main/02_Governance/writing-principles.md) - [Company X 내부 문서 RAG 응답 아이디어](../ideas/260312_companyx_내부문서_rag_응답_아이디어.md) - [Company X 내부 문서 근거응답 사용자 시나리오](../scenarios/260312_companyx_내부문서_근거응답_사용자시나리오.md) ## 목적 - Company X 소속 사용자가 `오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?`라고 물었을 때, 현재 실제 로빙이 어떤 답을 하는지 확인한다. - 현재 로빙이 Company X 내부 NAS 문서를 근거로 답할 수 있는 구조인지 확인한다. - NAS 원본에는 실제 근거가 있는지 확인해, 문제를 `근거 부재`와 `근거 연결 부재`로 구분한다. - 이 문서 하나로 기존 `ideas`와 `scenarios`를 `plans`로 넘길 수 있는 사실 기준을 고정한다. ## 조사 범위 - 런타임 서비스: `rb8001`, `skill-rag-file` - 저장 상태: `team_document`, Chroma 컬렉션 검색 결과 - 원본 데이터: 내부 NAS `/mnt/nas/workspace/6.Company X` - 대표 질문: `오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?` ## Facts ### 1. 현재 실제 로빙 답변은 내부 문서 근거답변이 아니다 - 2026-03-12 21:24 KST 기준 `rb8001` 테스트 엔드포인트에 대표 질문을 직접 넣어 확인했다. - 호출 경로: - `POST /api/test/router-message` - 입력: - `오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?` - 실제 응답: ```json { "user_id": "53529291-5050-4daa-89fb-008b546feb63", "user_message": "오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거 있어?", "bot_response": "CTO님, Company X가 옐로펀치와 함께 전통 프로그램을 운영한다는 근거를 찾아보겠습니다. 관련 정보를 확인해 보고 말씀드리겠습니다.", "intent": null, "skill_sequence": null, "status": "success" } ``` - 이 응답은 문서명, 문단 요약, 파일 위치를 전혀 제시하지 않는다. - 즉 현재 시나리오가 기대하는 `직접 답변 + 근거 문서` 형식과 다르다. ### 2. 현재 질문은 라우터에서 `UNKNOWN`으로 떨어지고 내부 문서 검색으로 연결되지 않는다 - 같은 시각 `rb8001` 로그에서 아래 사실을 확인했다. - DecisionEngine이 해당 질문에 대해 `의도 매칭 실패 - UNKNOWN`을 기록했다. - 이후 응답은 내부 LLM 경로로 생성됐다. - 확인된 로그 핵심: - `Loaded 0 recent conversations` - `[DecisionEngine] 의도 매칭 실패 - UNKNOWN으로 처리` - 이후 Gemini 호출 발생 - 따라서 현재 로빙은 이 질문을 `Company X 내부 문서 근거 확인` 작업으로 해석하지 못한다. ### 3. 현재 `skill-rag-file` 인덱스에는 관련 Company X 문서가 없다 - `skill-rag-file` DB(`team_document`)를 직접 확인한 결과 총 문서 수는 `136`건이었다. - 최근 적재 문서들은 `/mnt/51123data/documents/...` 또는 `/mnt/nas/documents/...` 아래의 일반 업로드 문서였고, 대표 예시는 아래와 같았다. - `06_릴라이 와이어프레임.pdf` - `01_후인터 사업계획서 ppt버전.pdf` - `에이징랩(주)_IR_20260309_v1.pdf` - 같은 DB에서 아래 조건으로 조회했을 때 결과가 `0건`이었다. - `filename ilike '%오늘전통%'` - `filename ilike '%옐로%'` - `storage_path ilike '%오늘전통%'` - `storage_path ilike '%옐로%'` - 따라서 현재 RAG 인덱스에는 적어도 `오늘전통`, `옐로펀치` 관련 Company X 문서가 들어가 있지 않다. ### 4. 현재 `skill-rag-file` 검색으로도 관련 결과를 찾지 못했다 - `skill-rag-file` 검색 API에 대표 질문을 그대로 넣어 테스트했다. - 호출 경로: - `POST /api/search` - 사용한 team 식별자는 테스트 사용자 UUID였고, 결과는 아래와 같았다. ```json { "query": "오늘전통 프로그램을 Company X가 옐로펀치랑 같이 운영한다는 근거", "results": [], "total_results": 0 } ``` - 위 결과만으로 `모든 team_id에서 절대 검색 불가`를 단정할 수는 없다. - 그러나 바로 위 3번 사실 때문에, 현재 인덱스 DB 전체에 관련 문서가 없다는 점은 별도로 확인됐다. ### 5. 내부 NAS 원본에는 질문과 직접 관련된 근거 문서가 실제로 존재한다 - 내부 NAS에서 `오늘전통`, `옐로펀치` 키워드로 파일명을 조사한 결과 관련 문서가 다수 존재했다. - 대표 경로 예시: - `/mnt/nas/workspace/6.Company X/2. 신규운영사 및 펀드 운용사, 용역 프로그램 제안 등/2025년/05. [한국공예·디자인문화진흥원] 오늘전통 5기 초기창업기업 창업기획자(액셀러레이터) 공모/01. 제출서류/01. 사업계획서_컴퍼니엑스.pdf` - `/mnt/nas/workspace/6.Company X/10. MOU&인증/옐로펀치/TalkFile_MOU_옐로펀치X컴퍼니엑스- 25.01.23.pdf.pdf` ### 6. `오늘전통 5기 사업계획서`에는 옐로펀치가 협력기관으로 명시돼 있다 - 위 `사업계획서_컴퍼니엑스.pdf`를 텍스트 추출해 확인했다. - 확인된 핵심 구절: - `프렉클컴퍼니, 스몰브랜더, 옐로펀치 등 브랜드 기업의 성장 지원이 가능한 외부 협력체계를 기반으로` - `㈜옐로펀치` - `공동 및 후속투자` - 해석상 이 문서는 최소한 `오늘전통 사업계획서 안에서 옐로펀치가 Company X의 대외 협력체계/협력기관 중 하나로 제시된다`는 근거가 된다. ### 7. `옐로펀치X컴퍼니엑스 MOU`에는 공동 컨소시엄 협력과 프로그램 운영 참여가 명시돼 있다 - `TalkFile_MOU_옐로펀치X컴퍼니엑스- 25.01.23.pdf.pdf`를 텍스트 추출해 확인했다. - 확인된 핵심 구절: - `주식회사옐로펀치와 주식회사컴퍼니엑스는 우수 창업기업 발굴, 투자·육성 업무 활성화를 위해 아래의 협약을 체결` - `교육, 멘토링, 세미나, IR 등 기업 육성 프로그램 운영 참여` - `예비창업자 및 초기 창업기업 대상 지원사업 공동 컨소시엄 협력` - 이 문서는 `Company X와 옐로펀치 간 공식 협력 관계`를 뒷받침한다. ### 8. 따라서 현재 문제는 `근거 없음`이 아니라 `근거 연결 부재`다 - NAS 원본에는 관련 근거가 있다. - 그러나 현재 로빙 런타임은 이 질문을 문서 근거 확인으로 해석하지 못한다. - 또한 관련 원본 문서가 `skill-rag-file` 인덱스에 들어가 있지 않다. - 즉 현재 실패 원인은 `Company X 문서가 실제로 없어서`가 아니라, `있지만 로빙 답변 경로와 연결되지 않아서`다. ## Interpretation ### 1. 아이디어 문서는 유효한 가설이다 - `Company X 내부 문서를 우선 근거로 삼아 답하는 로빙`이라는 아이디어는 헛가설이 아니다. - 실제 NAS에는 답변 근거가 될 문서가 있고, 그 문서에는 질문과 관련된 표현도 존재한다. - 따라서 이 아이디어는 `근거를 만들자`가 아니라 `이미 있는 근거를 로빙 답변 경로에 연결하자`로 해석하는 것이 맞다. ### 2. 시나리오 문서의 현재/기대 대비도 실제 상태와 맞는다 - 현재 실제 응답은 `찾아보겠습니다` 수준의 일반 답변이다. - 기대 시나리오는 `직접 답변 + 근거 문서 + 문단 요약 + 위치 정보`다. - 이번 조사 결과는 시나리오 문서가 상상적 요구가 아니라, 실제 현재 상태와 분명히 대비되는 목표 상태임을 확인한다. ### 3. 다음 단계의 핵심은 RAG 품질보다 먼저 `색인 경로 + 질문 해석 경로`다 - 지금 부족한 것은 답변 문체가 아니라 연결 구조다. - 최소한 아래 두 경로가 동시에 생겨야 한다. - NAS 원본 -> Company X 전용 RAG 인덱스 - Company X 질문 -> Company X 전용 문서 검색 의도/실행 경로 - 둘 중 하나라도 빠지면 기대 시나리오는 닫히지 않는다. ### 4. `오늘전통 공동 운영` 답변은 문서 충돌/표현 차이까지 다뤄야 한다 - 사업계획서에는 `협력기관`, `외부 협력체계` 표현이 있고, MOU에는 `프로그램 운영 참여`, `공동 컨소시엄 협력` 표현이 있다. - 따라서 미래 로빙은 무조건 `같이 운영한다`고 단정하기보다, - `오늘전통 사업계획서에서 옐로펀치가 협력기관으로 제시된다` - `Company X-옐로펀치 MOU에는 프로그램 운영 참여와 공동 컨소시엄 협력이 명시된다` - `문서 표현은 공동 운영/협력 운영/협력기관으로 조금씩 다르다` 를 함께 답하는 편이 더 정확하다. ## Unresolved 1. Company X 소속 사용자 판별 기준 - 어떤 인증 신호로 `Company X 내부 문서 검색 허용 사용자`를 확정할지 아직 정해지지 않았다. 2. Company X 문서의 색인 단위 - 원본 PDF/DOC/HWP를 그대로 청킹할지, 사람이 읽기 쉬운 중간 RAG 포맷으로 정제할지 아직 미정이다. 3. Company X 전용 team/collection 경계 - 현재 `skill-rag-file`은 `team_id` 기반 컬렉션 구조를 쓴다. - Company X 내부 문서를 어떤 식별자와 어떤 권한 경계로 넣을지 아직 고정되지 않았다. 4. 답변 근거 노출 수준 - 문서명, 문단 요약, 파일 경로, 페이지 위치 중 어디까지 사용자에게 노출할지 아직 정해지지 않았다. 5. 질문 해석 규칙 - `근거 있어?`, `자료 기준으로`, `내부 문서 기준으로` 같은 표현을 별도 의도로 볼지, 일반 질문에 Company X 컨텍스트를 자동 적용할지 아직 미정이다. ## 현재 결론 - 대표 질문에 대한 현재 실제 로빙 답변은 기대 시나리오를 만족하지 못한다. - 그러나 내부 NAS 원본에는 관련 근거 문서가 실제로 존재한다. - 현재 실패 원인은 `Company X 근거 없음`이 아니라 `Company X 근거 문서가 런타임 RAG 경로와 연결되지 않음`이다. - 따라서 다음 단계 `plans`는 `문서 색인`, `권한 경계`, `질문 해석`, `근거답변 형식`을 한 번에 고정하는 계획 문서여야 한다. ## 관련 문서 - [Company X 내부 문서 RAG 응답 아이디어](../ideas/260312_companyx_내부문서_rag_응답_아이디어.md) - [Company X 내부 문서 근거응답 사용자 시나리오](../scenarios/260312_companyx_내부문서_근거응답_사용자시나리오.md) - [컴퍼니엑스(Company X) 개요](../../book/500_business/560_컴퍼니엑스_개요.md)