로컬 LLM · pgvector · RAG 챗봇 만들기
LM Studio + pgvector + Gemini 로 내 문서에 답하는 챗봇을 짓는 7단계. 임베딩부터 프롬프트까지.
- 난이도
- advanced
- 강의
- 7
로컬 LLM · pgvector · RAG 챗봇 만들기
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 · 출력 형식 제어
단계 흐름
[1] 로컬 LLM ──▶ [2] 임베딩 ──▶ [3] pgvector ──▶ [4] RAG 파이프라인
│
▼
[7] SaaS RAG 비교 ◀── [6] 프롬프트 ◀── [5] 클라우드 스위치
전반부 (14) 는 "의미를 숫자로 바꿔 검색" 의 기계 부품. 후반부 (57) 는 모델 · 프롬프트 · 도구 선택 의 운영 판단.
단계 구성
- 왜 로컬 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 와 비교, 어느 자리가 어떤 도구에 맞는지 결정
전제 — python-data-pipeline 강좌 + Python 3.13+ + uv + PostgreSQL 15+ + LM Studio.