Доклад фокусируется на архитектурных решениях для RAG-систем, где чанкинг становится узким местом при масштабировании. Рассматриваются 10 стратегий оптимизации, их комбинации и интеграция с Weaviate, Qwen и Llama.
Решаемые проблемы:
* high latency при индексировании больших данных (PDF, код, таблицы);
* потеря контекста из-за неадаптивного разделения текста;
* сложности балансировки между скоростью (throughput) и точностью (recall).
Ключевые стратегии чанкинга:
- Fixed-Size: делит текст на чанки фиксированного размера (например, 4 слова);
- Sentence-Based: разбивает текст на чанки по предложениям;
- Semantic-Based: группирует предложения по семантической схожести, объединяя их в чанки;
- Recursive: делит документ на чанки, рекурсивно разбивая их до выполнения условий (например, минимальный размер);
- Sliding Window: создает чанки с перекрытием, сдвигая окно на заданный шаг;
- Hierarchical: организует чанки по иерархической структуре документа (например, заголовки, абзацы);
- Topic-Based: группирует предложения в чанки на основе тем, определенных с помощью тематического моделирования;
- Modality-Specific: разбивает документ на чанки в зависимости от типа контента (текст, изображения, таблицы);
- Agentic: использует агента для принятия решений о стратегии разбиения и создания чанков;
- Hybrid Approach: комбинация NLTK-статистик и нейросетевых моделей.
Архитектурные инновации:
* интеграция Weaviate как векторной БД с поддержкой мультимодальности и гибридного поиска;
* оптимизация пайплайнов через LangChain и LlamaIndex для работы с Qwen и Llama;
* кэширование чанков и эмбеддингов в Redis для снижения задержек.
Результаты:
- ускорение индексирования в 2 раза (с 10 сек./док. до 5 сек./док.) при обработке 50K PDF-документов;
- повышение recall на 12% в тестах с медицинскими отчетами;
- снижение стоимости инференса Llama/Qwen за счет уменьшения избыточных чанков.