무엇을 하나요
“출장비 정산은 어떻게 하나요?” 같은 질문에 대해, 외부 LLM은 검색 계획만 세우고 실제 문서 검색·답변은 전부 로컬에서 처리합니다.
왜 만들었나요
RAG 데모에서 가장 자주 받는 질문이 “우리 문서가 OpenAI로 나가나요?”였기 때문에, 아키텍처 자체가 답이 되도록 만들었습니다.
어떻게 동작하나요
query_planner.py → vector_search.py → rag_generator.py 파이프라인. Streamlit UI에서 의도·카테고리·소스 문서를 함께 보여 줍니다.
기술적 결정
- 질문만 외부 전송 (프로덕션): JSON 검색 계획으로 경계 명확화
- 로컬 Ollama (프로덕션): qwen2.5 등 on-device 답변 생성
- 웹 데모 모드 (
WEB_DEMO_MODE): Streamlit Cloud에서 Step 3만 클라우드 LLM — UI에 라벨 표시 - 시뮬레이션 모드: API·Ollama 없을 때도 PoC 흐름 유지
웹 데모 vs 프로덕션
| 단계 | 프로덕션 | 웹 데모 (포트폴리오) | |------|----------|----------------------| | Step 1 질문 분석 | OpenAI (질문만) | 동일 | | Step 2 벡터 검색 | 로컬 FAISS | 동일 | | Step 3 답변 생성 | 로컬 Ollama | 클라우드 LLM (체험용) |
웹 데모는 아키텍처 설명용이며, 실제 기업 배포에서는 Step 3가 로컬에서만 동작합니다.
어려웠던 점
하이브리드 경계를 사용자에게 한눈에 보여주는 UI — “어디까지가 외부인지”
배운 점
엔터프라이즈 RAG PoC에서 보안은 부록이 아니라 첫 슬라이드여야 합니다.