Home
Login

Sistema de geração aumentada por recuperação baseado em grafo de conhecimento, que extrai automaticamente grafos de conhecimento estruturados de texto por meio de LLM e aprimora o desempenho do RAG

MITPython 25.9kmicrosoft Last Updated: 2025-06-18

Microsoft GraphRAG: Detalhes do Projeto

Visão Geral do Projeto

GraphRAG (Graphs + Retrieval Augmented Generation) é um projeto de código aberto desenvolvido pela Microsoft Research, um sistema modular de geração aumentada por recuperação baseado em grafos. O projeto combina extração de texto, análise de rede e prompts de modelos de linguagem grandes com geração de resumos, formando um sistema de ponta a ponta especializado na compreensão profunda de conjuntos de dados de texto.

Principais Características Técnicas

1. Construção Automática de Grafos de Conhecimento

GraphRAG usa modelos de linguagem grandes (LLMs) para extrair automaticamente grafos de conhecimento ricos de qualquer coleção de documentos de texto. Uma das características mais interessantes deste índice de dados baseado em grafos é sua capacidade de relatar a estrutura semântica dos dados antes de qualquer consulta do usuário.

2. Detecção de Comunidades e Hierarquia

O sistema não apenas extrai entidades e relacionamentos, mas também constrói hierarquias de comunidades, gera resumos dessas comunidades e, em seguida, utiliza essas estruturas ao executar tarefas baseadas em RAG.

3. Capacidade de Recuperação Aprimorada

Ao criar um grafo de conhecimento baseado no corpus de entrada, o GraphRAG melhora significativamente a parte de "recuperação" do RAG, preenchendo a janela de contexto com conteúdo de maior relevância, resultando em melhores respostas e capturando fontes de evidência.

Principais Módulos Funcionais

Pipeline de Dados e Conjunto de Transformação

O projeto GraphRAG é um pipeline de dados e um conjunto de transformação, projetado especificamente para aproveitar o poder dos modelos de linguagem grandes para extrair dados estruturados significativos de texto não estruturado.

Sistema de Consulta

  • Pesquisa Global: Capacidade de responder a perguntas complexas que exigem conhecimento de todo o conjunto de dados.
  • Pesquisa Local: Consultas precisas para entidades ou conceitos específicos.
  • Comparação Vetorial RAG: Inclui uma implementação simples de RAG vetorial básico para facilitar a comparação dos resultados da pesquisa para diferentes tipos de perguntas.

CLI e Acelerador

O projeto oferece uma interface de linha de comando (CLI) e uma solução de acelerador GraphRAG, simplificando a experiência do desenvolvedor e do usuário.

Arquitetura Técnica

Fluxo Principal

  1. Extração de Texto: Extrai entidades e relacionamentos do texto bruto.
  2. Construção de Grafos: Converte as entidades e relacionamentos identificados em formato de grafo.
  3. Análise de Comunidades: Identifica estruturas de comunidade no grafo.
  4. Geração de Resumos: Gera resumos para as comunidades identificadas.
  5. Consulta Aprimorada: Utiliza essas estruturas para aprimorar os prompts durante a consulta.

Produtos de Saída

GraphRAG cria vários produtos de saída para armazenar o modelo de conhecimento indexado, e esses produtos serão continuamente atualizados e iterados em versões futuras.

Cenários de Aplicação

Descoberta de Dados Complexos

GraphRAG é particularmente adequado para cenários que exigem a descoberta de padrões e relacionamentos complexos a partir de grandes quantidades de dados de texto, sendo capaz de responder a perguntas globais que os sistemas RAG tradicionais têm dificuldade em lidar.

Dados Privados Narrativos

Para conjuntos de dados privados que contêm conteúdo narrativo rico, o GraphRAG pode desbloquear a capacidade de descoberta do LLM nesses dados.

Pesquisa e Análise

O sistema pode gerar questões de pesquisa, otimizar bases de conhecimento, melhorar prompts de usuário e criar ferramentas que aprimoram a inteligência de agentes de IA.

Instalação e Uso

Início Rápido

O projeto oferece uma opção simples de instalação a partir do PyPI, incluindo um exemplo completo de ponta a ponta que demonstra como usar o sistema para indexar texto e usar os dados indexados para responder a perguntas sobre o documento.

Requisitos de Configuração

  • A inicialização do espaço de trabalho requer a execução do comando graphrag init.
  • Crie os arquivos de configuração .env e settings.yaml.
  • É necessário configurar a chave da API LLM e os parâmetros relacionados.

Preparação de Dados

O sistema suporta a entrada de vários formatos de texto, sendo capaz de processar coleções de documentos em larga escala e construir os grafos de conhecimento correspondentes.

Vantagens Técnicas

Melhorias em Comparação com o RAG Tradicional

  • Melhor Compreensão do Contexto: Fornece informações de contexto mais ricas por meio de grafos de conhecimento.
  • Capacidade de Raciocínio Global: Capaz de responder a perguntas complexas que exigem a integração de informações de vários documentos.
  • Representação de Conhecimento Estruturado: Converte texto não estruturado em representação de conhecimento estruturado.
  • Explicabilidade: Fornece rastreabilidade das fontes de evidência e caminhos de raciocínio.

Ecossistema de Código Aberto

Como um projeto de código aberto, o GraphRAG promove a colaboração e o desenvolvimento na academia e na indústria em tecnologias RAG aprimoradas por grafos.

Conclusão

Microsoft GraphRAG representa um avanço importante na tecnologia de geração aumentada por recuperação, melhorando significativamente a capacidade de compreensão de texto e sistemas de perguntas e respostas, combinando grafos de conhecimento com modelos de linguagem grandes. Não é apenas uma ferramenta técnica, mas também um marco importante no avanço da IA no campo da análise de texto complexo.