llm-graph-builder: what it is, what problem it solves & why it's gaining traction
llm-graph-builder: what it is, what problem it solves & why it's gaining traction
What it solves
This project provides a way to transform unstructured data—such as PDFs, Word documents, text files, YouTube videos, and web pages—into a structured Knowledge Graph stored in Neo4j. It eliminates the manual effort of extracting entities and relationships from raw text to build a structured database.
How it works
The application uses Large Language Models (LLMs) and the LangChain framework to analyze unstructured input. It extracts nodes (entities), relationships, and their properties, then maps them into a Neo4j graph database. Users can define custom schemas to guide the extraction process or use existing ones. The system also supports vector embeddings for the data, allowing for hybrid search capabilities.
Who it’s for
It is designed for developers and data engineers who need to turn raw documents into queryable knowledge graphs for downstream AI applications, such as RAG (Retrieval-Augmented Generation) or complex data analysis.
Highlights
- Multi-source support: Imports data from local files, GCS, S3 buckets, YouTube, and web pages.
- Broad LLM compatibility: Supports a wide range of providers including OpenAI, Gemini, Anthropic, Groq, Ollama (for local LLMs), and more.
- Conversational Interface: Includes a built-in chatbot to interact with the generated graph data using various chat modes (vector, graph, and hybrid).
- Visualization: Integrates with Neo4j Bloom for visualizing the resulting knowledge graphs.
- Usage Tracking: Built-in token usage monitoring for users and database connections.
Sources
- undefinedneo4j-labs/llm-graph-builder