개요
검색 증강 생성(RAG)
Retrieval-augmented generation (RAG)
뜻
관련 외부 정보를 검색해 모델이 답을 만들기 전에 문맥으로 제공하는 방식입니다.
언제 쓰나
최신 문서, 사내 문서, 전문 분야 자료를 근거로 답해야 할 때 사용합니다.
활용 예시
Retrieve policy passages for the question, then answer using only those passages.Generative AI Engineering
신뢰할 수 있는 문서로 검증 가능한 AI 답변을 만들 때 사용하는 수집, 색인, 검색, 순위화, 근거 연결, 인용, RAG 프롬프트 패턴을 설명합니다.
19 개 용어
개요
Retrieval-augmented generation (RAG)
관련 외부 정보를 검색해 모델이 답을 만들기 전에 문맥으로 제공하는 방식입니다.
최신 문서, 사내 문서, 전문 분야 자료를 근거로 답해야 할 때 사용합니다.
Retrieve policy passages for the question, then answer using only those passages.문서 수집
Chunking
문서를 색인하고 검색할 수 있도록 작은 단위로 나누는 작업입니다.
의미를 유지하면서 검색 범위를 집중할 수 있는 경계를 선택합니다.
Split the handbook by section and keep each heading with its paragraphs.색인
Embedding
텍스트나 콘텐츠의 의미적 특징을 나타내는 숫자 벡터입니다.
정확한 키워드가 달라도 의미가 비슷한 내용을 찾을 때 사용합니다.
Create embeddings for each document chunk and for the user's query.색인
Vector store
임베딩을 저장하고 가까운 벡터를 검색할 수 있는 시스템입니다.
의미 기반 색인과 문서 메타데이터를 관리할 때 사용합니다.
Store each chunk vector with its source URL, title, and access scope.검색
Similarity search
선택한 거리 기준에서 벡터 표현이 얼마나 가까운지를 이용한 검색입니다.
질문의 의미와 관련된 문단을 찾을 때 사용합니다.
Search the vector store for passages nearest to the query embedding.검색
Retriever
질문에 맞는 후보 문서나 청크를 선택하는 구성 요소입니다.
질문 재작성, 필터, 검색 방식, 결과 수를 조합하도록 설정합니다.
The retriever returns policy chunks the current user is allowed to access.검색
Top-k
검색 순위가 높은 결과 중 다음 단계로 넘길 개수를 뜻합니다.
근거 범위와 잡음, 컨텍스트 사용량의 균형을 맞출 때 조정합니다.
Retrieve top-k 8 candidates, then rerank and keep the best 4.검색
Metadata filter
날짜, 제품, 언어, 권한 같은 속성으로 검색 범위를 제한하는 조건입니다.
의미 순위를 계산하기 전에 범위와 접근 권한을 강제할 때 사용합니다.
Filter to Korean documents published after 2025 that the user may view.검색
Hybrid search
키워드 기반 신호와 의미 기반 벡터 신호를 결합하는 검색 방식입니다.
정확한 제품 코드와 의미적 유사성이 모두 중요할 때 사용합니다.
Combine BM25 keyword results with embedding similarity for error code AB-104.순위화
Reranking
검색된 후보의 관련도를 다시 평가해 순서를 조정하는 두 번째 단계입니다.
넓게 후보를 모은 뒤 정확도를 높일 때 사용합니다.
Rerank 20 candidate chunks and send the best 5 to the generator.근거 기반 응답
Grounding
생성된 답변을 제공되거나 검색된 근거와 연결하는 방식입니다.
근거 없는 주장을 줄이고 답변을 검토 가능하게 만들 때 사용합니다.
Answer only claims supported by the retrieved policy excerpts.근거 기반 응답
Citation
주장을 뒷받침하는 원문 출처를 식별하는 표시입니다.
독자가 근거를 빠르게 확인할 수 있도록 주장 가까이에 인용을 붙입니다.
인용이 있어도 근거가 주장과 무관할 수 있으므로 실제로 뒷받침하는지 확인해야 합니다.
Include the document title, section, and direct source link for each policy claim.RAG 프롬프트 패턴
Query rewriting prompt
사용자 요청을 키워드, 의미, 하이브리드, 필터 검색에 더 적합한 하나 이상의 검색 질문으로 바꾸는 지시문입니다.
모호하거나 대화체이고 정보가 부족하거나 문서 용어와 맞지 않는 질문에서 원래 의도를 유지하며 사용합니다.
사용자 의도를 조용히 바꾸거나 근거 없는 사실을 추가하거나 접근 필터를 약화하지 마세요.
Rewrite the question for hybrid search. Preserve the original intent, add likely document terminology, and return the original plus up to three rewritten queries.RAG 프롬프트 패턴
Grounded-answer instruction
생성 단계에 제공된 검색 구절이 사실 주장을 뒷받침하도록 요구하는 프롬프트 규칙입니다.
답변을 감사할 수 있어야 하고 근거 없는 모델 지식을 증거처럼 제시하면 안 될 때 사용합니다.
Answer the question using the supplied passages. Attach the supporting source ID to every factual claim and separate any clearly labeled inference.RAG 프롬프트 패턴
Context-only answering
답변을 제공된 검색 컨텍스트가 명시적으로 뒷받침하는 정보로 제한하는 엄격한 생성 규칙입니다.
정책, 계약, 규제 콘텐츠처럼 모델의 외부 지식으로 빈틈을 채우면 안 되는 작업에 사용합니다.
이 규칙만으로 품질이 낮거나 불완전하고 오래됐거나 권한이 없는 검색 결과를 보완할 수는 없습니다.
Use only <retrieved_context>. If the context does not contain the answer, return insufficient_evidence instead of using prior knowledge.RAG 프롬프트 패턴
No-evidence response and abstention
검색 근거가 없거나 부족하거나 충돌하거나 지원 기준에 미달할 때 사용하는 정해진 대체 응답입니다.
확신에 찬 추측을 막고 추가 질문, 재검색, 사람 검토로 연결할 때 사용합니다.
If no passage directly supports the answer, return status: insufficient_evidence, explain what is missing, and suggest one clarifying question.RAG 프롬프트 패턴
Citation format instruction
생성 답변에서 출처 식별자를 어디에 어떤 형식으로 표시할지 정하는 프롬프트 규약입니다.
애플리케이션과 검토자가 일관되게 확인할 수 있는 주장 단위 참조를 만들 때 사용합니다.
인용 형식을 맞췄다고 해당 구절이 주장을 뒷받침하는 것은 아니므로 인용 정확성을 별도로 검증해야 합니다.
After each supported sentence, cite one or more retrieved IDs in [S1] format. Never invent an ID and do not cite a source that does not support the sentence.RAG 프롬프트 패턴
Retrieved-context synthesis
여러 검색 구절의 보완적인 근거를 출처 경계를 지우지 않고 일관된 답변으로 결합하는 방식입니다.
둘 이상의 구절이 필요한 비교, 요약, 복합 질문에 사용합니다.
Group passages by subquestion, remove duplicates, preserve dates and scope, then synthesize the answer with claim-level source IDs.RAG 프롬프트 패턴
Conflicting-source handling
검색된 출처 사이의 모순을 탐지하고 임의로 하나를 선택하지 않고 보고하도록 하는 프롬프트 규칙입니다.
문서가 버전, 날짜, 관할, 권위, 해석에 따라 달라질 수 있을 때 사용합니다.
최신 문서가 항상 더 권위 있는 것은 아니므로 분야별 출처 우선순위 규칙을 프롬프트와 함께 또는 시스템 외부에서 적용해야 합니다.
If sources conflict, list each claim with its source, version, and date; identify the conflict; apply an explicit authority rule or request review.검색 품질과 생성 지시를 함께 설계·평가해야 하며 프롬프트만으로 누락되거나 권한이 없는 근거를 복구할 수는 없습니다.
| 단계 | 프롬프트의 역할 |
|---|---|
| 검색 전 | 의도를 유지하며 질문을 재작성·확장·필터링·분해 |
| 컨텍스트 조립 | 출처 ID, 버전, 날짜, 권한, 구절 경계를 표시 |
| 답변 생성 | 주장을 근거로 제한하고 인용 형식과 답변 보류 동작 지정 |
| 생성 후 | 주장 근거, 인용 정확성, 충돌, 완전성, 접근 준수 검증 |
아닙니다. 사용할 근거 범위를 줄이지만 구절을 잘못 읽거나 호환되지 않는 출처를 합치거나 잘못된 인용을 붙이거나 낮은 품질의 검색 결과에 의존할 수 있습니다. 검색 재현율, 주장 근거, 인용 정확성, 답변 보류 동작을 검증해야 합니다.
권한 있는 구절이 필요한 주장을 직접 뒷받침하지 않거나 근거가 기준에 미달하거나 권위 규칙 없이 출처가 충돌하거나 질문이 너무 모호해 안전하게 검색할 수 없을 때 답변을 보류합니다. 구조화된 사유와 다음 유용한 조치를 반환해야 합니다.
사용자나 후속 시스템이 주장을 확인해야 한다면 요청하는 것이 좋습니다. 다만 애플리케이션이 실제 출처 식별자를 보존하고 각 인용 구절이 가까운 주장을 뒷받침하는지 검증해야 하며 모델이 출처 ID를 만들어내면 안 됩니다.
질문 확장, 분해, 재작성, 검색, 재순위화, 누적 컨텍스트를 설명하는 공식 아키텍처 가이드입니다.
오케스트레이션·생성 프롬프트 템플릿, 실행 변수, 검색 문맥, 질문, 인용 출력 지시를 설명하는 공식 문서입니다.
생성 주장이 제공된 사실로 뒷받침되는지 측정하고 지지·모순 근거를 식별하는 공식 가이드입니다.
지시문, 제약, 출력 스키마, 작업 분해, 추론, 검증기 패턴을 함께 확인합니다.
검색 근거와 대화 상태를 배분·조립·정렬·압축·캐싱·추적합니다.
근거성, 인용 품질, 완전성, 회귀, 지연시간, 비용을 측정합니다.
간접 프롬프트 인젝션, 무권한 데이터 접근, 안전하지 않은 출력으로부터 검색 파이프라인을 보호합니다.