Chunking

검색을 위한 청킹 전략 평가 청킹(chunking)은 AI 애플리케이션에서 문서를 검색용으로 처리할 때 일반적으로 사용되는 전처리 단계입니다. 청킹은 문서를 의미론적으로 적절한 정보 단위로 나누어 임베딩 기반 검색 및 대형 언어 모델(LLM) 처리에 적합하게 만듭니다.

최근 LLM의 컨텍스트 길이가 증가하면서 전체 문서나 텍스트 코퍼스를 컨텍스트 창에 삽입하는 것이 가능해졌지만, 실제로는 비효율적이며 모델의 집중력을 흐릴 수 있습니다. 대부분의 쿼리에 대해 텍스트 코퍼스의 일부만 관련이 있을 가능성이 높지만, 컨텍스트 창에 있는 모든 토큰은 매번 추론 시 처리됩니다. 이상적으로는, LLM이 각 쿼리에 대해 관련 토큰만 처리하면 되므로, AI 애플리케이션에서 검색 시스템의 주요 목표 중 하나는 해당 쿼리에 대해 관련 토큰만 식별하고 검색하는 것입니다.

MTEB와 같은 일반적인 벤치마크는 전통적인 정보 검색(IR) 접근 방식을 따르며, 검색 성능을 전체 문서의 관련성 기준으로 평가하기 때문에 청킹의 영향을 반영할 수 없습니다.

AI 애플리케이션에서는 쿼리와 관련된 모든 토큰이 하나 또는 여러 문서에 걸쳐 존재할 수 있습니다. 청크에는 관련 토큰과 무관한 토큰이 혼재할 수 있으며, 관련된 발췌 내용이 여러 청크에 나뉘어 있을 수도 있습니다.