개요
이는 일반적인 청크 트레이드오프를 제거하기 때문에 중요합니다. 작은 청크는 쿼리와 정확하게 일치하고 더 큰 상위는 모델에 올바르게 응답할 수 있는 충분한 컨텍스트를 제공합니다.
심층 분석
고정 크기 청킹은 절충안을 강제합니다. 예를 들어 몇 개의 문장과 같은 작은 덩어리는 날카로운 임베딩을 생성합니다. 벡터는 하나의 아이디어를 나타내므로 해당 아이디어에 대한 쿼리가 이와 밀접하게 일치합니다. 그러나 두 문장으로 구성된 덩어리에는 모델이 잘 대답할 만큼 충분한 컨텍스트가 포함되는 경우가 거의 없습니다. 세 문단 앞의 정의나 다음 문장의 예외를 생략할 수 있습니다. 큰 청크는 해당 컨텍스트를 전달하지만 임베딩으로 인해 여러 아이디어가 모호해지기 때문에 검색의 정확성이 떨어지고 관련 구절이 단지 주제에 관한 청크에 의해 압도될 수 있습니다. 소규모에서 대규모 검색은 두 작업을 분할합니다. 시스템은 검색을 위해 작은 하위 청크를 색인화하고 각 하위는 섹션, 페이지 또는 전체 문서와 같은 더 큰 상위에 대한 포인터를 유지합니다. 쿼리 시 가장 좋은 자식을 찾은 다음 해당 부모를 찾아 반환합니다. 여러 하위 항목이 하나의 상위 항목을 공유하는 경우 상위 항목이 한 번 전송되며 중복 항목도 제거됩니다. LangChain의 ParentDocumentRetriever는 하위 항목을 위한 벡터 저장소와 상위 항목을 위한 별도의 문서 저장소를 사용하여 이를 구현합니다. LlamaIndex는 일치하는 문장과 고정된 수의 인접 문장을 반환하는 문장 창 검색, 검색된 많은 리프 청크가 충분히 일치할 때 공유 상위 노드로 대체하는 자동 병합 검색과 같은 관련 패턴을 제공합니다. 이 접근 방식은 의미가 주변 섹션에 따라 달라지는 매뉴얼, 계약서, 정책 및 교과서와 같은 구조화된 문서에서 고정 크기 청크를 능가하는 경향이 있습니다. 문서가 이미 짧거나 상위 항목이 너무 커서 그 중 일부가 컨텍스트 창을 넘치거나 관련 없는 텍스트에 답변이 묻어 있는 경우에는 도움이 되지 않습니다. 일반적인 오해는 이것이 더 큰 청크를 사용한다는 것입니다. 그렇지 않습니다. 검색 단위와 생성 단위는 의도적으로 다른 크기이므로 컨텍스트 모델을 손상시키지 않고 정확한 일치를 유지합니다.
전략적 영향
비용 및 예산
아키텍처 결정은 수년 동안 성능과 운영 비용을 결정합니다.
더 명확한 결정들
기술 교육은 팀이 최신 스택뿐만 아니라 올바른 스택을 선택하는 데 도움이 됩니다.
품질 관리
더 나은 엔지니어링 선택은 생산 시 신뢰성 사고를 줄입니다.
상위 문서와 소규모 검색의 미래
Small-to-big은 트릭이 아닌 기본값이 되고 있으며, 주요 프레임워크는 이미 계층적 또는 창형 검색을 구성 옵션으로 공개하고 있습니다. 컨텍스트 창이 클수록 더 큰 부모를 보내는 데 따른 페널티가 줄어들어 패턴을 채택하는 것이 더 저렴해집니다. 예를 들어 제목에 의존하는 대신 문서 레이아웃 분석이나 학습된 분할을 사용하는 등 상위 경계를 자동으로 선택하는 방법에 대해서는 아직 공개된 질문이 남아 있습니다. 이는 인덱싱 시 작은 덩어리에 주변 환경에 대한 인식을 제공하려는 상황별 임베딩 접근 방식 및 리랭커와 점점 더 결합되고 있습니다. 일반적인 벤치마크 대신 자신의 문서를 테스트하는 것이 하위 및 상위 크기를 선택하는 신뢰할 수 있는 방법입니다.
실제 구현
내부 IT 도움말 봇은 각 문제 해결 단계를 별도의 하위 청크로 인덱싱하지만 단계가 일치하면 전체 절차를 반환하므로 모델은 사용자에게 1~3단계 없이 4단계를 수행하라고 지시하지 않습니다.
법률 조사 도구는 종료 통지 기간에 대한 단일 조항을 일치시킨 다음 해당 조항의 의미를 변경하는 정의 및 예외를 포함하여 전체 계약 섹션을 모델에 전달합니다.
대학 과정 조교는 강의 노트에서 문장 수준의 덩어리를 검색하고 주변 페이지를 반환하므로 공식에 대한 답변에는 해당 공식이 적용되는 조건도 포함됩니다.
보험 청구 도우미는 하나의 정책 문서에서 여러 개의 작은 일치 항목을 검색하고 이를 상위별로 그룹화한 다음 5개의 겹치는 조각 대신 해당 정책 섹션을 한 번 보냅니다.
위험 및 가드레일
하나의 벤치마크를 최적화하면 더 광범위한 시스템 약점을 숨길 수 있습니다.
인프라 및 유지 관리 비용은 종종 과소평가됩니다.
시스템이 더욱 복잡해짐에 따라 보안 및 관찰 가능성의 격차가 커질 수 있습니다.
구현 로드맵
구현하기 전에 지연 시간, 품질, 비용 목표를 정의하세요.
현실적인 로드 및 데이터 조건에서 벤치마킹합니다.
오류, 드리프트 및 사용자 영향에 대한 계측기 모니터링.
확장하기 전에 롤백 및 사고 대응 경로를 준비하세요.
계속 탐색하세요
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Parent Document and Small-to-Big Retrieval quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
자주 묻는 질문
상위 문서 및 소규모 검색이란 무엇입니까?
작은 크기에서 큰 크기로 검색이라고도 하는 상위 문서 검색은 작고 정확한 텍스트 덩어리를 검색하지만 각 덩어리가 나온 더 큰 섹션이나 문서를 언어 모델에 전달합니다. 이는 일반적인 청크 트레이드오프를 제거하기 때문에 중요합니다. 작은 청크는 쿼리와 정확하게 일치하고 더 큰 상위는 모델에 올바르게 응답할 수 있는 충분한 컨텍스트를 제공합니다.
소규모 검색에서 대규모 검색으로 해결되는 핵심 균형은 무엇입니까?
작은 청크는 집중된 임베딩을 제공하지만 컨텍스트가 너무 적습니다. 큰 덩어리는 맥락을 제공하지만 임베딩이 흐릿합니다. 작은 규모에서 큰 규모로 검색하면 두 가지 모두를 얻기 위해 작게 검색하고 크게 반환합니다.
소규모부터 대규모까지의 시스템에서 쿼리 시 무엇이 포함되고 검색되나요?
하위 항목은 정확한 일치를 위해 색인화됩니다. 부모는 자녀가 일치한 후에만 조회됩니다.
검색된 세 개의 하위 청크가 모두 동일한 상위 섹션에 속하는 경우 시스템은 어떻게 해야 합니까?
상위 항목별로 그룹화하면 섹션이 한 번 포함되어 토큰이 저장되고 중복 조각이 제거됩니다.
LangChain의 ParentDocumentRetriever는 두 가지 수준의 텍스트를 어떻게 저장합니까?
아이들은 검색을 위해 벡터 저장소에 삽입되고, 부모는 문서 저장소에 앉아 ID를 통해 가져옵니다.
문장 창 검색은 무엇을 반환합니까?
문장 창 검색은 문장 수준에서 일치한 다음 주변 문장의 창으로 확장하여 컨텍스트를 제공합니다.
계속 학습하세요
관련 가이드
이 주제에 대해 선택된 추가 가이드