tags, status, closed_date, closed_reason
tags
status
closed_date
closed_reason
robeing
companyx
rag
research
internal-documents
grounding
closed
2026-03-21
발견한 문제(근거 연결 부재, 의도 분류 실패, 인덱스 부족)는 260315→260320→260321 계획으로 전부 해소. 200개 인덱싱 + 3중 검색 + LLM 합성 동작 확인.
260312 Company X 내부문서 RAG 근거응답 현황 리서치
상위 원칙
목적
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가 옐로펀치랑 같이 운영한다는 근거 있어?
실제 응답:
{
"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에 대표 질문을 그대로 넣어 테스트했다.
호출 경로:
사용한 team 식별자는 테스트 사용자 UUID였고, 결과는 아래와 같았다.
{
"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 문서가 실제로 없어서가 아니라, 있지만 로빙 답변 경로와 연결되지 않아서다.
9. 현재 로빙 임베딩 경로 기준 실제 문서 인덱싱 시간은 수초~수십초가 아니라 수초 단위다
skill-rag-file 실제 /api/upload 경로로 Company X 문서 2개를 직접 인덱싱해 시간을 확인했다.
유효한 기존 team_id를 사용해 업로드 -> 텍스트 추출 -> 청킹 -> 임베딩 -> Chroma 저장까지 포함한 전체 시간을 측정했다.
측정 결과:
옐로펀치X컴퍼니엑스 MOU PDF 130,944B: 0.608초, 5 chunks
오늘전통 사업계획서_컴퍼니엑스 PDF 12,937,755B: 8.371초, 104 chunks
인덱싱 후 검색 시간도 확인했다.
질의 공동 컨소시엄 협력
검색 응답 시간: 0.059초
결과: MOU 문서 청크 1건 반환
10. 현재 로빙 임베딩 모델은 384차원이고, StarsAndI가 쓰는 OpenAI 임베딩은 1536차원이다
현재 로빙 skill-embedding 런타임 설정은 아래와 같다.
모델: multilingual-MiniLM-L12-v2
차원: 384
확인 근거:
skill-embedding/.env
rb8001 런타임 로그의 Collection expecting embedding with dimension of 768, got 384
비교 대상으로 본 StarsAndI 코드의 OpenAI 임베딩 경로는 아래와 같다.
모델: text-embedding-3-small
차원: 1536
확인 근거:
starsandi/apps/apps/api-py/app/services/recommend.py
실제 OpenAI 임베딩 API 호출 결과 dim=1536
11. OpenAI 임베딩 단건 호출 시간은 현재 환경에서 대략 0.2초~3초, 평균 1.8초 수준이다
StarsAndI가 쓰는 실제 모델 text-embedding-3-small로 대표 질문 1건을 3회 호출해 시간을 측정했다.
측정 결과:
1회: 2966.1ms
2회: 2226.3ms
3회: 234.3ms
평균: 1808.9ms
따라서 OpenAI 임베딩은 현재 환경에서 단건 기준 대략 0.2초 ~ 3초, 보통 약 2초 안팎으로 보는 것이 맞다.
12. 2,000개 쉬운 문서 기준 인덱싱 시간은 로컬 모델이 더 짧고, OpenAI 모델도 절대 시간이 과도하지는 않다
현재 로빙 로컬 임베딩 경로(384d) 기준 현실 추정:
쉬운 문서 평균 0.6초 ~ 2초/문서
2,000개 문서: 약 20분 ~ 67분
OpenAI 임베딩 경로(1536d) 기준 현실 추정:
네트워크 왕복 포함 평균 2.5초 ~ 4초/문서
2,000개 문서: 약 83분 ~ 133분
따라서 2,000개 쉬운 문서 범위는 두 경로 모두 몇 시간 이내에 검증 가능하다.
13. OpenAI 임베딩 비용은 2,000개 문서 규모에서는 병목이 아니다
text-embedding-3-small의 현재 공식 가격은 1M tokens당 $0.02다.
문서당 평균 토큰 수를 가정한 대략 비용:
1,000 tokens x 2,000문서 = 2M tokens -> 약 $0.04
2,000 tokens x 2,000문서 = 4M tokens -> 약 $0.08
5,000 tokens x 2,000문서 = 10M tokens -> 약 $0.20
따라서 이번 주제에서 OpenAI 임베딩 선택의 핵심 기준은 비용보다 품질, 속도, 운영 단순성이다.
14. 품질 비교 테스트는 지금 바로 설계 가능한 상태다
현재 단계에서 가능한 최소 품질 테스트는 아래 구조다.
Company X 질문 20~50개를 고정한다.
각 질문에 대해 사람이 정답 근거 문서를 1차 지정한다.
같은 문서셋을 384d 로컬 모델과 1536d OpenAI 모델로 각각 인덱싱한다.
같은 질문셋을 돌려 정답 문서가 상위 결과에 들어오는지를 비교한다.
이 비교는 아직 답변 생성 LLM 품질이 아니라, 검색 근거 품질을 먼저 비교하는 테스트다.
현재 문제의 본질이 근거 연결인 점을 고려하면, 이 단계에서는 생성 답변보다 retrieval quality를 먼저 보는 것이 맞다.
15. 품질 비교에서 바로 쓸 수 있는 지표는 이미 정리할 수 있다
Recall@5
MRR
근거 문단 사용 가능성
사람이 봤을 때 바로 답변 근거로 쓸 수 있는 청크인지
응답 시간
현재 단계에서 가장 중요한 지표는 정답률보다 근거 일관성과 상위 검색 적중률이다
16. 소규모 retrieval 품질 비교 결과, 로컬 384d와 OpenAI 1536d는 현재 표본에서 동률이었다
비교 조건:
문서: 옐로펀치X컴퍼니엑스 MOU 1건, 오늘전통 사업계획서_컴퍼니엑스 1건
청킹: skill-rag-file과 같은 문자 기반 청킹(1000, overlap 200)
총 청크 수:
mou: 3
todaytradition: 38
질문: 6개
평가 단위: 문서 수준 top1/top3, MRR
비교 모델:
로컬: multilingual-MiniLM-L12-v2 384d
OpenAI: text-embedding-3-small 1536d
결과 요약:
로컬 384d
Top1 = 4/6
Top3 = 6/6
MRR = 0.8333
OpenAI 1536d
Top1 = 4/6
Top3 = 6/6
MRR = 0.8333
즉 이 표본에서는 두 모델이 문서 수준 retrieval 성능에서 사실상 동률이었다.
17. 질문 유형별로는 두 모델의 강점이 조금 다르게 나타났다
로컬 384d가 더 잘 맞힌 질문:
오늘전통 사업계획서에서 옐로펀치가 협력기관으로 제시되는 근거
이 질문에서 로컬은 todaytradition을 Top1로 올렸고, OpenAI는 mou를 Top1로 올렸다.
OpenAI 1536d가 더 잘 맞힌 질문:
예비창업자 및 초기 창업기업 대상 지원사업 공동 컨소시엄 협력
이 질문에서 OpenAI는 mou를 Top1로 올렸고, 로컬은 todaytradition을 Top1로 올렸다.
공통적으로 둘 다 헷갈린 질문:
교육 멘토링 세미나 IR 등 기업 육성 프로그램 운영 참여
두 모델 모두 todaytradition을 Top1로 올리고 mou를 2위로 두었다.
18. 현재 표본 기준으로는 차원 수가 곧바로 품질 우위를 보장하지 않았다
1536d OpenAI 모델이 384d 로컬 모델보다 무조건 더 낫다는 결과는 나오지 않았다.
현재 표본에서는 두 모델이 같은 점수를 냈고, 질문별로 서로 다른 실수를 보였다.
따라서 다음 단계에서 모델 선택은 차원 수만으로 결정하면 안 된다.
19. 현재 단계에서 더 필요한 것은 큰 모델 교체보다 질문셋 확대와 문서군 확대다
지금 비교는 2문서, 6질문의 매우 작은 샘플이다.
이 표본만으로 최종 모델 결론을 내리기에는 부족하다.
그러나 최소한 아래 두 사실은 확인됐다.
로컬 384d도 Company X 근거 검색에 충분히 경쟁력 있는 초기 후보다.
OpenAI 1536d는 비용이 낮고 품질 비교 가치가 있지만, 현재 표본에서 압도적 우위를 보이지는 않았다.
따라서 다음 계획에서는 먼저 2,000개 쉬운 문서와 20~50개 질문셋으로 비교 범위를 넓히는 것이 맞다.
Interpretation
1. 아이디어 문서는 유효한 가설이다
Company X 내부 문서를 우선 근거로 삼아 답하는 로빙이라는 아이디어는 헛가설이 아니다.
실제 NAS에는 답변 근거가 될 문서가 있고, 그 문서에는 질문과 관련된 표현도 존재한다.
따라서 이 아이디어는 근거를 만들자가 아니라 이미 있는 근거를 로빙 답변 경로에 연결하자로 해석하는 것이 맞다.
2. 시나리오 문서의 현재/기대 대비도 실제 상태와 맞는다
현재 실제 응답은 찾아보겠습니다 수준의 일반 답변이다.
기대 시나리오는 직접 답변 + 근거 문서 + 문단 요약 + 위치 정보다.
이번 조사 결과는 시나리오 문서가 상상적 요구가 아니라, 실제 현재 상태와 분명히 대비되는 목표 상태임을 확인한다.
3. 다음 단계의 핵심은 RAG 품질보다 먼저 색인 경로 + 질문 해석 경로다
지금 부족한 것은 답변 문체가 아니라 연결 구조다.
최소한 아래 두 경로가 동시에 생겨야 한다.
NAS 원본 -> Company X 전용 RAG 인덱스
Company X 질문 -> Company X 전용 문서 검색 의도/실행 경로
둘 중 하나라도 빠지면 기대 시나리오는 닫히지 않는다.
4. 오늘전통 공동 운영 답변은 문서 충돌/표현 차이까지 다뤄야 한다
사업계획서에는 협력기관, 외부 협력체계 표현이 있고, MOU에는 프로그램 운영 참여, 공동 컨소시엄 협력 표현이 있다.
따라서 미래 로빙은 무조건 같이 운영한다고 단정하기보다,
오늘전통 사업계획서에서 옐로펀치가 협력기관으로 제시된다
Company X-옐로펀치 MOU에는 프로그램 운영 참여와 공동 컨소시엄 협력이 명시된다
문서 표현은 공동 운영/협력 운영/협력기관으로 조금씩 다르다
를 함께 답하는 편이 더 정확하다.
5. 현재 단계에서 전체 5만여 개를 먼저 넣는 것보다 2천 개 샘플 품질 비교가 더 맞다
전체 52,833개 경로를 한 번에 인덱싱하는 것은 가능하더라도, 지금 필요한 질문은 될 수 있는가보다 어떤 모델/경로가 더 낫고 실제 근거 검색이 맞는가다.
이미 시간 측정상 2,000개 쉬운 문서 범위는 현실적으로 1~2시간대 안에서 비교 가능하다.
따라서 다음 plans는 먼저 대표 문서군 2,000개 내외 샘플 인덱싱 + 20~50개 질문셋 품질 비교를 우선 고정하는 것이 맞다.
6. 임베딩 모델 선택 기준은 비용보다 검색 품질과 운영 복잡도다
비용 차이는 2,000개 규모에서는 매우 작다.
실제 선택 기준은 아래가 된다.
384d 로컬: 빠름, 외부 의존 적음, 운영 단순
1536d OpenAI: 네트워크 의존, 약간 느림, 그러나 품질 우위 가능성 존재
즉 다음 계획 단계에서 해야 할 것은 이론 비교가 아니라 같은 질문셋으로 실제 retrieval quality를 비교하는 실험이다.
7. 현재 작은 표본에서는 로컬 384d를 버릴 이유가 없다
작은 표본이지만 Top1, Top3, MRR이 OpenAI와 동률이었다.
따라서 현재 단계에서 바로 OpenAI 임베딩으로 전면 전환할 근거는 없다.
오히려 운영 단순성과 속도를 고려하면, 로컬 384d를 기본 후보로 유지한 채 OpenAI 1536d를 비교군으로 계속 두는 편이 합리적이다.
Unresolved
Company X 소속 사용자 판별 기준
어떤 인증 신호로 Company X 내부 문서 검색 허용 사용자를 확정할지 아직 정해지지 않았다.
Company X 문서의 색인 단위
원본 PDF/DOC/HWP를 그대로 청킹할지, 사람이 읽기 쉬운 중간 RAG 포맷으로 정제할지 아직 미정이다.
Company X 전용 team/collection 경계
현재 skill-rag-file은 team_id 기반 컬렉션 구조를 쓴다.
Company X 내부 문서를 어떤 식별자와 어떤 권한 경계로 넣을지 아직 고정되지 않았다.
답변 근거 노출 수준
문서명, 문단 요약, 파일 경로, 페이지 위치 중 어디까지 사용자에게 노출할지 아직 정해지지 않았다.
질문 해석 규칙
근거 있어?, 자료 기준으로, 내부 문서 기준으로 같은 표현을 별도 의도로 볼지, 일반 질문에 Company X 컨텍스트를 자동 적용할지 아직 미정이다.
샘플 문서셋 구성
2,000개 쉬운 문서를 어떤 기준으로 뽑을지 아직 정해지지 않았다.
오늘전통, MOU, 프로그램 소개, 운영안, 보도자료 초안 같은 문서군 우선순위를 먼저 고정해야 한다.
OpenAI 1536d와 로컬 384d의 실제 검색 품질 비교 결과
현재는 2문서, 6질문 기준 소규모 retrieval quality 비교 결과만 있다.
더 큰 문서군과 질문셋에서 같은 경향이 유지되는지는 아직 확인되지 않았다.
현재 결론
대표 질문에 대한 현재 실제 로빙 답변은 기대 시나리오를 만족하지 못한다.
그러나 내부 NAS 원본에는 관련 근거 문서가 실제로 존재한다.
현재 실패 원인은 Company X 근거 없음이 아니라 Company X 근거 문서가 런타임 RAG 경로와 연결되지 않음이다.
시간과 비용 조사 결과, 2,000개 쉬운 문서 규모는 실험 가능한 범위이며 비용도 병목이 아니다.
소규모 품질 비교에서는 384d 로컬과 1536d OpenAI가 동률이었으므로, 현 시점에서 모델 교체 결론을 먼저 내릴 필요는 없다.
따라서 다음 단계 plans는 2,000개 샘플 문서셋, 20~50개 질문셋, 384d vs 1536d 확장 비교, 문서 색인, 권한 경계, 질문 해석, 근거답변 형식을 한 번에 고정하는 계획 문서여야 한다.
관련 문서