Habr AI→ original

Microsoft GraphRAG y Ollama: cómo se desempeñó el RAG basado en grafos en modelos locales

Se ha publicado un análisis práctico de Microsoft GraphRAG combinado con Ollama y LLMs locales. El autor construyó un grafo de conocimiento a partir de…

Procesado por IA desde Habr AI; editado por Hamidun News
Microsoft GraphRAG y Ollama: cómo se desempeñó el RAG basado en grafos en modelos locales
Fuente: Habr AI. Collage: Hamidun News.
◐ Escuchar artículo

Ha surgido un análisis detallado de Microsoft GraphRAG en conjunto con Ollama y LLMs locales. El autor probó si es posible implementar RAG basado en grafos sin infraestructura cara, y ejecutó el sistema en el cuento "Johnny Mnemonic" de William Gibson para evaluar la calidad de las respuestas usando material cyberpunk familiar.

Cómo se configuró la prueba

El experimento se centró en una cuestión práctica: ¿puede el enfoque basado en grafos realmente reemplazar la búsqueda vectorial convencional en sistemas RAG corporativos? Para verificarlo, el autor eligió Microsoft GraphRAG, ejecución local a través de Ollama, y un texto de aproximadamente 38.000 palabras.

El resultado fue no solo un índice para la búsqueda, sino también un grafo de conocimiento completo con entidades, relaciones y comunidades. La visualización a través de Gephi mostró que el sistema puede ensamblar una estructura bastante rica a partir de un único texto de ficción. Es importante notar que GraphRAG forma no solo conexiones literales entre objetos, sino también clústeres temáticos.

En los informes, las comunidades se agrupaban alrededor de la Yakuza, Johnny, Molly Millions y otros elementos clave de la trama. Sin embargo, también surgieron limitaciones típicas: las entidades no siempre se fusionan si los nombres difieren en forma, por lo que algunos duplicados tienen que contabilizarse por separado. Para respuestas en ruso, el autor ajustó los prompts del sistema, aunque recomienda hacer preguntas en inglés, de lo contrario la precisión disminuye.

"En resumen, funciona incluso en modelos 4B, aunque imperfectamente."

Cómo responde el sistema

La prueba comparó varios modos. Global search funciona en descripciones de comunidades usando lógica MapReduce y es más adecuado para preguntas sobre todo el corpus. Local search mezcla relaciones del grafo con fragmentos del texto original y resulta más útil cuando se analiza un personaje, objeto o episodio específico. También existe BASIC—búsqueda basada en chunks ordinaria—y DRIFT, un modo más intensivo en computación que se asemeja a query expansion e intenta expandir el contexto.

  • Global search recopiló los principales temas cyberpunk de la historia: fusión de tecnología y biología, ciudad distópica, conflictos corporativos e desigualdad tecnológica.
  • Local search proporcionó una respuesta más detallada sobre el personaje Jones y sus conexiones con Johnny, Molly y la Yakuza.
  • DRIFT search en la misma pregunta tardó alrededor de cuarenta minutos y no produjo un salto notable de calidad en comparación con el modo local.
  • BASIC sigue siendo un punto de control útil porque la búsqueda vectorial no desaparece dentro de GraphRAG.

De esto el autor extrae una conclusión práctica importante: en un producto real, sería necesario un agente separado o un enrutador que seleccione el tipo de búsqueda según la formulación de la pregunta e historial de solicitudes. De lo contrario, todos los modos tendrían que alternarse manualmente. Otro detalle—las respuestas de GraphRAG hacen referencia a human_readable_id de archivos parquet, así que para una interfaz de usuario estos enlaces necesitan ser adicionalmente descomprimidos y procesados. Esto transforma GraphRAG de simplesmente una herramienta de búsqueda en una capa que debe adaptarse a escenarios de usuario reales.

Dónde surgieron problemas

Con modelos locales, la situación resultó desigual. Mistral 7B de los ejemplos encontrados no podía manejar global search debido a problemas de salida JSON estructurada: las consultas map simplemente fallan. Gemma 3 en versiones 4B y 12B preservó las entidades principales pero simplificó el grafo y distorsionó hechos en algunos lugares, hasta el punto de que Jones se convirtió en una persona en lugar de un delfín.

La opción más viable, según el autor, fue Qwen3 14B. Para embeddings, se utilizó el modelo user-bge-m3, que funciona bien tanto en ruso como en inglés. También hay muchos matices de infraestructura.

GraphRAG depende de LiteLLM, y el autor específicamente advierte contra actualizar más allá de la versión 1.82.6, porque las versiones 1.

82.7 y 1.82.

8 fueron comprometidas. En combinación con Ollama, ocurre un error 404 falso al solicitar parámetros de modelo, y las llamadas largas pueden agotarse con timeouts de cola. Los embeddings se comportan aún peor: bge-m3 a través de Ollama a veces falla debido a la serialización de Inf y NaN, así que embedding tuvo que moverse a un proxy separado en HuggingFace.

Además necesitas editar manualmente settings.yaml, establecer api_base, tamaño de vector 1024 e habilitar graphml para visualización. Incluso en una máquina con 16 GB de GPU, indexar texto de este tamaño lleva más de una hora.

Qué significa esto

La conclusión principal del artículo es que Microsoft GraphRAG no parece ser un reemplazo directo para RAG vectorial convencional. Es más bien útil donde la profundidad de las relaciones semánticas importa más que la velocidad de respuesta: en análisis, sistemas expertos y colecciones complejas de documentos. Al mismo tiempo, el enfoque ya tiene una API, una aplicación de prueba y un camino claro hacia MVP. Pero para respuestas más relevantes, tienes que pagar con tiempo de indexación, fragilidad del pipeline y configuración notablemente más compleja en comparación con una base de datos vectorial ordinaria.

ZK
Hamidun News
Noticias de AI sin ruido. Selección editorial diaria de más de 400 fuentes. Producto de Zhemal Khamidun, Head of AI en Alpina Digital.

¿Quieres dejar de leer sobre IA y empezar a usarla?

AI News es un feed curado de noticias de IA. Hamidun Academy te enseña a usar la IA en tu trabajo.

¿Qué te parece?
Cargando comentarios…