Чанкинг — это процесс разбиения длинных документов на небольшие фрагменты (чанки), чтобы их можно было эффективно индексировать и искать в системах RAG.
Языковая модель не может обработать книгу целиком за один запрос — не хватит контекстного окна. Да и искать ответ в целой книге неэффективно. Поэтому документы нарезают на чанки:
| Стратегия | Описание | Когда использовать |
|---|---|---|
| По количеству символов | Фиксированный размер, например 500 символов | Простые тексты |
| По предложениям | Каждое предложение — отдельный чанк | Короткие FAQ |
| По абзацам | Разделение по пустым строкам | Структурированные документы |
| По заголовкам | Разбиение по разделам документа | Техническая документация |
| С перекрытием | Чанки пересекаются на 10-20% | Когда контекст теряется на стыках |
Слишком маленькие чанки теряют контекст — как вырванное из текста предложение. Слишком большие чанки размывают поиск — среди лишней информации сложнее найти точный ответ. Оптимальный размер обычно подбирается экспериментально.