청킹
chunking
뜻과 개념
긴 문서를 검색이나 모델 처리에 적합한 작은 단위로 나누는 작업입니다.
어떻게 작동하나요?
청킹은 긴 문서를 검색과 처리에 적합한 작은 구간으로 나누는 작업입니다. RAG에서는 필요한 구간만 찾아 모델에 전달하기 위해 사용합니다. 일정 글자 수로 자르는 방법, 문단과 제목 경계를 따르는 방법 등이 있으며 나누는 단위가 검색 결과의 의미에 영향을 줍니다.
왜 알아야 하나요?
너무 작은 구간은 주어와 조건을 잃고 너무 큰 구간은 무관한 내용이 많이 섞일 수 있습니다. 따라서 한 구간에 질문의 답과 필요한 조건이 함께 있는지가 중요합니다. 같은 문서라도 표, 코드, 서술형 본문에 맞는 처리 방식은 달라질 수 있습니다.
실무에서 적용하는 방법
실제 질문과 정답 위치를 준비한 뒤 크기와 중첩 범위를 바꿔 검색을 비교합니다. 각 구간에 문서 제목, 경로, 날짜를 메타데이터로 남깁니다. 표의 열 제목이나 예외 조건이 분리되지 않게 하고 접근 권한도 원본 문서와 함께 유지합니다.
실무에서는 이렇게 봅니다
환불 규정의 본문만 잘라 검색하면 신청 가능이라는 문장은 찾았지만 구매 후 7일 이내라는 조건을 놓칠 수 있습니다. 같은 구간에 조건을 포함하거나 상위 제목과 관련 구간을 함께 반환하도록 구성하면 이런 오해를 줄일 수 있습니다.
주의할 점
특정 토큰 수가 모든 문서의 정답은 아닙니다. 일부 도구는 글자 수로, 다른 도구는 토큰 수로 길이를 계산합니다. Late Chunking 연구는 특정 임베딩 처리 방식의 제안이므로 일반적인 문단 분할과 같은 작업이라고 설명하지 않습니다.
자주 묻는 질문
중첩을 크게 하면 더 정확한가요?
문맥을 보존하는 데 도움이 될 수 있지만 중복 결과와 저장 비용이 늘 수 있습니다. 필요한 조건이 이어지는지와 검색 결과가 반복되는지를 함께 평가합니다.
웹 글도 AI를 위해 짧게 잘라야 하나요?
읽는 사람에게 자연스러운 소제목과 완결된 문단을 제공하는 것이 우선입니다. 특정 외부 AI가 어떻게 분할하는지 알 수 없는 상태에서 임의의 길이만 맞출 필요는 없습니다.