35.9k stars · MIT · v3.1.2 (2026-08-21)
Builds a knowledge graph from text, clusters it into nested communities, writes a summary for each level.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A pipeline that uses an LLM to pull entities and relationships out of text, assembles them into a knowledge graph, clusters that graph into nested communities, and writes a readable summary for each community at several levels of zoom. It then answers questions using those summaries.
Why it matters
Read that description again with Grasppy in mind: a large body of text collapses into nested clusters, each with a generated title and summary a user can expand. That is your product, described by Microsoft's research team. It also gives you two things plain search never can — an entity graph for a "who and what is discussed here" view, and a defensible answer to "summarise this entire 500-message thread." Worth studying even if you never ship it, because its community-hierarchy step is the strongest published reference for the thing you're building.
- Produces the hierarchy and the human-readable summaries in one run
- Global whole-corpus query mode is genuinely differentiating
- MIT, Microsoft-maintained, released again on the day of this report
- Expensive — indexing one long document can mean thousands of LLM calls, so every import has a real cost
- Operationally the heaviest thing on this page: config files, parquet artifacts, long-running jobs
- Overkill for short chats; you'd need a cheap fallback path for small inputs
Run indexing as a queued FastAPI job per document, persist the community tree and summaries in PostgreSQL, then expose the community levels as expandable nodes in the React Flow canvas from #9.
