Case study · Product · Knowledge Graph RAG

Aurum — a knowledge graph of scripture

An AI study companion built on a semantic knowledge graph of the Bible. Aurum doesn't just answer questions — it navigates a map of meaning that emerged from the text itself, and cites its sources every step of the way.

Knowledge Graph ETLGraphRAGLouvain Communities DVC PipelinesProduct Design exploreaurum.com ↗
Aurum's study dashboard — reading plans, verse journeys, and AI conversation grounded in the graph.
01 The problem

Search finds verses. Understanding needs connections.

Every Bible app can find the word "faith." None of them can show you how faith, covenant, and redemption relate to each other across sixty-six books written over a thousand years — the connections are the understanding, and they've always lived in scholars' heads, not in software.

Generic AI chat doesn't solve this. An LLM freewheeling over sacred text invents things — and in matters of faith, an invented citation isn't a bug, it's a betrayal of trust. Whatever we built had to be grounded, citable, and structurally honest about where every answer came from.

02 What we built

A map of meaning, discovered — not authored.

Under Aurum sits a semantic knowledge graph built entirely from the text. No theologian drew the edges. No taxonomy was imported. The structure is latent in scripture itself — we built the pipeline that surfaces it.

Each node is a thematic cluster — a region of embedding space, named by an LLM. Each edge is a semantic relationship that survived statistical significance testing. Each color is a Louvain community — a "super-theme" like Covenant & Law or Redemption & Grace, discovered by the algorithm, not declared by us.

Live knowledge graph — 50 thematic clusters in 5 colored communities, connected by 210 semantic edges
The live graph: 50 thematic clusters, 210 edges, 5 communities — one connected component. Every edge emerged from cosine similarity between embeddings of free text.
31,098verse chunks ingested
3,446semantic chunks after merging
50 210concept nodes → significant edges
5Louvain super-theme communities
03 The pipeline

Five stages. Versioned, reproducible, defensible.

The whole ETL is DVC-managed — every stage is a versioned artifact, every parameter tracked, every result reproducible. This isn't a notebook demo; it's a pipeline you can rerun a year later and get the same graph.

Semantic chunking

Not verse-by-verse — 512-token chunks with 128-token overlap, respecting sentence boundaries. A character-length gate drops noise before anything is embedded.

Embedding

1536-dimension embeddings, batched with retry and cached — unchanged text is never re-embedded, so iteration stays cheap.

Clustering

K-Medoids over PCA-reduced space (100 components), cosine metric, k=50. Quality is measured, not assumed: silhouette ~0.52, Davies-Bouldin, per-cluster cohesion and separation — plus an LLM narrative per cluster. If the model can't name a cluster specifically, the cluster isn't real.

Graph construction

Edges are an ensemble: medoid similarity (0.2) + centroid similarity (0.3) + average pairwise similarity (0.5) — trust scales with sampling depth. A significance gate keeps an edge only if ≥30% of cross-cluster pairs clear the threshold, so a few outlier chunks can't fabricate a relationship. Max 10 edges per node — dense enough for community detection, sparse enough to mean something.

Communities & encoding

Louvain consensus across 10 runs finds the super-themes; betweenness centrality finds the bridge concepts that connect distant regions of meaning; node2vec encodes subgraphs for structural similarity search.

For high-stakes analysis, a weak or wrong edge is worse than no edge. Every edge in this graph passed a significance test.
04 Why it matters

What a graph gives you that vector search never will.

Discovery

A map before a query

Clustering reveals what the corpus is about — themes surface from the data and get named by the LLM before anyone asks a question. Vector search requires you to already know what you're looking for.

Traversal

Navigate between ideas

"What themes bridge covenant and grace?" is a graph question. High-betweenness nodes are the crossroads of the text — invisible to similarity search, obvious in the topology.

Structure

Compare shapes of meaning

Subgraphs can be encoded and compared. Two passages — or two corpora — with similar relational dynamics produce similar topologies, even with completely different vocabulary.

The same architecture, pointed at finance

Scripture today. Financial language tomorrow.

Nothing in this pipeline knows it's reading the Bible. It's an engine for discovering latent structure in any corpus where language carries signal — and financial language is exactly that. The graph doesn't have to be built from news alone, either: filings, earnings calls, analyst commentary, and structured market signals can all enrich the same graph.

  • Narrative detection — surface emergent market themes ("regional banking risk") before analysts label them
  • Hidden peer discovery — companies clustering around the same semantic regions are functional peers, whatever their sector code says
  • M&A intent signals — "exploring strategic alternatives" language clusters before announcements do
  • Risk propagation — watch risk vocabulary form connected regions before formal linkages are declared
  • Event impact mapping — embed a rate hike or bank failure, see which themes it lands in, propagate through the graph
  • Structured-signal enrichment — price, flow, and positioning data attached to nodes turns a text graph into a market graph

Have a corpus with latent structure?

We build the pipeline that finds it.

info@oandaconsult.com Next case study → agent-trustkit