◈ 학습 목표

  1. 수만 개의 정보 중 필요한 것만 골라내는 RAG(Retrieval-Augmented Generation) 아키텍처를 이해합니다.
  2. 데이터를 잘라 저장하는 **청킹(Chunking)**과 검색 결과 개수를 조절하는 k-값의 중요성을 배웁니다.
  3. '검색 기반 답변'이 시스템의 효율성을 어떻게 극대화하는지 확인합니다.

데이터가 많을 때를 대비해, 정보를 조각내어 저장하고 필요한 부분만 검색하는 방식(RAG)을 학습합니다.


1) 핵심 개념: 청킹, 임베딩, 그리고 k-값

개념 설명 비유
청킹 (Chunking) 긴 문서를 AI가 처리하기 좋은 작은 단위로 쪼개는 것 책을 찢어서 포스트잇으로 만들기
임베딩 (Embedding) 텍스트를 AI가 이해하는 숫자(좌표)로 변환하는 것 단어를 지도상의 위치로 바꾸기 (휴가와 리프레시는 가깝다)
Top-K 검색 (k-값) 검색 시 가져올 문서 조각의 개수 질문과 관련된 상위 N개의 포스트잇 고르기

2) 검색 성능의 핵심: k-값 (k=3의 비밀)

코드에서 search_kwargs={"k": 3}은 질문과 가장 비슷한 조각을 3개 가져오라는 뜻입니다.


3) 청킹의 효과: 직접 비교해보기

데이터를 어떻게 자르느냐(청킹)에 따라 AI의 성능이 얼마나 달라지는지 코드로 직접 비교해 봅니다.

구분 청킹 정교화 (작게 쪼갬) 청킹 미사용 (통째로 넣음)
검색 품질 질문과 딱 맞는 부분만 정확히 찾아냄 관련 없는 내용까지 섞여서 검색됨
AI 집중력 관련 정보가 농축되어 답변이 정확함 정보가 너무 많아 엉뚱한 소리를 함 (비용 상승)
비유 포스트잇에서 답 찾기 두꺼운 백과사전 통째로 읽고 답 찾기

4) 코드 실습: 청킹 유무에 따른 차이