로컬 LLM · pgvector · RAG 챗봇 만들기
LM Studio·pgvector·Gemini와 ONNX 브라우저 추론을 연결하는 8단계. 검색부터 모델 실행 비용까지.
- 난이도
- 고급
- 강의
- 8
ChatGPT 한 줄로 해결되지 않는 자리가 있어요. 사내 문서 · 개인 정리 · 외부 반출 불가 자료. RAG (Retrieval Augmented Generation) 은 LLM 이 내가 고른 자료 안에서만 답하게 만드는 패턴입니다.
누구를 위한 강좌인가
- 로컬 GPU · 사내 환경에서 외부로 데이터 보내지 않고 LLM 을 돌리고 싶은 분
- 내 문서에 대해 정확한 인용으로 답하는 챗봇을 만들고 싶은 분
- 임베딩 · 벡터 검색 · 프롬프트 설계의 기본을 한 묶음으로 익히고 싶은 분
다 끝내면 가능한 것
- LM Studio 로 Gemma · Llama 계열 로컬 모델 실행
- PostgreSQL + pgvector 로 임베딩 저장 · HNSW 인덱스 검색
- FastAPI + LangChain 최소 파이프라인 (retrieve → prompt → generate)
- Gemini API 와 로컬 LLM 을 자유롭게 교체
- 시스템 프롬프트 · few-shot · 출력 형식 제어
- ONNX Runtime Web의 WebGPU·WASM·서버 fallback과 모델 전송 예산 설계
단계 흐름
검색 증강 생성을 운영하는 순서
로컬 모델과 임베딩으로 데이터가 외부로 나가지 않는 기본 경로를 만듭니다.
벡터 검색과 근거 조립을 연결해 재현 가능한 RAG 파이프라인을 구성합니다.
클라우드 모델은 기본 차단하고 품질·예산·전송량 조건을 만족할 때만 엽니다.
프롬프트, SaaS, 브라우저 추론을 지연·비용·개인정보 기준으로 선택합니다.
전반부(14)는 검색의 기계 부품, 후반부(58)는 모델·프롬프트·실행 위치·전송 비용을 고르는 운영 판단입니다.
단계 구성
- 왜 로컬 LLM · LM Studio 시작 — OpenAI 호환 endpoint / 모델 교체 / VRAM
- 임베딩 — 텍스트를 벡터로 — 의미 기반 검색의 수학 · 768차원
- pgvector + HNSW 설정 — 설치 · 인덱스 선택 · 코사인 vs 내적
- RAG 파이프라인 — 청킹 · retrieve · top-k · rerank · prompt 주입
- Gemini · OpenAI 호환 API — 로컬 ↔ 클라우드 스위치 · 비용 · latency
- 프롬프트 설계 — 시스템 프롬프트 · few-shot · 출력 스키마 · hallucination
- NotebookLM vs 자체 RAG — SaaS 형 RAG 와 비교, 어느 자리가 어떤 도구에 맞는지 결정
- 브라우저 ONNX 추론 — WebGPU·WASM capability, 모델 지연 로드, 서버 fallback
전제 — python-data-pipeline 강좌 + Python 3.13+ + uv + PostgreSQL 15+ + LM Studio.