RAG: точность и охват через семантику и графы
RAG: точность и охват через семантику и графы
Наивный RAG часто даёт узкие фрагменты и пропуски контекста. Семантический чанкинг устанавливает границы чанков по смысловой связности между предложениями: модели NLI или эмбеддинги оценивают, продолжает ли следующий фрагмент предыдущий, и при резком разрыве темы формируется новый чанк. Такое разделение не зависит от длины текста или форматирования, а опирается на смысловые связи; чанки можно затем объединять или разбивать по контексту задачи.
Гибридный поиск распределяет данные по нескольким полям (название, текст, описание) и каждому полю даёт свой векторный индекс; веса полей позволяют настраивать важность элементов задачи. Ансамблевые методы запускают несколько моделей и объединяют их результаты, чтобы компенсировать слабости отдельных участников. RAG-Fusion добавляет Reciprocal Rank Fusion и параллельные подзапросы, а Graph RAG строит граф знаний: чанки становятся узлами, формируются сообщества и сводки, на их основе языковая модель выстраивает итоговый, более целостный ответ.
Семантический чанкинг
Семантический чанкинг формирует границы чанков по смысловой связанности между соседними фрагментами, а не по длине текста или разметке. При этом могут применяться контекстуальные модели: эмбеддинги или модели логического вывода, например MoritzLaurer/mDeBERTa-v3-base-xnli-multilingual-nli-2mil7, чтобы оценивать, насколько следующий фрагмент естественно вытекает из предыдущего, противоречит ему или не имеет прямой смысловой связи. Если NLI-модель фиксирует резкий разрыв или переход к другой теме, граница чанка устанавливается на этом месте. Аналогично, с эмбеддингами и косинусной близостью: по мере снижения близости граница может сдвигаться.
Такой подход не зависит от объема текста или форматирования и позволяет формировать более цельные смысловые единицы. В результате формируются слитые чанки, сохраняющие общую нагрузку контекста, что особенно полезно для последующей валидации и поиска: модель опирается на связные фрагменты, а не на разрозненные части, что повышает точность извлечения и качество генерации ответа.
Схема
Смысловой чанкинг формирует границы чанков не по фиксированной длине, а по смысловой связанности между предложениями. Используются контекстуальные модели: эмбеддинги или модели логического вывода, например MoritzLaurer/mDeBERTa-v3-base-xnli-multilingual-nli-2mil7, чтобы оценивать, как следующий фрагмент естественно вытекает из предыдущего, противоречит ему или не имеет прямой связи. При резком логическом разрыве граница чанка может перемещаться. Аналогично работают эмбеддинги и косинусная близость. Границы устанавливаются там, где контекст теряет смысловую преемственность.
Соединение чанков происходит последовательно до достижения лимита, например 500 токенов; при превышении лимита начинается новый блок. В результате формируется набор слитых, смысловых фрагментов. Разные реализации семантического чанкинга описаны в открытых репозиториях.
Пример подхода
Пример подхода заключается в последовательном обходе документов: соседние фрагменты оцениваются на предмет логической связи с предыдущим. Если связь сохраняется, тексты объединяются в один чанк до достижения заданного лимита токенов (примерно 500). Такой подход сохраняет целостность темы и уменьшает риск потерять контекст в процессе агрегации.
Когда связь прерывается, новый фрагмент добавляется как отдельный чанковый блок. В реализациях применяются модели логического вывода или эмбеддинги с косинусной близостью для оценки связи. Это позволяет строить последовательность связанных чанков, где каждый следующий блок продолжает тему, не выходя за пределы лимита, и при этом сохраняет более точную смысловую нить для последующей генерации.
Гибридный поиск
Гибридный поиск — стратегия извлечения информации, при которой данные разбиваются на несколько смысловых полей, например названия документа, основной текст и краткое описание. Каждая колонка переводится в векторное пространство и может иметь свой собственный векторный индекс. Такой многоколоночный подход позволяет учитывать контекст и структуру данных более тонко, чем классический одноколончатый индекс, в котором тексты обрабатываются как единый набор. Одноколончатая схема удобна для простых случаев, но при более сложной структуре данных она может упускать важные детали.
На простейшем уровне реализуется схема вопрос-ответ: каждый векторный простор анализируется на соответствие заданному вопросу, после чего возвращается наиболее релевантный результат. В гибридном поиске значимость каждой колонки можно регулировать через весовые коэффициенты, что даёт возможность адаптировать алгоритм под конкретные задачи: если, например, критически важны заголовки, им можно придать больший вес. Это позволяет точнее учитывать структуру данных и достигать более точных и контекстно насыщенных результатов.
Схема
Гибридный поиск делит данные на несколько смысловых полей: заголовок, основной текст, краткое описание и т. п. Для каждого поля строится собственное векторное представление и отдельный индекс, что даёт независимую семантику каждого компонента.
Такой многополюсный подход позволяет учитывать структуру и контекст тоньше, чем единый монолитный индекс: заголовок выделяет ключевые термины, тело — развернутое содержание, аннотация — краткий смысл. В результате можно настраивать веса полей под задачу, повышать релевантность и точность ответа, особенно при сложном запросе или разнообразной аналитике.
Суть и применение
Суть одно-колоночной схемы состоит в том, что данные разбиваются на отдельные колонки, и для каждой из них выполняется поверхностная векторизация общего содержания. Такой подход достаточно для базовых сценариев: он быстро возвращает релевантные материалы по запросу без глубокого анализа взаимосвязей внутри документов. При усложнении структуры данных и необходимости многоуровневого анализа этот метод рискует упустить детали и контекст, который влияет на точность.
Наиболее простая реализация — вопрос-ответ: по каждому полю рассчитывается соответствие запроса, возвращаются релевантные кандидаты и затем агрегируются в единый набор. Важно, чтобы у полей была возможность задавать веса: более значимые колонки, например заголовки, получают больший вес при расчёте общего сходства, что повышает точность итогового ранжирования. В условиях быстрой выдачи такая схема обеспечивает прочную базу и позволяет переходить к более сложным методам при необходимости.
Реализация на практике
На практике данные разрезаются на несколько колонок векторного пространства: названия документов, основной текст, краткие описания. Каждый столбец индексируется отдельно, и для запроса строится соответствующий вектор и проводится сравнение с чанками из своего индекса, возвращая набор релевантности по каждому столбцу.
Результаты совмещаются в единый ранжированный список: внутри каждого источника вычисляется релевантность, затем применяются веса (например, w_title, w_text, w_desc) и баллы суммируются в общий показатель. Этот объединённый ранг подсказывает итоговый порядок документов. Правильная настройка весов и индексов обеспечивает баланс между охватом и точностью и адаптируется под задачу: увеличить роль заголовков для охвата или сместить акцент на текст для точности. Подбор весов можно вести через валидацию и динамически подстраивать под контекст.
Ансамблевые методы
Ансамблевые методы поиска в RAG заключаются в одновременном обращении к нескольким независимым моделям-извлекательным блокам. Каждая из моделей параллельно извлекает релевантные документы по запросу, при этом охват может включать мультиязычные тексты и данные с различными типами контента. Их результаты затем объединяются для последующей генерации ответа. За счёт такого объединения компенсируются слабости отдельных систем: разные модели лучше справляются с разными языками, стилями или источниками информации, а общая сборка снижает риск упущений.
Это позволяет достичь более широкого охвата и повышенной точности итогового результата. При формировании ответа языковая модель опирается на объединённый набор материалов, что особенно полезно при работе с мультимодальными данными и многоязычными запросами. В зависимости от задачи ансамблевые методы могут использовать разные источники и методы согласования результатов, адаптивно подбирая релевантность и полноту ответа.
Схема
Ансамблевые методы объединяют несколько независимых моделей: мультиязычные и мультимодальные источники параллельно обрабатывают запрос и извлекают релевантные документы из разных пулов. Каждая ветка системы специализируется на своем наборе данных и формате — одна может опираться на тексты на разных языках, другая — на изображения или таблицы — и выдает свой набор кандидатов. Затем результаты консолидируются: ранжируются, синхронизируются по контексту, противоречия разрешаются за счёт взвешенного объединения или голосования, формируя единый ответ. Такой подход компенсирует слабости отдельных моделей и расширяет охват за счёт разнообразия языков и форматов контента, повышая устойчивость и обеспечивая более всестороннее покрытие запроса.
Применение
Применение синергии результатов разных моделей позволяет получить устойчивый набор источников: каждый участник ансамбля возвращает свои релевантные фрагменты из разных источников, по разным признакам и в разных форматах. Объединение таких результатов снижает риск пропуска важных материалов, потому что пропавшее бы в одной модели может оказаться найденным в другой, особенно когда речь идёт о мультиязычных или мультимодальных данных. Консолидация разных точек зрения по одному запросу превращает разрозненные отрывки в более целостную картину и уменьшает влияние слабых сторон отдельных систем.
На практике это выражается в более точных итоговых ответах: финальная генерация опирается на обобщённое множество источников, учитывая контекст, стиль и цели запроса. Важные параметры — баланс между различными каналами (название, основной текст, аннотация), весовые коэффициенты для каждого модуля и способы ранжирования. Такой подход повышает устойчивость и надёжность выдачи, расширяет охват языков и форматов информации, что особенно ценно для аналитических задач и мультимодальных диалоговых систем.
RAG-Fusion
RAG-Fusion объединяет идеи классического RAG и алгоритма Reciprocal Rank Fusion (RRF). Он генерирует несколько переформулированных под-запросов из исходного запроса и использует их для извлечения релевантных документов через поисковый движок или векторный индекс, чтобы охватить разные ракурсы вопроса.
Затем результаты объединяются с помощью RRF: каждому документу в каждом списке присваивается балл, обратный его позиции, баллы суммируются, и документы сортируются по сумме. Так формируется объединённый набор материалов, где те, что встречаются в нескольких списках, имеют приоритет. Наконец этот набор документов вместе с исходным и под-запросами подаётся в большую языковую модель, которая формирует итоговый ответ, учитывая всю доступную информацию.
Схема
RAG-Fusion объединяет идею классического RAG с алгоритмом reciprocal rank fusion (RRF). Формируются несколько под-запросов, которые приводят к параллельному извлечению релевантных документов. В каждом списке документы ранжируются по обратной позиции, то есть по 1/позиции. Значения этих баллов суммируются по всем спискам, после чего получается сглаженная совокупность материалов. Эта агрегированная коллекция подается языковой модели, которая на её основе генерирует итоговый ответ.
Преимущества
Преимущество такого подхода состоит в увеличении охвата и устойчивости к рассеянию источников: материалы из разных списков выдачи дополняют друг друга, сокращая риск пропуска важной информации, когда данные распределены между несколькими системами или форматами. Гибридный поиск и многоколоночные индексы позволяют учитывать контекст из разных колонок — заголовка, основного текста, аннотации — и строить более полную картину.
Ансамблевые методы и RRF помогают компенсировать слабости отдельных моделей: если одна система плохо справляется с языком или типом данных, другая закрывает пробелы. В результате запросы получают более широкий охват и устойчивый к рассеянию контекст.
Graph RAG
Graph RAG дополняет базовый принцип RAG построением графа знаний по всему корпусу. Вместо одной монолитной векторной выборки текст разбивается на чанки, из них извлекаются сущности и отношения, затем они группируются в сообщества с помощью кластеризации (например, Лейденская). Для каждого сообщества формируются краткие сводки, фиксирующие смысловое содержание соответствующей части графа. В итоге информация иерархически сегментируется: языковая модель может «собирать» ответ, опираясь на сводки разных сообществ, а не на узкую выборку абзацев. При запросе модель параллельно генерирует промежуточные ответы по различным частям контекста, оценивает их релевантность и агрегирует в один финальный ответ, максимально охватывающий запрос.
Схема (упрощенная)
Упрощенная схема Graph RAG расширяет классический подход за счёт введения графа знаний, охватывающего весь корпус. Текст сначала разбивается на чанки, затем извлекаются сущности и отношения между ними; на их основе строится граф, который далее делится на сообщества с помощью кластеризации, например Leiden.
Для каждого сообщества формируются краткие сводки, фиксирующие смысловую нагрузку соответствующей части графа. Эти сводки образуют иерархическую карту знаний, на которую опирается языковая модель при формировании ответа, обеспечивая более широкий контекст и согласованность между различными темами.
По запросу
Во время ответа модель параллельно формирует набор промежуточных ответов, каждый из которых строится на сводках сообществ графа знаний. Эти сводки резюмируют соответствующие области, связи и контекст, создавая несколько перспектив на заданный запрос. Так формируются альтернативные трактовки вопроса: что именно важно, какие детали требуют уточнения, где лежит контекст. Это позволяет модели удерживать общий смысл, не зацикливаясь на отдельном источнике.
Затем система оценивает релевантность каждого вывода к запросу: выбираются те трактовки, которые наиболее полно отвечают на вопрос и дополняют друг друга. Наконец формируется ранжированный набор, а затем промежуточные ответы и соответствующие фрагменты сводок объединяются в единый итоговый текст. Итог синтезирован так, чтобы максимально полно отражать запрос пользователя, минимизируя дублирование и противоречия между источниками.
Заключение
RAG остаётся одной из самых мощных архитектур для сочетания поиска и генерации знаний. Однако наивная реализация часто ограничена по релевантности и охвату, особенно в сложных задачах. При этом применение семантического чанкинга, гибридного поиска, ансамблей и графовых структур открывает новые возможности: глубже анализировать данные, работать с несколькими языками и форматами, поддерживать многошаговое рассуждение. Внедрение таких подходов расширяет применения: от интеллектуальных диалоговых систем и бизнес-аналитики до рекомендательных сервисов, делая ответы моделей точнее, полезнее и всесторонне охватывающими запрос.