The post has been translated automatically. Original language: Russian
In the previous article, GraphRAG Architecture: How Data Becomes Knowledge, we explored the Indexing Pipeline, where raw documents are transformed into a structured knowledge layer. Once that process is complete, GraphRAG moves to the Query (Retrieval) Pipeline, which uses this knowledge to answer user questions.
Let's follow the journey of a query through this pipeline.
1. Query Understanding
The retrieval process begins by analyzing the user's question. The system identifies important concepts, entities, and relationships mentioned in the query. At the same time, it generates an embedding of the question, allowing semantic matching even when different wording is used.
The goal of this stage is to transform a natural language question into a representation that the retrieval engine can efficiently search.
2. Finding Entry Points
Next, GraphRAG determines where to begin exploring the knowledge graph. Instead of searching only document embeddings, it can match multiple knowledge sources:
- entities stored in the graph;
- document chunks connected to those entities;
- semantic embeddings;
- keywords;
- metadata.
These matches become entry points for further graph traversal. Because the search starts from meaningful concepts rather than isolated text fragments, the retrieved context is usually much more focused than in traditional RAG.
3. Exploring Connected Knowledge
Once the entry points are found, GraphRAG begins traversing the graph: it follows relationships between entities to discover additional relevant information. This enables multi-hop retrieval, where the system connects facts that may originate from different documents.
For example, we have relations
- "Company A acquired Company B.",
- "Company B owns Product C."
Even if no document explicitly states that "Company A owns Product C", GraphRAG can discover this connection by following the relationships in the graph.
The traversal depth (the number of graph hops or relationships to follow) is configurable. In the example above, a depth of 2 is required to discover that Company A owns Product C. A shallow search (lower value of depth) is focused on nearby facts, while a deeper search can reveal less obvious relationships across the knowledge base.
4. Selecting the Most Relevant Context
Graph traversal often returns far more information than can fit into the LLM context window. Therefore, GraphRAG ranks and filters the retrieved knowledge, keeping only the most relevant entities, relationships, and supporting document chunks. This pruning (filtered) step reduces noise while preserving the information needed to answer the question accurately. The result is a compact, information-rich collection of entities, relationships, and supporting document chunks (subgraph).
5. Local Search vs Global Search
Depending on the type of question, GraphRAG can use different retrieval strategies.
Local Search is designed for questions about specific entities. For example:
- "Which suppliers provide components for Product X?"
The system retrieves the target entity together with its neighboring nodes, relationships, and supporting document passages. This produces detailed answers grounded in the local neighborhood of the graph.
Global Search addresses broader questions that span the entire knowledge base. For example:
- "Which suppliers are most critical across all products?"
In this case the system uses community summaries (saved summaries of closely connected groups of entities) created during indexing. The LLM combines these multiple summaries to produce a high-level overview that would be difficult to obtain with standard RAG.
Questions like this support strategic business decisions and well suited to GraphRAG's Global Search.
6. Context Assembly
The retrieved information must first be combined into a coherent context before it can be sent to the language model.
GraphRAG assembles the retrieved knowledge into a structured context that typically includes all found information:
- relevant entities (and, in many implementations, document chunks);
- relationships between those entities;
- supporting document excerpts;
- metadata and citations, when available.
Although the knowledge originates from a graph, the final output here is structured textual context grounded in the original documents.
7. Generating the Final Answer
The prepares (assembled) context is combined with the user's question to create the final prompt for the language model.
The LLM then generates an answer based on this evidence-rich context rather than relying only on its pre-trained knowledge. Because the retrieved information is grounded in the original documents, the model can reason over connected knowledge and the response is typically more accurate, explainable, and relevant to the user's query. Provide dcitations linking statements back to the original documents make answers more transparent and easier to verify.
Why Better Than Traditional RAG
After walking through the retrieval process, it becomes clear why GraphRAG is considered the next evolution of traditional RAG rather than a completely different approach:
- Richer context by combining entities, relationships, and document evidence.
- Multi-hop reasoning across multiple documents.
- Better answers to high-level questions through global search.
- Lower hallucination risk because responses are grounded in explicit knowledge connections.
- More efficient retrieval, often requiring fewer tokens by selecting a focused subgraph instead of many loosely related text chunks.
Ultimately, GraphRAG retrieves not just relevant documents—it retrieves connected knowledge. That structured context enables LLMs to produce answers that are more complete, explainable, and better grounded in the underlying data.
В предыдущей статье "Архитектура GraphRAG: Как данные становятся знаниями" мы рассмотрели конвейер индексации, в котором необработанные документы преобразуются в структурированные знания. Как только этот процесс завершен, GraphRAG переходит к извлечению (retrieve) - конвейеру обработки запроса, который использует эти знания для ответа на вопросы пользователей.
Давайте проследим за ходом запроса пользователя по этому конвейеру.
1. Понимание запроса
Процесс поиска начинается с анализа вопроса пользователя. Система идентифицирует важные понятия, сущности и взаимосвязи, упомянутые в запросе. В то же время она генерирует представление (embedding) вопроса, что позволяет обеспечить семантическое соответствие даже при использовании разных формулировок.
Цель этого этапа - преобразовать вопрос на естественном языке в представление, которое поисковая система может эффективно использовать для поиска.
2. Поиск точек входа
Далее GraphRAG определяет, с чего начать изучение графа знаний. Вместо поиска только документов и их представлений (embedding), он может сопоставлять несколько источников знаний:
- объекты, хранящиеся в графе;
- фрагменты документа (chunks), связанные с этими объектами;
- семантические вложения;
- ключевые слова;
- метаданные.
Эти совпадения становятся точками входа для дальнейшего обхода графика. Поскольку поиск начинается с осмысленных концепций, а не с разрозненных фрагментов текста, извлекаемый контекст обычно гораздо более сфокусирован, чем в традиционном RAG.
3. Изучение связанных знаний
Как только точки входа найдены, GraphRAG начинает обход графика: он отслеживает взаимосвязи между объектами, чтобы найти дополнительную релевантную информацию. Это позволяет выполнять поиск с несколькими переходами (multi-hop retrieval), когда система связывает факты, которые могут быть получены из разных документов.
Например, у нас есть отношения
- "Компания A приобрела компанию B.".,
- "Компания B владеет продуктом C."
Даже если ни в одном документе явно не указано, что "Компания A владеет продуктом C", GraphRAG может обнаружить эту связь, следуя соотношениям на графике.
Глубина обхода (количество переходов на графике или взаимосвязей, которым нужно следовать) настраивается. В приведенном выше примере требуется глубина, равная 2, чтобы обнаружить, что компания A владеет продуктом C. Поверхностный поиск (с меньшей глубиной значения) сосредоточен на близлежащих фактах, в то время как более глубокий поиск может выявить менее очевидные взаимосвязи в базе знаний.
4. Выбор наиболее релевантного контекста
Обход графика часто возвращает гораздо больше информации, чем может вместиться в контекстное окно LLM. Поэтому GraphRAG ранжирует и фильтрует полученные знания, сохраняя только наиболее релевантные сущности, взаимосвязи и фрагменты вспомогательных документов. Этот шаг сокращения (фильтрации) уменьшает количество помех, сохраняя при этом информацию, необходимую для точного ответа на вопрос. В результате получается компактная, богатая информацией коллекция объектов, связей и вспомогательных фрагментов документа (подграф).
5. Локальный поиск по сравнению с глобальным поиском
В зависимости от типа вопроса GraphRAG может использовать различные стратегии поиска.
Локальный поиск предназначен для вопросов о конкретных объектах. Например:
- "Какие поставщики поставляют компоненты для продукта X?"
Система извлекает целевой объект вместе с соседними узлами, взаимосвязями и вспомогательными фрагментами документов. Это позволяет получить подробные ответы, основанные на локальной окрестности графа.
Глобальный поиск позволяет найти ответы на более широкие вопросы, охватывающие всю базу знаний. Например:
- "Какие поставщики наиболее важны для всех продуктов?"
В этом случае система использует сводки сообщества (сохраненные сводки тесно связанных групп объектов), созданные во время индексации. LLM объединяет эти многочисленные сводки, чтобы создать обзор высокого уровня, который было бы сложно получить с помощью стандартного RAG.
Вопросы, подобные этому, помогают принимать стратегические бизнес-решения и хорошо подходят для глобального поиска GraphRAG.
6. Контекстная сборка
Полученная информация должна быть сначала объединена в единый контекст, прежде чем ее можно будет отправить в языковую модель.
GraphRAG объединяет полученные знания в структурированный контекст, который обычно включает всю найденную информацию:
- соответствующие объекты (и, во многих реализациях, фрагменты документов);
- отношения между этими объектами;
- выдержки из сопроводительных документов;
- метаданные и цитаты, если таковые имеются.
Несмотря на то, что информация основана на графике, конечным результатом является структурированный текстовый контекст, основанный на оригинальных документах.
7. Формирование окончательного ответа
Подготовленный контекст объединяется с вопросом пользователя, чтобы создать итоговую подсказку для языковой модели.
Затем LLM генерирует ответ на основе этого обогащенного богатого фактическими данными контекста, а не полагается только на свои знания, полученные во время тренировки. Поскольку контекст основан на исходных документах, модель может рассуждать, используя связанные знания, и ответ, как правило, получается более точным, объяснимым и соответствующим запросу пользователя. Предоставление ссылок на утверждения из исходных документами, делает ответы более прозрачными и простыми для проверки.
Почему GraphRAG лучше, чем традиционный RAG
После ознакомления с процессом обработки запроса пользователя становится ясно, почему GraphRAG считается следующей эволюцией традиционного RAG, а не совершенно другим подходом:
- Расширенный контекст за счет объединения сущностей, взаимосвязей и документальных подтверждений.
- Многоуровневые рассуждения по нескольким документам.
- Благодаря глобальному поиску получаются более точные ответы на вопросы высокого уровня.
- Снижается риск возникновения галлюцинаций, поскольку ответы основаны на явных связях между знаниями.
- Более эффективный поиск, часто требующий меньшего количества токенов, за счет выбора целенаправленного подграфа вместо множества слабо связанных фрагментов текста.
В конечном счете, GraphRAG извлекает не только релевантные документы, но и связанные знания. Такой структурированный контекст позволяет языковым моделям давать ответы, которые являются более полными, объяснимыми и лучше опираются на исходные данные.