RAGFlow 데이터셋 구성 — 청킹·임베딩·파싱
RAGFlow 데이터셋 구성 — 청킹·임베딩·파싱
RAGFlow의 채팅 어시스턴트와 에이전트는 대부분 데이터셋에 기반해요. 데이터셋은 로컬에서 업로드한 파일과 RAGFlow 파일 시스템에서 만들어진 파일 참조를 파싱해 실제 '지식'으로 만드는 지식 소스예요. 데이터셋을 여러 개 두면 더 유연하고 다양한 질의응답을 만들 수 있습니다.
청킹 방법(Template) 선택
RAGFlow는 파일 레이아웃과 형식에 맞는 여러 가지 내장 청킹 템플릿을 제공해요. Parse type 아래 Built-in 청킹 방법 드롭다운에서 파일 형식에 맞는 기본 템플릿을 고르면 됩니다.
| Template | Description | File format |
|---|---|---|
| General | 파일을 설정된 청크 토큰 수 기준으로 연속 청킹 | MD, MDX, DOCX, XLSX, XLS, PPT, PDF, TXT, JPEG, JPG, PNG, TIF, GIF, CSV, JSON, EML, HTML |
| Q&A | 관련 정보를 찾아 질문에 답하는 답변 생성 | XLSX, XLS, CSV/TXT |
| Resume | Enterprise 에디션 전용 (cloud.ragflow.io에서 시도 가능) | DOCX, PDF, TXT |
| Manual | ||
| Table | TSI 기술로 표를 효율적으로 파싱 | XLSX, XLS, CSV/TXT |
| Paper | ||
| Book | DOCX, PDF, TXT | |
| Laws | DOCX, PDF, TXT | |
| Presentation | PDF, PPTX | |
| Picture | JPEG, JPG, PNG, TIF, GIF | |
| One | 문서 전체를 하나의 청크로 | DOCX, XLSX, XLS, PDF, TXT |
| Tag | 다른 데이터셋의 태그 집합으로 동작 | XLSX, CSV/TXT |
개별 파일에 대해서도 Files 페이지에서 청킹 방법을 다르게 지정할 수 있어요.
임베딩 모델 선택
임베딩 모델은 청크를 임베딩으로 바꿔줘요. 데이터셋에 청크가 생기면 바꿀 수 없습니다. 임베딩 모델을 바꾸려면 데이터셋의 기존 청크를 전부 삭제해야 해요. 같은 임베딩 공간에서 비교되도록 반드시 같은 모델을 써야 하기 때문이죠. 언어에 최적화된 모델이 따로 있으니 다른 언어 문서에 쓰면 성능이 저하될 수 있다는 점도 유의하세요.
파일 업로드
- RAGFlow의 파일 시스템(File system) 은 하나의 파일을 여러 데이터셋에 연결할 수 있어요. 이때 각 대상 데이터셋은 파일의 참조만 들고 있습니다.
- Knowledge Base 에서 로컬 파일 하나 또는 폴더(일괄 업로드)를 데이터셋에 직접 업로드할 수도 있는데, 이 경우 데이터셋이 파일 복사본을 보관해요.
직접 업로드가 겉보기엔 편해 보여도, 파일 시스템에 올린 뒤 데이터셋에 연결하는 방식을 권장해요. 이렇게 하면 데이터셋에 직접 업로드한 파일이 영구 삭제되는 일을 피할 수 있습니다.
파일 파싱과 개입
파일 파싱의 의미는 두 가지예요. 파일 레이아웃에 기반한 청킹 과 이 청킹에 대한 임베딩·풀텍스트(키워드) 인덱스 구축 입니다. 파싱이 끝난 파일을 클릭하면 Chunk 페이지에서 청크 결과를 볼 수 있고, 청크 텍스트를 더블클릭해 키워드·질문·태그를 추가하거나 수동 수정할 수 있어요. 청크에 키워드를 추가하면 해당 키워드 검색에서 정렬 가중치가 올라가 검색 순위가 좋아질 수 있습니다.
검색 파라미터 조정
RAGFlow는 채팅에서 풀텍스트 검색과 벡터 검색의 다중 리콜(multiple recall)을 사용해요. AI 채팅 전에 다음 파라미터를 조절해 원하는 정보가 항상 답에 포함되게 하는 것이 좋아요.
- Similarity threshold(기본 0.2): 이 값보다 유사도가 낮은 청크는 필터링돼요.
- Vector similarity weight(기본 0.3): 전체 점수에서 벡터 유사도가 차지하는 비율이에요.
Retrieval testing 에서 Test text로 질문을 던져 구성이 제대로 됐는지, 진실된 인용이 나오는지 미리 확인할 수 있습니다.
데이터셋 검색과 삭제
현재(v0.26.4 기준) 검색 기능은 이름 기준의 초기 형태만 지원해요. 데이터셋을 삭제하면 root/.knowledge 아래 연결된 폴더가 자동 제거돼요. 데이터셋에 직접 업로드한 파일은 사라지고, 파일 시스템에서 만들었던 참조도 사라지지만 연결된 원본 파일 자체는 남아 있습니다.
더 알아보기
- 서버 구동과 첫 데이터셋은 Quickstart 참고
- 커스텀 처리 흐름은 Ingestion pipeline 참고
- 검색 파라미터 상세는 Run retrieval test 참고