검색 증강 생성 (Retrieval-Augmented Generation)
AI 가 응답을 생성하기 전에, 필요한 자료를 먼저 찾아 읽고(검색) 그 근거를 바탕으로(증강) 답하게(생성) 만드는 방식.
일반적인 LLM은 학습한 내용을 모델 파라미터에 압축. 정보의 최신성, 조직 내부 지식, 근거 제시에 있어서 약점을 가짐.
RAG를 이용하면
RAG의 품질은 찾아온 자료의 품질과 검색 정확도에 크게 좌우됨.
직원이 질문 시, 관련된 조회 권한이 있는 사내 규정을 검색 -> 관련 조항을 읽고 바탕으로 답변을 생성
단순 지식, 창작, 대화를 원하는 경우에는 일반 LLM과 좋은 프롬프트가 더 나음. 또한 계산과 데이터 집계의 경우에도 Tool을 이용하는 방식이 나음. RAG는 정보를 가져오는 데 강함.
믿을 수 있는 문서 목록과 문서 조회 권한이 중요
준비 단계와 답변 단계
문서를 읽기 쉬운 조각으로 만들어 검색 가능하게 보관
자료 수집 -> 문서 정리와 청킹 -> 임베딩 -> 검색용 저장소
질문에 맞는 조각을 찾아 LLM에게 전달하고 답변 생성
질문 이해와 검색 -> LLM에게 질문과 근거를 함께 전달(프롬프트 증강) -> 답변과 인용 생성
RAG 성능은 문서 품질 / 검색 품질 / 근거 기반 답변 품질 에 좌우됨.
청킹
문서의 구조와 질문 유형에 맞춰 적절한 크기를 선정
(서로 의존하는 내용은 한 청크에 남기는 게 좋음)
검색
키워드 검색과 의미 검색
하이브리드 검색
질의 재작성 (질의 확장)
사용자의 질문과 이를 검색에 더 유리하게 바꾼 형태를 함께 사용.
답변 규칙
근거를 찾은 것과 근거대로 답하는 것은 다름.
예시 규칙
좋은 RAG는 충분한 근거를 찾았는지 판단하고, 근거를 포함한 답변 or 근거 부족과 추가 자료 요구를 안내할 줄 알아야 함.
빠르고 구현 쉽지만, 검색 결과가 부족하거나 틀리면 흔들림.
Corrective RAG (CRAG)
결과가 질문과 관련있는지를 평가, 검색 결과 품질이 나쁘다고 판단되면 다른 전략을 사용. (검색어 변경, 다른 지식 베이스, 웹 자료 추가 검색, 답변 보류)
Adaptive RAG
질문에 따라 다른 경로 선택
질문의 난이도, 위험도, 최신성에 따라 검색 전략을 변경
Graph RAG
문서의 관계까지 활용.
원문에서 사람 조직 제품 사건 등 개체와 관계를 추출해 그래프 형태로 만들고 이를 검색 요약에 활용
Agentic RAG
RAG를 하나의 도구로 삼아 AI가 여러 단계로 조사하도록 함.
필요한 근거를 찾았는가
근거를 충실히 사용했는가
사용자에게 유용한가
원칙 3가지