Anonymous ACL Submission · Under Review

LatentGraphRAG

Overcoming the Missing-Edge Problem in Knowledge Graphs with Recursive Dense Retrieval

Anonymous ACL Submission
Scroll to explore
⚠️Motivation

The Problem with Static Knowledge Graphs

Traditional KG-based retrieval encodes knowledge as fixed, static edges between entities. Two critical failure modes make this brittle in practice.

Problem 1

⚠️Missing Edge

The awarded relation between Einstein and Nobel was never encoded in the graph. A query about his prize fails to traverse this gap.

born inlocated infieldMISSINGawardedEinsteinUlmGermanyPhysicsNobel

Information loss: Any relation not explicitly encoded as an edge is permanently inaccessible, no matter how relevant it may be.

Problem 2

⚠️Missing Node

The entity Ulm was never extracted into the graph. Any query about Einstein's birthplace hits a dead end.

fieldawardedEinsteinGermanyPhysicsNobel?Ulm

Entire subgraph lost: If an entity was not extracted during graph construction, all knowledge connected to it vanishes permanently.

Key takeaway: Static graphs are brittle. Any omission during construction is permanent. We need a retrieval approach that creates connections dynamically, on the fly, based on context.

↓  This is exactly what Latent Graph RAG does.

LatentGraphRAG builds on GRITHopper (Erker et al., 2026), the current state-of-the-art model for multi-hop dense retrieval, which iteratively refines a context-aware query representation without decomposing the question.

Multi-Hop Dense Retrieval with GRITHopper

At each hop, GRITHopper jointly encodes the query with all retrieved documents so far into a single context-aware dense vector. This vector is used to search the entire index via dot-product, retrieving the next most relevant document. Over multiple hops, this naturally forms a tree of retrieval paths over documents, which LatentGraphRAG then extends to knowledge graph memories as well.

Recursive Retrieval Loop

1
Input
Query
Where does the body of water by the city that shares a border with Elizabeth Berg's birthplace and Ohio River meet?
encode
2
Encoding
GritHopper

GRITHopper-7B

Multi-Hop Dense Embedder

Ready
3
Search Embedding Space
1
2
3
4
Hop 1/4

Tree Search over Documents

At each hop, the model expands b = 2 candidates. The blue path shows the expanding context, synchronized with the animation on the left.

Q

One path vs. many paths. The Recursive Retrieval Loop (left) and Similarity-Driven Connections (below) each trace a single retrieval chain. We can also expand b = 2 branches at every hop, building a tree search of candidate paths.

Similarity-Driven Connections

QQuery
DᵢRetrieved document
ctx = encode(Q, D₁…Dₙ)
Selected (highest sim)
sim strength
ctxQhop 1/4 · idle

We represent all potential connections to documents via cosine similarity. At each hop, the context vector ctx = encode(Q, D₁,…,Dₙ) (encoding the query together with all documents retrieved so far) is compared against every document d ∈ D:

∀ d ∈ D :sim(ctx, d)=ctx · d‖ctx‖ · ‖d‖∈ [0, 1]

Unlike static knowledge graphs with binary edges, documents remain softly activated, and a context-conditioned subgraph emerges dynamically as the ctx representation evolves.

This tree search works over documents. We can make retrieval even stronger by running the same search over a second index: verbalized knowledge from knowledge graphs.

How to Incorporate Knowledge Graphs?

The edges of a knowledge graph carry the knowledge: nodes are just endpoints. We extract edges as triplets, verbalize them into natural language, and add them to the index as searchable memories.

Knowledge Graph

Nodes are just labels. Edges carry the knowledge.

born inlocated infieldawardedbornEinsteinUlmGermanyPhysicsNobel1879

Edge → Triplet

Each edge expands to a (subject, relation, object) triplet.

born in
(Einstein, born_in, Ulm)
located in
(Ulm, located_in, Germany)
field
(Einstein, field, Physics)
awarded
(Einstein, awarded, Nobel)
born
(Einstein, born, 1879)
Awaiting edge extraction...

Verbalized Memories

Natural language sentences for GritHopper retrieval.

Einstein was born in Ulm.
Ulm is located in Germany.
Einstein worked in Physics.
Einstein won the Nobel Prize.
Einstein was born in 1879.
Awaiting verbalization...
1
Graph
2
Highlight Edges
3
Extract
4
Verbalize
5
Memories

Two indices, one retrieval system: the document index preserves all original context, while the memory index adds structured, relation-level signals. Running tree search over both and combining their scores is what the next section shows.

Dual Tree Search with Document–Memory Agreement

Both indices, documents and verbalized memories, are searched in parallel using the same GritHopper tree search. Documents found by both trees receive a score boost: the document–memory agreement signal. Memory results are mapped back to their source documents so all scores land on the same result set.

Document Tree

Binary tree search (b=2, depth=4)

Q112222333333334444444444444444

Memory Tree

Same structure over memories

Q112222333333334444444444444444
1
Tree Search
2
Map to Docs
3
Score Paths
4
Combine
5
Rank

LatentGraphRAG achieves a new state of the art across three multi-hop retrieval regimes: MuSiQue (depth-oriented Wikipedia QA), BrowseComp+ (noisy web-scale, 100K+ docs), and FanOutQA (width-oriented multi-document QA). We demonstrate that dense retrieval over verbalized relational memories consistently outperforms explicit graph traversal, and that fusing document and memory views via document–memory agreement yields complementary signals.

