GraphRAG (Graphs + Retrieval Augmented Generation) es un proyecto de código abierto desarrollado por Microsoft Research, un sistema modular de generación aumentada por recuperación basado en grafos. El proyecto combina la extracción de texto, el análisis de redes y la generación de resúmenes con indicaciones de modelos de lenguaje grandes, formando un sistema de extremo a extremo especializado en la comprensión profunda de conjuntos de datos de texto.
GraphRAG utiliza modelos de lenguaje grandes (LLM) para extraer automáticamente grafos de conocimiento ricos de cualquier colección de documentos de texto. Una de las características más interesantes de este índice de datos basado en grafos es su capacidad para informar la estructura semántica de los datos antes de cualquier consulta del usuario.
El sistema no solo extrae entidades y relaciones, sino que también construye jerarquías de comunidades, genera resúmenes de estas comunidades y luego utiliza estas estructuras al realizar tareas basadas en RAG.
Al crear un grafo de conocimiento basado en el corpus de entrada, GraphRAG mejora enormemente la parte de "recuperación" de RAG, llenando la ventana de contexto con contenido de mayor relevancia, lo que resulta en mejores respuestas y captura de fuentes de evidencia.
El proyecto GraphRAG es una tubería de datos y un conjunto de transformación, diseñado específicamente para aprovechar el poder de los modelos de lenguaje grandes para extraer datos estructurados significativos de texto no estructurado.
El proyecto proporciona una interfaz de línea de comandos (CLI) y una solución de acelerador GraphRAG, lo que simplifica la experiencia del desarrollador y del usuario.
GraphRAG crea múltiples productos de salida para almacenar el modelo de conocimiento indexado, y estos productos se actualizarán e iterarán continuamente en futuras versiones.
GraphRAG es particularmente adecuado para escenarios que requieren el descubrimiento de patrones y relaciones complejos a partir de grandes cantidades de datos de texto, y es capaz de responder preguntas globales que los sistemas RAG tradicionales tienen dificultades para manejar.
Para conjuntos de datos privados que contienen contenido narrativo rico, GraphRAG puede desbloquear la capacidad de descubrimiento de LLM en estos datos.
El sistema puede generar preguntas de investigación, optimizar bases de conocimiento, mejorar las indicaciones del usuario y crear herramientas que mejoren la inteligencia de los agentes de IA.
El proyecto proporciona una opción simple para instalar desde PyPI, que incluye un ejemplo completo de extremo a extremo que muestra cómo usar el sistema para indexar texto y usar datos indexados para responder preguntas sobre documentos.
graphrag init
..env
y settings.yaml
.El sistema admite la entrada de múltiples formatos de texto, es capaz de procesar colecciones de documentos a gran escala y establecer los grafos de conocimiento correspondientes.
Como proyecto de código abierto, GraphRAG promueve la colaboración y el desarrollo en tecnologías RAG mejoradas con grafos entre la academia y la industria.
Microsoft GraphRAG representa un avance importante en la tecnología de generación aumentada por recuperación, mejorando significativamente las capacidades de los sistemas de comprensión de texto y respuesta a preguntas al combinar grafos de conocimiento con modelos de lenguaje grandes. No es solo una herramienta técnica, sino también un hito importante en el avance de la IA en el campo del análisis de texto complejo.