반응형

RAG는 검색 증강 생성으로
LLM이 문서를 보고 답변을 주는 구조를 의미

LLM이 스스로 아는 지식 + 외부 문서에서 검색한 지식을 결합해서 답하는 방식

 

LLM은 범용 지식을 학습하는 것이기 때문에 

  • 최신 정보 반영 불가(학습 이후 발생한 데이터 반영 불가, cut-off 문제)
  • 사내 문서(학습되지 않은 영역 답변 불가)
  • 환각(할루시네이션, hallucination) 발생
    ㄴ잘못된 정보 제공

이 문제 구조를 해결하기 위해 나온 구조 → RAG


RAG의 핵심 아이디어

LLM이 모르는 정보는 외부 문서를 참조해서 답변 생성

  1. 사용자가 질의 전달
  2. 질문→벡터 변환
  3. 문서(사내 문서, PDF, DB 데이터 등)를 벡터 기반으로 검색
  4. 검색된 문서 일부를 LLM에게 전달
  5. LLM은 검색된 문서 내용을 기반으로 답변 생성

RAG를 구성하는 컴포넌트

RAG의 필수 구성 요소 4가지

 

1) Embedding (임베딩 모델)

    - 텍스트를 컴퓨터가 이해할 수 있는 숫자 벡터로 바꾸는 역할

  • BAAI/bge-m3
  • text-embedding-3-large
  • e5-large

 

2) Vector DB (벡터 검색 DB)

   - 문서 조각들을 벡터 형태로 저장하고 검색하는 DB

  • Chroma
  • Qdrant
  • Weaviate
  • Pinecone
  • Elasticsearch + Vector

3) Retriever (검색기)

   - Vector DB에서 "질문과 가장 관련 있는 문서 Top-K" 가져오는 역할

 

4) LLM (답변 생성)

   - 검색된 문서를 읽고 "그 문서를 기반으로 답변을 생성하는 모델"

  • GPT-4o
  • Claude
  • Qwen2.5
  • Llama2.5

전체 flow

 

[질문] → [임베딩] → [벡터DB에서 관련 문서 검색] → [LLM에 문서+질문 전달] → [답변 생성]

 

tip: 문서를 잘 파싱 및 청킹해야하고, LLM이 좋아야 꽤 나이스한 답변을 함

반응형

'인공지능' 카테고리의 다른 글

CUDA(Compute Unified Device Architecture)  (0) 2025.12.03
AI 강의  (0) 2025.11.24
A2A(Agent2Agent) protocol  (0) 2025.11.19
MCP(Model Context Protocol) - AI 시대의 새로운 표준 인터페이스  (0) 2025.11.19
LLM(Large Language Model)  (0) 2025.11.18

+ Recent posts