Carlos_Lab
진행 중AI2026추천

Secure Hybrid RAG

내규 문서 검색 — 질문만 외부로, 검색·답변은 로컬.

Secure Hybrid RAG 썸네일

웹 시연 안내

원래 설계는 Step 3 답변을 로컬 Ollama에서 생성합니다. 이 사이트의 웹 시연(Streamlit Cloud)에서는 Ollama를 띄울 수 없어 Step 3만 클라우드 LLM으로 대체합니다. Step 1·2(질문 분석, FAISS 검색)는 동일합니다.

웹 시연 모드입니다. Streamlit Cloud 데모라 첫 로드·유휴 후 재접속 시 30초쯤 걸릴 수 있습니다.

데모가 로드되지 않나요? 새 탭에서 열기 →

문제

내부 문서 전체를 클라우드 LLM에 넘기면 보안 검토를 통과하기 어렵습니다.

해결

3단계 파이프라인: 질문 분석 → 로컬 벡터 검색 → 로컬 LLM 답변. 문서 본문은 외부로 나가지 않습니다.

하이라이트

  • 질문 텍스트만 외부 API 전송
  • FAISS + SentenceTransformers
  • 검색 근거·의도를 UI에 표시

기술 스택

PythonStreamlitFAISSOllamaOpenAI API

무엇을 하나요

“출장비 정산은 어떻게 하나요?” 같은 질문에, 관련 내규를 찾아 답과 출처를 함께 보여 줍니다.

왜 만들었나요

데모할 때마다 “우리 문서가 OpenAI로 나가나요?”라는 질문이 나와서, 데이터가 어디까지 나가는지 코드와 UI로 보이게 만들었습니다.

어떻게 동작하나요

query_planner.pyvector_search.pyrag_generator.py 순서입니다. Streamlit 화면에서 의도, 카테고리, 참고 문서를 같이 표시합니다.

설계 메모

  • Step 1: OpenAI — 질문만 보내 검색 계획(JSON) 생성
  • Step 2: 로컬 FAISS — 문서 검색
  • Step 3: 로컬 Ollama — 검색 결과로 답변 생성

웹 시연과 실제 배포

| 단계 | 사내 배포 | 웹 시연 (이 사이트) | |------|-----------|---------------------| | 질문 분석 | OpenAI | 동일 | | 벡터 검색 | 로컬 FAISS | 동일 | | 답변 생성 | 로컬 Ollama | 클라우드 LLM (Ollama 미지원) |

웹 시연은 흐름 확인용입니다. 사내 환경에서는 Step 3도 로컬에서만 돌아갑니다.

어려웠던 점

“어디까지가 외부인지”를 한 화면에서 설명하는 UI — 기술보다 설명이 더 어려웠습니다.