Recall@5 across three benchmarks. Scroll down to see how the method works and why each component contributes.

MuSiQue

Recall@5 · Depth-Oriented Wikipedia QA

Non-structure
Graph-enhanced
Ours

BrowseComp+

Recall@5 · Web-Scale Retrieval

FanOutQA

Recall@5 · Width-Oriented Multi-Doc QA

Retrieval-first seeding makes agents cheaper

A strong ranking is not only a better retriever — it is a cheaper agent. Injecting one LatentGraphRAG ranking as a one-shot seed into a fixed ReAct loop raises answer accuracy while cutting the searches the agent issues itself by 1.57× (5.64 3.60 calls per question, averaged over all three benchmarks). Because every additional tool call is another LLM invocation whose growing context must be held in the KV cache, this is where retrieval quality turns into serving cost.

Mean accuracy
38.8 → 47.5
no seed → LatentGraphRAG seed
Agent searches
5.64 → 3.60
1.57× fewer, same loop
vs. BrowseComp+ agent
4.8× fewer
17.31 → 3.60 calls

In-loop searches per question — BrowseComp+, reader Qwen3.5-122B

The injected seed itself is not counted as a tool call.

It is not one model

Mean over all three benchmarks, fixed judge.

ReaderNo seed+ LatentGraphRAGTools
Qwen3.5-9B41.247.92.200.96
Qwen3.5-27B41.9482.321.00
Qwen3.5-122B42.949.22.300.86

It is not our scaffold

The agent released with BrowseComp+, its own prompt, given each seed. Mean over all three benchmarks.

SeedMean accMean tools
No seed45.617.31
Qwen3-Emb seed50.010.72
HippoRAG 2 seed52.49.94
LatentGraphRAG seed52.69.06

Read the actual trajectories

Every run above is released in full — each reasoning step, each search, each retrieved document with its corpus id and gold label, and the judge's verdict, for all samples.

Browse trajectories

Ablation: How to Best Combine Documents and Memories?

We ablate how to best combine document and relational-memory indices. Document–memory agreement is strongest on MuSiQue R@10. Numbers verbatim from the paper's Table 1.

Joint index

Documents and verbalized memories in one index, expanded by a single tree.

MuSiQue R@576.14
MuSiQue R@1084.05
FanOutQA R@530.52
FanOutQA R@1040.66

Dual-tree + RRF

Two independent trees, fused by reciprocal rank without touching the scores.

MuSiQue R@579.64
MuSiQue R@1089.49
FanOutQA R@527.85
FanOutQA R@1038.82
Best on MuSiQue

MMR-Tree + Z-Agreement

Diversified memory expansion, fused by per-query score calibration across both views.

MuSiQue R@582.12
MuSiQue R@1090.02
FanOutQA R@533.22
FanOutQA R@1046.83
Solution

How LatentGraphRAG Resolves Incompleteness in Knowledge Graphs

At each hop, LatentGraphRAG performs a full dot-product search over the entire index. This is equivalent to computing the strength of every possible connection between the current context and every document or memory, all at once. There is no fixed graph schema: connections are discovered dynamically from the content.

⚠️Problem 1: Missing Edge
MISSEinsteinNobel

The "awarded" edge was absent in the graph, so the Nobel Prize query failed.

⚠️Problem 2: Missing Node
Einstein???

The Ulm entity was never extracted into the graph, making birthplace queries impossible.

What is in the context vector?

  • ·The original query
  • ·All retrieved documents so far (full text, no abstraction loss)
  • ·Verbalized KG memories (additive signal, not replacing documents)

Every entity in any document is always reachable, even if it was never extracted as a graph node. Documents cover what memories may miss.

Latent Graph: Full-Index Dot-Product Search

Every document is always reachable. Edge strength equals cosine similarity, computed fresh from the current context at each hop.

Einstein biographyD1Nobel Prize recordsD2Physics fundamentalsD3Ulm city historyD4German geographyD5ContextVector QAll documents scored simultaneously via dot-product
Scroll to animate...

Latent connections resolve the structural limitations. But how much of the gain comes from the documents themselves? The following upper-bound experiment answers this directly: we give the model perfect oracle triplets and ask whether documents still add value.

🔬Upper-Bound Analysis

Why Documents Help Even with Perfect Triplets

We test the theoretical upper bound: what if the knowledge graph were complete, containing every relevant fact as a gold triplet? Even then, adding documents brings further gains because abstraction loses context that documents preserve.

Creating Ground-Truth Triplets from Oracle Evidence

Multi-Hop Question

In which city was the scientist born who was awarded the Nobel Prize in 1921?

Inputs

Multi-Hop Question
Gold Passage 1
Gold Passage 2
Answer
+

Instruction:

Given a Multi-Hop Question, its Gold evidences and answer, create a coherent and complete Triplet-Chain answering the multi-hop question.

🤖
LLM

Triplet Chain

add to
index

Index with Gold Triplets

Will this solve retrieval?

Citation

BibTeX
@article{anonymous2026latentgraphrag,
  title={{LatentGraphRAG}: Overcoming the Missing-Edge Problem
         with Memory-Enriched Recursive Dense Retrieval},
  author={Anonymous ACL Submission},
  year={2026},
  url={#}
}