Гармония графов и алгоритмов RAG для комплексного анализа текстов.
Компания Microsoft сделала важный шаг в развитии технологий обработки естественного языка, представив широкой публике GraphRAG — инновационный метод анализа и генерации текстовой информации, основанный на графовом подходе к генерации с дополненным извлечением (RAG). Теперь он доступен на платформе GitHub, что открывает новые возможности для разработчиков и исследователей.
GraphRAG значительно улучшает традиционные методы RAG. Он предлагает более упорядоченный способ извлечения информации и создания полных ответов. В основе GraphRAG лежит крупная языковая модель (LLM), которая автоматически создает подробную сеть знаний из любого набора текстов.
Главное преимущество GraphRAG — это его способность анализировать смысловую структуру текста еще до того, как пользователь задаст вопрос. Как это работает? Система находит группы тесно связанных по смыслу элементов, называемые «сообществами». Сообщества организованы в иерархию: от общих тем до конкретных подтем. Благодаря этому создается многоуровневый обзор всей информации.
GraphRAG особенно эффективен при ответах на «глобальные вопросы» — те, которые касаются всего набора данных целиком. Например, «Какие основные темы затрагиваются в этих текстах?». Обычные инструменты RAG с такими запросами справляются плохо. Они просто ищут части текста, похожие на вопрос, и составляют ответ из них. GraphRAG действует иначе: он анализирует всю информацию целиком.
Здесь работает подход «отображение-свертка» (map-reduce), сохраняя весь значимый контекст из общего массива данных:
Полнота: насколько детально охвачены все аспекты вопроса
Разнообразие: представлены ли различные точки зрения
Информативность: насколько ответ помогает в принятии решений
Результаты показали, что GraphRAG значительно превосходит стандартный RAG. При использовании сводок сообществ на любом уровне иерархии, GraphRAG давал более полные и разнообразные ответы в 70-80% случаев.
Особенно эффективным оказалось применение сводок сообществ среднего и низкого уровней. В этом случае GraphRAG не только превзошел метод простого обобщения исходного текста, но и оказался более экономичным. Он использовал всего 20-70% вычислительных ресурсов (токенов) на запрос.
Производительность GraphRAG оказалась сопоставимой с иерархическим обобщением исходного текста даже для сообществ самого высокого уровня, при этом требуя существенно меньше ресурсов — всего 2-3% токенов на запрос.
Выпуск GraphRAG сопровождается специальным ускорителем, предоставляющим удобный программный интерфейс (API) на платформе Azure. Это позволяет развернуть систему без написания кода всего за несколько кликов, делая передовую технологию доступной широкому кругу специалистов.
От классики до авангарда — наука во всех жанрах