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.
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.
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.
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.
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.
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.
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.
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.
Para conjuntos de dados privados que contêm conteúdo narrativo rico, o GraphRAG pode desbloquear a capacidade de descoberta do LLM nesses dados.
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.
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.
graphrag init
..env
e settings.yaml
.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.
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.
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.