Dify RAG 가이드 2026: 자체 문서에서 질문에 답하기
검색 증강 생성(RAG)은 Dify의 가장 강력한 기능입니다. 이 가이드는 답변하기 전에 문서를 검색하는 AI를 구축하는 방법을 정확하게 보여줍니다 — 환각된 추측 대신 정확하고 근거 있는 답변을 제공합니다.
Dify RAG란 무엇인가요?
RAG는 검색 증강 생성(Retrieval-Augmented Generation)의 약자입니다. 이 기술은 AI가 일반적인 훈련 데이터에서만 답변하는 대신, 자체 문서, 데이터베이스, 지식 소스에 접근할 수 있게 합니다 — 먼저 내용을 검색하고 발견한 것을 기반으로 답변을 생성합니다.
GPT-4나 Claude 같은 표준 LLM은 내부 문서, 제품 사양, 회사 정책에 대해 질문받으면 환각을 일으킵니다 — 그 데이터를 단순히 모르기 때문입니다. Dify RAG는 파일로 지식 베이스를 생성하고 모델이 답변하기 전에 가장 관련성 있는 텍스트 섹션을 컨텍스트로 삽입함으로써 이 문제를 해결합니다.
결과: 실제 데이터에서 정확하게 답변하고, 소스를 인용하며, 정보가 없을 때 "모른다"고 말하는 AI 챗봇 — 무언가를 만들어내는 대신.
Dify RAG의 내부 작동 방식
파이프라인을 이해하면 더 잘 구성할 수 있습니다. 문서를 업로드하고 챗봇에 질문할 때 프로세스가 어떻게 작동하는지 알아봅시다:
문서 수집
파일을 업로드합니다. Dify는 PDF, Word 문서, Markdown 등에서 텍스트 콘텐츠를 추출합니다.
청킹
검색이 정확하도록 텍스트를 작은 섹션(일반적으로 500~1000 토큰)으로 분할합니다.
임베딩
각 섹션은 text-embedding-3-small과 같은 임베딩 모델을 사용하여 벡터(숫자 목록)로 변환됩니다.
벡터 저장
벡터가 벡터 데이터베이스에 저장됩니다(내장형, pgvector, Qdrant, Weaviate, Milvus 또는 Pinecone).
쿼리 검색
사용자가 질문하면 쿼리도 임베딩되고 벡터 저장소에서 가장 유사한 섹션을 검색합니다.
컨텍스트 주입
검색된 섹션이 LLM 프롬프트에 컨텍스트로 삽입됩니다. 모델이 이 실제 데이터를 기반으로 답변합니다.
지식 베이스 설정
지식 베이스는 문서를 업로드하고 인덱싱하는 곳입니다. 다음 단계를 따르세요:
Dify 열기 → "지식" 탭
상단 탐색에서 "지식"을 클릭합니다. 모든 문서 컬렉션이 여기 있습니다.
새 지식 베이스 만들기
"+ 지식 만들기"를 클릭합니다. 설명적인 이름을 지정합니다(예: "제품 문서", "지원 FAQ").
파일 업로드
파일을 드래그 앤 드롭하거나 브라우저로 선택합니다. 지원 형식: PDF, Word(.docx), TXT, Markdown(.md), HTML, CSV. 여러 파일 동시 업로드 가능.
청킹 전략 선택
대부분의 경우 "자동"을 선택합니다. 단락과 제목으로 문서를 분할합니다. 밀도 높은 기술 문서의 경우: 800 토큰 청크, 150 토큰 겹침으로 "커스텀"을 사용합니다.
임베딩 모델 선택
임베딩 모델을 선택합니다. OpenAI text-embedding-3-small을 권장합니다 — 빠르고 저렴하며 정확합니다. 셀프 호스팅 시 Ollama를 통한 nomic-embed-text도 오프라인으로 작동합니다.
문서 인덱싱
"저장 및 처리"를 클릭합니다. Dify가 모든 것을 청크하고 임베딩합니다. 문서 크기에 따라 1~5분 정도 소요됩니다. 진행 표시줄이 상태를 보여줍니다.
RAG를 앱에 연결하기
지식 베이스가 인덱싱되면 챗봇 또는 에이전트에 연결합니다:
Studio에서 챗봇 또는 에이전트 열기
왼쪽 패널에서 "컨텍스트" 섹션 찾기
"+ 컨텍스트 추가"를 클릭하고 지식 베이스 선택
검색 모드를 "시맨틱 검색"(권장)으로 설정 — 의미 기반 검색, 또는 "전체 텍스트 검색" — 키워드 매칭
"Top K"를 3~5로 설정 (요청당 검색할 섹션 수). 3으로 시작하세요.
관련 없는 결과를 필터링하기 위해 "점수 임계값"을 0.5로 활성화
미리보기 패널에서 문서의 질문으로 테스트합니다. 봇이 올바른 정보를 제공하는지 확인합니다.
지원되는 벡터 데이터베이스
Dify는 여러 벡터 저장소를 지원합니다. 대부분의 사용자에게는 내장 저장소로 충분합니다. 대규모 배포(수백만 개의 문서)의 경우 전용 벡터 데이터베이스로 전환하세요:
| 벡터 저장소 | 설정 | 이상적인 용도 | 비용 |
|---|---|---|---|
| 내장형 (기본값) 권장 | 필요 없음 | 대부분의 사용자 — ~100,000개 문서까지 | 무료 |
| pgvector | PostgreSQL 확장 | 기존 PostgreSQL 사용자 | 무료 (셀프 호스팅) |
| Qdrant | Docker 컨테이너 | 셀프 호스팅, 고성능 | 무료 (셀프 호스팅) |
| Weaviate | Docker 또는 Cloud | 멀티모달 데이터 (텍스트 + 이미지) | 무료 / 유료 Cloud |
| Milvus | Docker 또는 Zilliz Cloud | 수십억 개의 벡터, 엔터프라이즈 | 무료 / 유료 Cloud |
| Pinecone | API 키만 필요 | 완전 관리형, 인프라 없음 | 유료 SaaS |
최상의 결과를 위한 RAG 팁
이 구성 팁들이 RAG 정확도를 크게 향상시킵니다:
최적 청크 크기: 500~1000 토큰
너무 작으면 컨텍스트가 없어집니다. 너무 크면 관련성이 희석됩니다. 대부분의 문서에서 100 토큰 겹침의 600 토큰이 이상적입니다.
소스 문서 정리
반복적인 머리글, 바닥글, 페이지 번호, 탐색 요소를 제거하세요. 이것들이 검색 품질을 저하시키는 노이즈를 생성합니다.
메타데이터 필터링 활용
카테고리로 문서에 레이블을 붙이세요(예: "제품: 청구", "유형: FAQ"). 필터를 통해 관련 하위 집합에서 정확한 검색이 가능합니다.
주제별 지식 베이스 분리
제품 매뉴얼과 인사 정책을 섞지 마세요. 별도의 데이터셋이 더 정확한 검색을 가능하게 합니다. 하나의 앱에 여러 베이스를 연결할 수 있습니다.
하이브리드 검색 사용
Dify는 하이브리드 모드(시맨틱 + 키워드 검색 결합)를 지원합니다. 제품 코드나 고유명사 같은 정확한 용어에 이상적입니다.
로그에서 검색 모니터링
앱의 로그 및 주석으로 이동하여 각 요청에 대해 어떤 청크가 검색되었는지 확인하세요. 나쁜 답변의 문제를 진단하는 데 사용하세요.
검색 모드 설명
Dify는 세 가지 검색 모드를 제공합니다. 콘텐츠 유형에 따라 선택하세요:
시맨틱 검색
정확한 단어가 다를 때도 개념적으로 유사한 콘텐츠를 찾습니다. 복잡한 주제에 대한 자연어 질문에 이상적입니다. 벡터 유사도를 사용합니다.
전체 텍스트 검색
클래식 검색 엔진처럼 키워드 기반 검색. 정확한 용어에 더 좋습니다: 제품 코드, 이름, ID. 빠르고 예측 가능합니다.
하이브리드 검색
리랭커와 함께 시맨틱 및 전체 텍스트 검색을 결합합니다. 최고의 전반적 정확도지만 느립니다. 리랭커 모델이 필요합니다(예: cohere-rerank).
외부 데이터 소스 및 동기화
Dify는 단순한 파일 업로드를 넘어섭니다. 자동으로 동기화되는 외부 소스를 연결할 수 있습니다:
Notion
Notion 워크스페이스를 연결합니다. Dify가 페이지를 자동으로 동기화합니다. 팀 위키 및 문서에 이상적입니다.
웹 스크래핑
URL을 제공하면 Dify가 페이지를 가져와 인덱싱합니다. 공개 문서 사이트에 유용합니다.
커스텀 API
외부 지식 베이스 API를 통해 검색 플러그인을 구축합니다. 모든 데이터베이스 또는 독점 데이터 소스를 연결합니다.
API를 통한 파일 동기화
Dataset API를 통해 프로그래밍 방식으로 문서를 업로드하고 업데이트합니다. CMS 통합에 유용합니다.
자주 묻는 질문
Dify RAG란 무엇인가요?
RAG는 검색 증강 생성(Retrieval-Augmented Generation)의 약자입니다. Dify RAG를 사용하면 AI가 답변하기 전에 자체 문서, PDF 또는 데이터베이스를 검색할 수 있어 환각을 크게 줄이고 전문 질문에 대한 정확도를 높입니다.
Dify RAG는 어떤 파일 형식을 지원하나요?
Dify 지식 베이스는 PDF, Word(.docx), 일반 텍스트(.txt), Markdown(.md), HTML, CSV 파일을 지원합니다. API를 통해 외부 데이터 소스를 연결하거나 Notion과 동기화할 수도 있습니다.
Dify RAG는 어떻게 환각을 줄이나요?
LLM의 훈련 지식에만 의존하는 대신, Dify RAG는 문서에서 관련 텍스트 섹션을 검색하여 컨텍스트로 삽입합니다. 그러면 모델이 실제 데이터를 기반으로 답변합니다.
Dify RAG와 함께 작동하는 벡터 데이터베이스는 무엇인가요?
Dify는 여러 벡터 저장소를 지원합니다: 내장형(기본값, 설정 불필요), pgvector(PostgreSQL), Qdrant, Weaviate, Milvus, Pinecone. 대부분의 사용자에게 내장 저장소로 충분합니다.
RAG와 함께 Dify를 셀프 호스팅할 준비가 되셨나요?
Dify 셀프 호스팅은 데이터에 대한 완전한 제어권을 제공합니다 — 지식 베이스에 민감한 문서가 포함된 경우 매우 중요합니다. Hetzner에서 €3.79/월부터 자체 서버에서 Dify를 운영하거나 Elestio에서 5분 이내에 완전히 관리되는 인스턴스를 사용하세요.