Compliance answers you can trace, clause by clause.

An enterprise multi-agent engine that reads Dodd-Frank and HIPAA as a graph, not a pile of paragraphs, then retrieves along the amendments and enforcement links that vector search cannot see.

AMENDS ENFORCES ENFORCES AMENDS AMENDS ENFORCES AMENDS ENFORCES AMENDS AMENDS ENFORCES Statute §619 Final Rule Exemption Definition Guidance Penalty §21 Safe Harbor Audit Rule cited: Safe Harbor
A question enters at one statute and resolves three hops away.

Statutes depend on each other. Vector search does not know that.

Compliance teams spend their days on multi-hop reasoning: a Dodd-Frank rule that amends a definition, which a HIPAA guidance then enforces under a different clause. Similarity search returns the nearest paragraph and drops the chain around it.

  • Multi-document dependencies are where vector-only retrieval breaks.
  • Hallucinated links appear exactly where the retrieved context is missing a hop.
34%

Vector-only RAG

Nearest-paragraph retrieval on multi-document statutory questions.

91%

Hybrid GraphRAG

Graph traversal fused with dense search, then reranked.

Figures are the project blueprint's benchmark claim and a design target, to be reproduced by the Ragas suite below. They are not measured production results.

Similarity finds passages that sound alike. Regulation is not written that way. One clause amends another, which enforces a third, and the real answer lives in the path between them. So the law is stored as a graph, retrieval walks its edges, and every sentence points back to the node it came from.

Five steps from a PDF to a cited answer.

01

Ingest the filing

PDF ingestion, asynchronous JSON parsing, then entity and clause extraction turn a regulatory filing into structured units.

  • PDF
  • async JSON
  • clause extraction
02

Store it twice

Dual ingestion writes labelled nodes to Neo4j with edges such as AMENDS and ENFORCES, and writes embeddings to Qdrant.

  • Neo4j
  • AMENDS
  • ENFORCES
  • Qdrant
03

Route the question

Query routing fans out into a dynamic Cypher traversal and a dense vector search that run side by side.

  • query router
  • Cypher
  • dense search
04

Fuse, then prioritise

Reciprocal Rank Fusion merges both result lists, and Cohere Rerank v3 decides which context the model sees first.

  • RRF
  • Cohere Rerank v3
05

Reflect and cite

A LangGraph cyclic reflection loop checks the draft against the evidence and returns verifiable source-node citations.

  • LangGraph
  • reflection loop
  • source citations

Built on tools that already earn trust.

What changes for the audit team.

No guessing at statute links.

Eliminates non-deterministic hallucinations by grounding answers in graph paths rather than similar-sounding text.

Days become minutes.

Lowers legal audit review time from days to minutes by surfacing the full dependency chain up front.

Every answer shows its work.

Provides verifiable subgraph audit trails, so a reviewer can open exactly the nodes behind each claim.

Five deliverables, one working system.

Docker Compose setup

Neo4j, Qdrant and FastAPI come up with one command, so the whole engine runs the same on every machine.

Filings to Cypher property graphs

Python scripts that map regulatory filings into Cypher, with labelled nodes and typed relationships.

LangGraph state machine

Reflection loops and error handlers keep a bad retrieval from becoming a confident answer.

Ragas benchmark suite

A benchmark on 50 multi-hop regulatory queries, built to test the accuracy claim above.

Interactive knowledge graph UI

A D3.js-style visualisation where reviewers click through nodes and edges to inspect the evidence behind an answer.

Let's make your compliance answers traceable.

Graph-backed retrieval and agent workflows for regulated teams.

Start a conversation