사내 지식 검색 봇
사내 문서(Confluence, Notion)를 RAG 기반으로 검색하여 직원 질문에 답변하는 챗봇 구축 사례
intermediateEnterprise
RAGEmbeddingVector DBChunking
문제 정의
300명 규모의 IT 기업에서 사내 문서(Confluence, Notion, Google Drive)에 분산된 지식을 빠르게 검색하는 것이 핵심 과제였다. 기존 키워드 검색으로는 "온보딩 절차가 뭐야?", "VPN 설정 방법 알려줘" 같은 자연어 질문에 적절한 답변을 찾기 어려웠다.
왜 기존 검색으로 부족했는가
| 문제 | 설명 |
|---|---|
| 키워드 불일치 | "퇴사 절차" vs "오프보딩 프로세스" — 같은 내용이지만 검색 안 됨 |
| 정보 분산 | 하나의 절차가 3개 문서에 걸쳐 있음 |
| 맥락 부재 | 검색 결과가 문서 링크 목록이라 원하는 답을 직접 찾아야 함 |
| 최신성 | 어떤 문서가 최신인지 판단하기 어려움 |
시스템 구조
사내 문서 소스 (Confluence, Notion, Drive)
↓
문서 수집기 (Scheduled Sync)
↓
전처리 (메타데이터 추출, 정규화)
↓
Chunking (512 토큰, 10% Overlap)
↓
Embedding (text-embedding-3-small)
↓
Vector DB (Qdrant)
↓
─── 인덱싱 완료 ───
사용자 질문 (Slack Bot)
↓
Query Embedding
↓
Similarity Search (Top-5)
↓
Reranker (Cross-Encoder)
↓
Prompt Composition
↓
LLM (GPT-4o-mini)
↓
응답 + 출처 링크
핵심 기술 선택 이유
Embedding 모델: text-embedding-3-small
- 한국어 성능이 준수하면서 비용이 낮음
- 1536차원으로 충분한 표현력 제공
- API 기반이라 인프라 부담 없음
Chunking 전략: 512 토큰 + 10% Overlap
- 사내 문서 특성상 문단 단위가 의미 있는 정보 단위
- 초기에는 256 토큰으로 시작했으나 문맥 손실 문제로 상향
- Overlap 10%로 문단 경계의 정보 손실 방지
Vector DB: Qdrant
- 셀프 호스팅 가능 (사내 보안 정책)
- 필터링 기능으로 부서/카테고리별 검색 지원
- 메모리 효율적인 HNSW 인덱스
Reranker 도입
- 초기 버전에서 Top-5 검색 결과의 정밀도가 60%에 불과
- Cross-Encoder Reranker 도입 후 정밀도 85%로 향상
- 추가 레이턴시 약 200ms — 허용 범위 내
운영 시 발생한 이슈
1. 문서 동기화 지연
문서가 수정되어도 인덱스에 반영되는 데 최대 6시간 소요. 사용자가 "방금 올린 문서인데 왜 검색 안 돼요?"라고 불만 제기.
해결: Webhook 기반 실시간 동기화로 전환 (5분 이내 반영)
2. 할루시네이션
검색 결과에 관련 문서가 없으면 LLM이 그럴듯한 답변을 생성하는 문제.
해결: 유사도 점수 임계값(0.7) 미달 시 "관련 문서를 찾지 못했습니다" 응답. 모든 답변에 출처 표시 필수화.
3. 비용 급증
사용량이 예상의 3배로 증가하면서 월 API 비용이 $500 → $1,500.
해결: GPT-4o → GPT-4o-mini로 다운그레이드, 캐싱 레이어 추가 (동일 질문 24시간 캐싱)
개선 포인트
- Hybrid Search 도입: Dense + Sparse 검색 결합으로 키워드 매칭 개선
- 사용자 피드백 루프: 답변에 대한 유용성 평가를 수집하여 Retrieval 품질 개선
- 다국어 지원: 영문 기술 문서 검색을 위한 다국어 Embedding 모델 실험
- 권한 관리: 부서별 접근 권한에 따른 검색 결과 필터링
확장 가능성
이 시스템을 기반으로 다음 확장이 가능하다:
- 코드 리뷰 봇 (코드 저장소 인덱싱)
- 고객 지원 봇 (FAQ + 기술 문서 기반)
- 온보딩 어시스턴트 (신입 직원용 맞춤 가이드)
핵심 교훈
- 간단하게 시작하라: 복잡한 파이프라인보다 기본 RAG로 시작하고 병목을 측정한 후 개선
- 검색 품질이 전부다: LLM 모델을 업그레이드하는 것보다 검색 품질을 개선하는 것이 효과적
- 운영 비용을 미리 계산하라: 프로토타입의 10배 트래픽을 가정하고 비용 추정
- 사용자 피드백이 핵심: 정량 지표(유사도 점수)보다 사용자의 "도움이 됐어요" 클릭이 더 신뢰할 수 있는 지표