Knowledge graph (typed-edge)
A representation of a knowledge base as entities connected by typed edges, as opposed to (or alongside) a flat collection of pages or vector chunks. Introduced to this wiki by gbrain, whose “self-wiring knowledge graph” is its distinguishing feature.
How GBrain does it
- Every page write extracts entity references from markdown wikilink / typed-link syntax and creates edges with zero LLM calls — pure pattern matching.
- Edges are typed:
attended,works_at,invested_in,founded,advises,mentions, … Multi-hop traversal answers questions like “who works at Acme?” or “what did Bob invest in this quarter?” that vector search alone cannot reach. - Framed as: “Vector search returns chunks that are semantically close. The graph returns chunks that are factually connected.” The graph is credited with GBrain’s +31.4-point P@5 lift over vector-only RAG (see retrieval-augmented-generation).
Relation to the rest of the wiki
This is a mechanized, scaled realization of associative-trails — Bush’s hand-built named trails (memex) become automatically-extracted typed edges. It is also what most distinguishes gbrain from the index-only llm-wiki pattern and from a pure-search tool like qmd.
Another build strategy (llm-wiki-agent)
llm-wiki-agent builds its graph in two passes: a deterministic pass turns every
wikilink into an EXTRACTED edge, then a semantic pass has the agent infer
implicit relationships as INFERRED (scored) or AMBIGUOUS edges. That sits between
GBrain’s zero-LLM typed extraction and fully manual linking.
Extracting from arbitrary documents (sift-kg)
sift-kg builds its graph from unstructured documents rather than from wikilinks: an
LLM extracts typed entities and relations (with confidence scores and source provenance)
into a NetworkX property graph. It’s the packaged, domain-agnostic instance of the
two-pass schema-then-populate approach, and its
deduplication is gated on human approval (the LLM proposes merges as DRAFT; a person
confirms/rejects) — the opposite end of the augment→automate axis from gbrain‘s
unattended dream-cycle dedup.
Co-occurrence as its own edge type (rahulnyk-knowledge-graph)
Every strategy above extracts asserted relations — a wikilink, an inferred link, a typed edge with a confidence score. rahulnyk-knowledge-graph adds a second, purely structural edge class beside them: concepts appearing in the same text chunk get a contextual proximity edge with its own weight (W2), which accumulates on the same pair as the LLM-extracted semantic edge (W1). Edge weight then means “how often and by how many routes did these co-occur,” not “how sure is the model.” Two side effects: provenance is structural (an edge is the chunk the concepts shared), and nodes are concepts rather than entities — “pleasant weather in Bangalore” rather than “Bangalore” — a deliberate refusal of NER that buys expressiveness and costs mergeability (entity-resolution).
Making the nodes line up (entity-resolution)
Extraction produces duplicates: “doctor” / “doctors” / “medical practitioner” as three nodes. Since the graph’s value is its joins, deduplication is load-bearing rather than housekeeping, and the builders here answer it differently — gbrain unattended in its dream cycle, sift-kg gated on human approval, rahulnyk-knowledge-graph not at all (and says so). Collected in entity-resolution.
Using the graph to answer global queries (graphrag)
Building the graph is half the loop; the other half is retrieval over it. GraphRAG (Edge et al., Microsoft 2024; Rust implementation graphrag-rs): after extracting the graph it runs Leiden community detection (graphrag-rs adds PageRank) and summarizes each community, so it can answer whole-corpus “what are the main themes?” questions that chunk-level vector search can’t. Where sift-kg and gbrain build the graph, GraphRAG is what you do with one — the coarse, corpus-sensemaking complement to the fine-grained factual-connection lift the typed graph already gives. LeanRAG (AAAI 2026) sharpens this: it adds explicit relations between the aggregated summary nodes (so the summary layer is itself a navigable graph, not disconnected “semantic islands”) and retrieves bottom-up along that structure rather than by flat similarity — making the graph’s topology, not just its nodes, part of retrieval.
Adding time — the temporal turn (temporal-knowledge-graph)
agent-memory-knowledge-graphs extends the typed graph with a time axis for persistent agent memory: a temporal-knowledge-graph records when each fact was true and when it was learned (bi-temporal modeling), so changing facts are time-bounded rather than overwritten. Built incrementally with graphiti (Zep) over Neo4j. This closes a gap neither GBrain’s static typed edges nor vector search address — temporal validity (which of two conflicting facts is true now) — and is framed as graphs “quietly replacing RAG” for agent systems.
A hand-curated forebear (roam-research)
roam-research made the personal knowledge graph mainstream — notes as nodes, bidirectional links as edges, with a Graph Overview. It’s the manual version of what gbrain auto-wires; its “Unlinked References” hint at the automated association the LLM systems deliver.
The formal schema layer — ontologies
A knowledge graph is built on top of an ontology: the ontology defines which concept types and relationship types exist in a domain (the grammar); the graph populates those slots with actual entities and facts (the data). ontologies-knowledge-graphs-ai (Mysore) shows LLMs can now draft ontology schemas from prose and then populate the graph in a constrained second pass — the schema limits what assertions the model can make, reducing hallucination. Same containment logic as agent-guardrails, applied to knowledge extraction instead of agent actions.
The modality assumption, made visible (rag-anything, added 2026-08-04)
Every system above builds its graph from text. That was never argued for; it was the shape of the
input everyone assumed. rag-anything breaks it by promoting images, tables and equations to
first-class graph entities and inferring cross-modal edges between them and the textual ones, with
document structure retained as explicit belongs_to chains rather than flattened into chunks.
The consequence for this page is a stage the corpus’s cost-and-accuracy arguments have never covered. Multimodal graph construction puts parsing fidelity — getting a table or an equation out of a PDF correctly — upstream of every retrieval decision, and RAG-Anything delegates it wholesale to an external parser (MinerU, with Docling and PaddleOCR as alternatives). Whatever that stage gets wrong is wrong in the graph, and no amount of retrieval design downstream recovers it. The cluster measures tokens and multi-hop accuracy; it has no measurement of extraction fidelity at all.
Related
gbrain · sift-kg · rahulnyk-knowledge-graph · entity-resolution · graphrag · graphrag-rs · leanrag · hipporag2 · lightrag · rag-anything · hkuds · graphrag-bench · temporal-knowledge-graph · graphiti · agent-memory-knowledge-graphs · llm-wiki-agent · roam-research · associative-trails · retrieval-augmented-generation · memex · ontology · ontologies-knowledge-graphs-ai