Разбиение текста
Способ нарезать длинные документы на фрагменты (чанки) для эмбеддингов и RAG — пожалуй, самый важный архитектурный выбор в RAG-конвейере.
Наивный подход: фиксированный размер (256–512 токенов), возможно с перекрытием 10–20 %. Лучше — рекурсивный разделитель (сначала по \n\n, потом по \n, потом по точке и пробелам) и разбиение с учётом markdown/html (по заголовкам). Современные варианты: семантический чанкинг (резать там, где расстояние между эмбеддингами предложений велико), late chunking (Jina, 2024 — эмбеддинг всего документа, а эмбеддинги чанков получаются усреднением), агентный чанкинг (место разреза выбирает LLM). Contextual retrieval от Anthropic добавляет к каждому чанку краткое содержание.