GraphRAG и Vector RAG решают разные задачи поиска. Vector RAG разбивает документы на небольшие текстовые фрагменты, преобразует их во вложения и сохраняет в векторной базе данных. Когда пользователь задаёт вопрос, система преобразует его во вложение, находит наиболее похожие фрагменты и отправляет их в LLM для получения ответа. Этот метод прост, быстр и хорошо подходит для прямых фактологических вопросов. Однако он может испытывать трудности, когда требуется связать информацию из нескольких фрагментов — поскольку сохраняет смысл через вложения и текст, а не через явные сущности или отношения.
GraphRAG добавляет больше структуры: извлекает из документов сущности, отношения, утверждения и сообщества, строит график, который показывает, как связаны разные фрагменты информации. Это делает его удобным для вопросов, требующих многоступенчатых рассуждений и широкого понимания большого набора документов. Но его создание требует больше усилий и затрат — нужно строить графики, выявлять сообщества и обобщать данные.
На практике многие системы используют оба метода: векторный поиск быстро находит релевантный текст, а графический добавляет связный контекст и улучшает логику. Разница между методами особенно заметна во время запроса. Vector RAG выполняет поиск по сходству, а GraphRAG — по структуре и значению в совокупности. Гибридная система может сначала извлечь соответствующие фрагменты с помощью векторного поиска, а затем расширить контекст с помощью графических связей.
В статье есть практический раздел: в нём показано, как создать Vector RAG и GraphRAG на небольшом корпусе данных. Для этого используются Python, SentenceTransformers (для встраивания), FAISS (для векторного поиска) и NetworkX (для хранения и обхода графиков). Приведены примеры кода — от установки библиотек до тестирования поиска.
Также рассмотрены случаи, когда лучше использовать Vector RAG, GraphRAG или гибридный RAG. Vector RAG подходит для часто задаваемых вопросов, программных документов, руководств по эксплуатации, вспомогательных статей и т. д. GraphRAG полезен для анализа первопричин, проверки соответствия требованиям, расследований, анализа рисков и стратегических синтезов. Гибридный RAG оптимален, когда системе нужны и быстрый поиск, и глубокое обоснование — например, при работе со смешанными или стратегическими вопросами.
Авторы статьи проанализировали показатели производительности, стоимости и обслуживания для обоих методов. Например, индексация в Vector RAG дешевле и проще, а в GraphRAG требует больше действий (построение графиков, суммирование). Поиск в Vector RAG обычно быстрее, а в GraphRAG может быть медленнее из‑за обхода графа и извлечения сводок. Векторный RAG проще поддерживать в быстро меняющихся базах знаний, тогда как GraphRAG требует больше проверок качества — неправильные сущности или связи могут повлиять на ответы.
Кроме того, в материале описаны ограничения методов и способы устранения сбоев. Например, Vector RAG может извлекать семантически похожий, но не отвечающий на вопрос текст, если требуется анализ нескольких документов. GraphRAG рискует дать неполный или вводящий в заблуждение ответ, если базовый граф неполный или извлечение сущностей неточно. Также в статье есть раздел с часто задаваемыми вопросами и ответами на них.