Veritasgraph README

The full upstream README, mirrored for reference. Install config, tool schemas, adoption signals and our own overview live on the Veritasgraph listing page.

VeritasGraph โ€” The Governed, On-Prem GraphRAG & Agent Framework

Stop chunking blindly. Combine Tree-Search structure with Knowledge-Graph reasoning โ€” and wire it into governed AI agents. Runs 100% locally or in the cloud.

VeritasGraph Logo

PyPI version Python 3.10+ License: MIT CI GitHub Stars MCPVault: claimed

๐ŸŽฏ Traditional RAG guesses based on similarity. VeritasGraph reasons based on structure. Don't just find the document โ€” understand the connection, then act on it with governed agents.

๐ŸŒ Live site ยท โญ Star ยท ๐Ÿด Fork ยท ๐Ÿ’ฌ Discuss ยท ๐Ÿ› Report a bug


bash
python -m veritasgraph_mcp     # from repo root (needs local Ollama for ingest/query)

Building Auditable Deep-Research Agents โ€” Live at MBZUAI ย  VeritasGraph Master Demo

โ–ถ๏ธ๏ธ Watch the Full Talk & Live Demo on YouTube (27 mins)

Why Vector RAG Breaks on Deep Research

  • Attribution is a data model, not a prompt: Storing provenance at write time prevents hallucinated citations at read time.
  • Deterministic retrieval: Graph traversal is fully reproducible, separating factual evidence traces from stochastic LLM generation.
  • Explicit abstention: The agent identifies missing graph edges and returns "insufficient evidence" rather than guessing.

๐Ÿ“š Featured Guide โ€” Build Governed AI Agents On-Prem

A complete walkthrough of designing, wiring, and shipping governed AI agents entirely on your own infrastructure.

๐Ÿ“„ Read the guide: Build Governed AI Agents On-Prem (PDF)

Build Governed AI Agents On-Prem โ€” walkthrough Import Any graph.json into VeritasGraph Studio โ€” Walkthrough

โ–ถ๏ธ Watch the walkthrough on YouTube


๐Ÿš€ Quick Start (2 lines, no GPU)

Terminal
pip install veritasgraph

veritasgraph demo --mode=lite

That's it โ€” an interactive demo using cloud APIs (OpenAI/Anthropic), no local models required.

ModeBest ForRequirements
--mode=liteQuick demo, no GPUOpenAI/Anthropic API key
--mode=localPrivacy, offline useOllama + 8GB RAM
--mode=fullProduction, all featuresDocker + Neo4j
server.ts
export OPENAI_API_KEY="sk-..."        # Lite: cloud APIs, zero setup

veritasgraph demo --mode=lite



veritasgraph demo --mode=local --model=llama3.2   # 100% offline with Ollama

veritasgraph start --mode=full                    # full GraphRAG pipeline

Colab: Vectorless RAG ย  Colab: Vision RAG ย  Colab: Tree Accuracy

Useful links: โšก Live docs ยท ๐ŸŽฎ Live demo ยท ๐Ÿ“– Article ยท ๐Ÿ“„ Research paper


๐Ÿฅ Example Implementation โ€” MedTrust Agent

MedTrust Agent is a complete, reproducible example implementation of the VeritasGraph governed-agent architecture, applied to medical and pharmaceutical workflows โ€” a zero-trust, observable LLM agent framework (NEECON 2026 paper).

  • Zero-trust control plane: least-privilege IAM with step-up authorization โ€” no tool runs before authorization succeeds.
  • Governed answers: mandatory [doc#chunk] citations; uncited answers are withheld or routed to human review.
  • Tamper-evident audit: keyed, hash-chained audit log with published anchors.
  • Honest evaluation: security measured directly from the running code (100% unauthorized actions blocked, Wilson 95% CIs), answer quality clearly labelled illustrative; 69 tests, a versioned 40-scenario suite, and a one-command reproduce script.
bash
python -m medtrust.demo    # end-to-end governed demo, 100% offline

๐Ÿ“„ Read the full write-up: MedTrust Agent README


๐Ÿงฉ Built with VeritasGraph

A growing ecosystem of projects is building on VeritasGraph for enterprise GraphRAG, agent orchestration, fact-checking, and governed reasoning.

Built with VeritasGraph

Community projects and integrations

If you are building with VeritasGraph and want to be featured here, open a PR or reach out with a short repo description and usage summary.


๏ฟฝ Live Example โ€” Floorplan-KG Takeoff Demo

A hosted, zero-setup example of VeritasGraph applied to construction drawings. Upload a floorplan PDF (or pick a bundled sample) and the engine extracts rooms, dimensions, openings, fixtures, and schedules โ€” then builds a knowledge graph and quantity takeoff you can query, all with verifiable provenance back to the source sheet.

๐Ÿ—๏ธ Try the Floorplan-KG demo โ€” free, no login; runs the live PyMuPDF/pdfplumber extraction pipeline.

  • What it shows: PDF โ†’ structured rooms/dimensions/schedules โ†’ knowledge graph โ†’ CSV/XLSX takeoff export, with a VeritasGraph assist panel for grounded Q&A over the extracted graph.
  • Why it matters: the same governed-attribution model that powers document RAG applies to geometry โ€” every measured quantity traces back to a specific sheet and element rather than a guessed value.
  • Example output: a single-sheet residential plan returns ~17 rooms and ~2,400 sq ft in under 200 ms.

Studio is a local Agent Build Workspace (FastAPI + single-page UI) that lets you build a knowledge graph from your own documents and wire it into agents alongside tools, memory, data logging, guardrails, and headroom-style context budgeting โ€” then chat with those agents live and watch every stage of the orchestration pipeline. Everything runs 100% locally against Ollama.

๐ŸŽฎ Try the Studio Live โ€” stable URL that always redirects to the current running studio tunnel.

Run it:

Terminal
pip install -r requirements.txt

ollama serve & ollama pull qwen3:latest          # any local chat model

STUDIO_DATA_DIR="$PWD/studio_api/data" \

  uvicorn studio_api.main:app --host 127.0.0.1 --port 8200 --log-level warning

# Studio UI โ†’ http://localhost:8200/studio   ยท   API docs โ†’ /docs

One-command end-to-end demo (builds a graph + drives a fully-wired agent through graph reasoning, memory recall, PII redaction, and a guardrail block):

bash
python3 demos/agent-studio/sample_pipeline.py --model qwen3:latest
What's inside โ€” full Studio feature set
  • ๐Ÿงฉ Knowledge Graph builder & explorer โ€” ingest text, extract entities/relationships locally, inspect nodes/edges with grounded evidence.
  • ๐Ÿ”Ž Graph Q&A with citations โ€” multi-hop answers backed by [doc#chunk] source attribution.
  • ๐Ÿค– Agent workspace โ€” create/edit agents with model selection, prompt/persona settings, and per-agent capability toggles.
  • ๐Ÿ”€ Governed orchestration pipeline โ€” per-turn flow of Guardrails โ†’ Memory โ†’ Knowledge Graph โ†’ Headroom budget โ†’ Tools โ†’ Data log, with full trace visibility.
  • ๐Ÿงฐ Editable tools catalog โ€” add, edit, enable/disable, test, and delete tools directly in Studio.
  • ๐ŸŒ External real tool support โ€” call real HTTP endpoints with configurable method, auth header, and custom headers.
  • ๐Ÿ”Œ MCP bridge integrations โ€” local MCP proxy connectors (e.g. Chrome DevTools MCP, Unity MCP) with health-aware probing.
  • ๐Ÿ›ก๏ธ Guardrails โ€” PII redaction and policy-block controls with visible guardrail-block metrics.
  • ๐Ÿง  Memory + Data logs โ€” per-agent short-term memory and interaction-log persistence.
  • ๐Ÿ“ˆ Evaluation & fine-tune simulation โ€” run eval suites, track pass-rate trends, and queue/monitor fine-tune jobs.
  • ๐Ÿ’ฌ Playground โ€” run governed agent conversations live and inspect the pipeline trace.
  • ๐Ÿ“Š KPI dashboard โ€” active agents, connected tools, eval pass rate, and guardrail-block counters.

See studio_api/README.md for API and architecture, and docs/STUDIO_ENTERPRISE_TEST.md for enterprise test scenarios.

๐Ÿ“‹ Examples

#ExampleWhat it demonstratesRun
1sample_pipeline.pyStudio agent pipeline โ€” ingests a company brief โ†’ builds KG โ†’ multi-hop Q&A with citations โ†’ memory recall โ†’ PII redaction โ†’ guardrail block โ†’ audit log.python3 demos/agent-studio/sample_pipeline.py
2sample_tools_explorer.pyTool catalog seeder โ€” registers 17 tools and creates sample explorer agents. Idempotent.python3 demos/agent-studio/sample_tools_explorer.py
3clinical-kg/Medical AI โ€” Clinical Knowledge Graph โ€” de-identifies notes (Safe Harbor), extracts entities, detects contradictions, normalizes to ICD-10/RxNorm/SNOMED/LOINC, builds patient KG with citations.cd clinical-kg/backend && python run.py
4municipality-incident-chatbot/DMT Inspection System โ€” citizen incident reporting with CV validation (YOLO/VLM), KG-grounded routing, evidence fusion, case registration.cd municipality-incident-chatbot && python cli.py
๐Ÿฅ Example 3 โ€” Medical AI: HIPAA-Safe Clinical Knowledge Graph

Turn unstructured clinical notes into a governed, citable knowledge graph โ€” fully on-prem.

The 7-step pipeline:

StepWhat it does
De-identifySafe Harbor regex redaction with a sealed SurrogateVault for audited re-identification
ExtractSection-aware NER, med-sig / lab-value parsing, ConText axes (negation, certainty, temporality, experiencer)
ReconcileGroups mentions by concept; detects contradictions across notes (e.g. "no diabetes" in HPI vs "T2DM" in problem list)
NormalizeMaps mentions โ†’ coded concepts (ICD-10-CM, RxNorm, SNOMED CT, LOINC)
Knowledge GraphPatient / Encounter / Condition / Medication / LabResult nodes with EVIDENCED_BY provenance edges
QueryNL โ†’ structured CohortQuery โ†’ multi-hop traversal with [doc#chunk] citations
Governancek-anonymity over released cohorts
bash
# Backend (FastAPI on :8300)

cd clinical-kg/backend

pip install -r requirements.txt

python run.py



# Frontend (Next.js dashboard on :3200)

cd clinical-kg/frontend

npm install && npm run dev

Open http://localhost:3200 โ†’ click Load sample notes โ†’ run queries. The UI has 6 tabs: Cohort Query, Ingest Note, Patients, Contradictions, Graph, Re-ID Risk.

๐Ÿ›๏ธ Example 4 โ€” DMT Inspection System: Municipality Incident Chatbot

AI chatbot for citizens to report civic incidents, validated by computer vision and grounded by a knowledge graph.

Pipeline flow: citizen photo + description โ†’ KG classification โ†’ CV validation (YOLO/VLM) โ†’ cross-check (CCTV, location, prior reports) โ†’ evidence fusion โ†’ case registration.

Supported incidents: trash overflow ยท abandoned vehicles ยท overcrowding ยท illegal parking (extensible)

bash
cd municipality-incident-chatbot

pip install -r requirements.txt



# Interactive CLI

python cli.py

#   you> trash overflowing near the market | photo=garbage_overflow.jpg | zone=downtown



# Test suite

python -m pytest -q
ComponentFile
Knowledge graph (grounding + routing)app/knowledge_graph.py
CV validation (YOLO + VLM)app/cv_service.py
Evidence fusion & scoringapp/fusion.py
Chatbot orchestratorapp/orchestrator.py
Architecture docs01_architecture.md

Enterprise scenario โ€” follow the Northwind Bank compliance test playbook for a guided walkthrough using realistic financial-services data.

For API-level examples and curl recipes, see studio_api/README.md.


๐ŸŒณ + ๐Ÿ”— Graph + Tree: the ultimate retrieval

Why choose? VeritasGraph includes the hierarchical "Table of Contents" navigation of PageIndex PLUS the semantic reasoning of a Knowledge Graph.

Code
Document Root

โ”œโ”€โ”€ [1] Introduction

โ”‚   โ”œโ”€โ”€ [1.1] Background โ†โ”€โ”€ Tree Navigation

โ”‚   โ””โ”€โ”€ [1.2] Objectives

โ”œโ”€โ”€ [2] Methodology โ†โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Graph Links

โ”‚   โ””โ”€โ”€ relates_to โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ†’ [3.1] Findings

โ””โ”€โ”€ [3] Results

๐Ÿ“Š Feature comparison

FeatureVector RAGPageIndexVeritasGraph
Retrieval typeSimilarityTree search๐Ÿ† Tree + Graph reasoning
AttributionโŒ Lowโš ๏ธ Mediumโœ… 100% verifiable
Multi-hop reasoningโŒโŒโœ…
Tree navigation (TOC)โŒโœ…โœ…
Semantic searchโœ…โŒโœ…
Cross-section linkingโŒโŒโœ…
Visual graph explorerโŒโŒโœ… Built-in UI
100% local/privateโš ๏ธ VariesโŒ Cloudโœ… On-premise
Open sourceโš ๏ธ VariesโŒ Proprietaryโœ… MIT license

Traditional RAG vs VeritasGraph comparison


๐ŸŽฌ See it in action

VeritasGraph Master Demo

Watch VeritasGraph build reasoning paths in real time ย  Convert charts & tables to knowledge graphs โ€” Vision RAG tutorial

๐Ÿ’ก What you're seeing: a query triggers multi-hop reasoning across the knowledge graph. Nodes light up as connections are discovered, showing exactly how the answer was found โ€” not just what was found.


๐Ÿ”Œ MCP Server โ€” connect your IDE agent to VeritasGraph

VeritasGraph ships a dedicated Model Context Protocol server โ€” the first zero-trust, air-gapped Enterprise GraphRAG server for MCP. Connect Claude Desktop, Cursor, VS Code, Windsurf, Cline, or Continue directly to the GraphRAG engine over JSON-RPC 2.0 stdio, with zero external data egress.

bash
python -m veritasgraph_mcp     # from repo root (needs local Ollama for ingest/query)

Tools: veritasgraph_ingest_document, veritasgraph_query (multi-hop answers with [doc#chunk] citations), veritasgraph_search_entities, veritasgraph_get_graph, veritasgraph_clear_graph. See veritasgraph_mcp/README.md for IDE registration snippets.

๐Ÿฅ VeritasGraph-MCP Use Case โ€” Production Medical AI on Azure

Real-world deployment: VeritasGraph MCP server running on Azure Functions with Azure AI Foundry, delivering GraphRAG-powered clinical decision support with verifiable citations and compliance-ready architecture.

๐Ÿ“– Production deployment walkthrough

The Challenge: 90% of Azure AI demos work. Most never ship. The gap isn't the model โ€” it's architecture, security, state management, and compliance.

The Solution: VeritasGraph deployed as a remote MCP server that Azure AI Foundry agents call to answer clinical questions with:

  • โœ… Multi-hop GraphRAG reasoning โ€” assembles answers from separate graph edges
  • โœ… Verifiable citations โ€” every claim traces to [doc#chunk] sources
  • โœ… Production-grade architecture โ€” externalized state, identity at boundary, observability
  • โœ… Compliance-ready โ€” region-pinned, PHI-aware guardrails, semantic-layer RBAC

Architecture highlights:

Code
Foundry Agent / MCP client

   โ†’ Identity (Entra ID + function key)

      โ†’ Azure Functions (Flex Consumption, 4 mcpToolTrigger tools)

         โ†’ veritasgraph-mcp + graphrag_engine

            โ†’ Azure OpenAI (extraction + reasoning)

            โ†’ Knowledge Graph

         โ†’ Durable Azure Files mount (externalized state)

         โ†’ Storage + App Insights (observability)

Key production lessons learned:

  1. State externalization โ€” Flex Consumption wiped in-memory graphs; fixed with mounted Azure Files share
  2. Identity at boundary โ€” Carry Entra identity; enforce Power BI RLS / Dataverse roles on-behalf-of user
  3. Self-correcting agents โ€” Feed errors + schema back; retry up to 3ร— (e.g., DAX generation)
  4. Compliance by design โ€” Foundry guardrails block PHI-leaking requests before reaching the model
  5. Observability layers โ€” Application Insights + Foundry Traces + Evaluations + Alerts

Example query flow:

config.json
{

  "question": "Should we adjust warfarin for patient 4471 on amiodarone?",

  "answer": "Reduce the warfarin dose because amiodarone inhibits CYP2C9...",

  "citations": ["doc_warfarin_note#0", "doc_warfarin_note#1"],

  "reasoning_path": ["Amiodarone โ†’ CYP2C9", "CYP2C9 โ†’ Warfarin", "Warfarin โ†’ Bleeding Risk"]

}

Technical stack:

  • Compute: Azure Functions (Flex Consumption) โ€” scales to zero, fast event-driven scale-out
  • State: Azure Files mount โ€” survives cold starts and scale events
  • Inference: Azure OpenAI (gpt-4-turbo/gpt-5-mini, swappable)
  • Identity: Entra ID + function/system key
  • Observability: Application Insights + Foundry Traces
  • Compliance: Region-pinned deployments, PHI-aware guardrails, Key Vault secrets

Deployed systems:

  1. Medical MCP Server โ€” Clinical knowledge graph with multi-hop reasoning and [doc#chunk] citations
  2. Power BI Natural-Language Agent โ€” Validates OAuth token โ†’ discovers schema โ†’ generates DAX โ†’ executes via executeQueries REST API with row-level security enforced by the platform

Watch: VeritasGraph MCP on Azure AI Foundry

โ–ถ๏ธ Watch the deployment walkthrough on YouTube

Resources:

Production-ready checklist:

  • โœ“ Grounded โ€” answers cite your data ([doc#chunk])
  • โœ“ State externalized โ€” no reliance on serverless memory
  • โœ“ Identity at boundary โ€” Entra + keys; on-behalf-of for data
  • โœ“ Entitlements enforced โ€” RLS/roles before data reaches model
  • โœ“ Resilient โ€” handles bad params, throttling, tool failures
  • โœ“ Observable โ€” logs, traces, evals, cost alerts
  • โœ“ Region-pinned & compliant โ€” inference in-tenant, PHI-aware
  • โœ“ Secrets in Key Vault โ€” managed identity, least privilege
  • โœ“ Reproducible deploy โ€” remote build, pinned config

๐Ÿ’ก Key insight: The gap between POC and production is architecture, not the model. Ground it, externalize state, secure it, observe it, make it resilient, keep it compliant.


๐Ÿ“– Python API

server.ts
from veritasgraph import VisionRAGPipeline



pipeline = VisionRAGPipeline()                 # auto-detects available models

doc = pipeline.ingest_pdf("document.pdf")

result = pipeline.query("What are the key findings?")

print(result.answer)
๐ŸŒณ Hierarchical tree navigation + graph search
server.ts
from veritasgraph import VisionRAGPipeline



pipeline = VisionRAGPipeline()

doc = pipeline.ingest_pdf("report.pdf")



# View the document's hierarchical structure (like a Table of Contents)

print(pipeline.get_document_tree())

# Document Root

# โ”œโ”€โ”€ [1] Introduction (pp. 1-5)

# โ”‚   โ”œโ”€โ”€ [1.1] Background (pp. 1-2)

# โ”‚   โ””โ”€โ”€ [1.2] Objectives (pp. 3-5)

# โ””โ”€โ”€ [2] Methodology (pp. 6-15)



# Navigate to a specific section (tree-based retrieval)

section = pipeline.navigate_to_section("Methodology")

print(section['breadcrumb'])   # ['Document Root', 'Methodology']



# Or use graph-based semantic search

result = pipeline.query("What methodology was used?")

# โ†’ answer with section context: "๐Ÿ“ Location: Document > Methodology > Analysis Framework"
๐Ÿ”ง Custom configuration & ingestion modes
server.ts
from veritasgraph import VisionRAGPipeline, VisionRAGConfig



config = VisionRAGConfig(ingest_mode="document-centric")  # tables stay intact!

pipeline = VisionRAGPipeline(config)

doc = pipeline.ingest_pdf("annual_report.pdf")
ModeDescriptionBest For
document-centricWhole pages/sections as nodes (default)Most documents
pageEach page = one nodeSlide decks, reports
sectionEach section = one nodeStructured documents
chunkTraditional 500-token chunksLegacy compatibility

CLI

bash
veritasgraph --version                                    # show version

veritasgraph info                                         # check dependencies

veritasgraph init my_project                              # initialize a project

veritasgraph ingest document.pdf --ingest-mode=document-centric   # Don't Chunk. Graph.

veritasgraph ingest https://youtube.com/watch?v=xxx       # auto-extract transcript

veritasgraph ingest https://example.com/article           # extract web article

Installation options

Terminal
pip install veritasgraph            # basic (includes lite mode)

pip install veritasgraph[web]       # Gradio UI + visualization

pip install veritasgraph[graphrag]  # Microsoft GraphRAG integration

pip install veritasgraph[ingest]    # YouTube & web-article ingestion

pip install veritasgraph[all]       # everything

๐Ÿ›๏ธ Enterprise Compliance โ€” VeritasGraph + VeritasReason

GraphRAG is brilliant at describing what your documents say. But enterprise questions like "Which purchase orders violated our Segregation-of-Duties policy last quarter?" are rule-evaluation problems over structured records โ€” not similarity search.

For those, VeritasGraph ships a sister module: VeritasReason โ€” a deterministic reasoning engine (forward-chaining + Rete + SPARQL) that fires policy rules over a triplet store and returns auditable answers with W3C PROV-O provenance.

Code
 Policy PDFs โ”€โ”                        โ”Œโ”€ ingest_structured.py (SQL โ†’ triples + text)

              โ–ผ                        โ–ผ

      VeritasGraph GraphRAG      VeritasReason (TripletStore + RuleSet

      (quotes policy text)       + ForwardChainer + PROV-O)

              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

                         โ–ผ

             Compliance answer + violators table + clause citations

30-second smoke test (no install, stdlib only)

bash
python tests/test_policy_compliance_demo.py

Seeds a fake ERP into a tiny in-memory triple store, evaluates four SoD rules from rules/sod_policy.yaml, and prints violators with citations:

Code
โœ“ Reasoner fired. Detected 4 violation(s):

  po:PO-2204 SOD-01   Approved & paid by emp:E118

  po:PO-2301 SOD-02   Requested & approved by emp:E091

  po:PO-2317 SOD-03   $48,750.00 approved by emp:E091 (role:Manager, not Director)

  po:PO-2402 SOD-04   Vendor vendor:V77 related to approver emp:E140

Or install and run the packaged demo:

Terminal
pip install veritas-reason

veritasreason-policy-demo

VeritasGraph + VeritasReason policy-compliance demo

The same pattern applies to leave-policy violations (HRIS attendance), expense-report fraud (ledger + receipts), clinical protocol breaches (EHR + guidelines), or KYC/AML (transactions + watchlists). Define the SQL โ†’ triple mapping in ingest_structured.py, write rules in rules/*.yaml, and ask in plain English. See veritas-reason/plan.md for a full walk-through.


๐Ÿ”— Interactive Graph Visualization

VeritasGraph includes an interactive 2D knowledge-graph explorer (PyVis) that visualizes entities and relationships in real time.

Graph Explorer

FeatureDescription
Query-aware subgraphShows only entities related to your query
Community coloringNodes grouped by community membership
Red highlightQuery-related entities shown in red
Node sizingBigger nodes = more connections
InteractiveDrag, zoom, hover for entity details
Full graph explorerView the entire knowledge graph

โš™๏ธ Provider Support (OpenAI-compatible)

VeritasGraph works with any OpenAI-compatible API โ€” mix and match cloud and local:

ProviderAPI BaseAPI KeyExample Model
Ollama (default)http://localhost:11434/v1ollamallama3.1-12k
OpenAIhttps://api.openai.com/v1sk-proj-...gpt-4-turbo-preview
Groqhttps://api.groq.com/openai/v1gsk_...llama-3.1-70b-versatile
Together AIhttps://api.together.xyz/v1your-keyMeta-Llama-3.1-70B-Instruct-Turbo
LM Studiohttp://localhost:1234/v1lm-studio(model loaded in LM Studio)

Also supported: Azure OpenAI, OpenRouter, Anyscale, LocalAI, vLLM.

bash
cd graphrag-ollama-config

cp settings_openai.yaml settings.yaml

cp .env.openai.example .env       # edit with your provider settings

python -m graphrag.index --root . --config settings_openai.yaml

python app.py

โš ๏ธ Embeddings must match your index. If you indexed with nomic-embed-text (768 dims), you must query with the same model โ€” switching embedding models requires re-indexing. Full details in OPENAI_COMPATIBLE_API.md.


๐Ÿณ Deployment

Five-Minute Magic Onboarding (Docker)

Run a full stack (Ollama + Neo4j + Gradio) with one command:

bash
cd docker/five-minute-magic-onboarding

# set your Neo4j password in .env, then:

docker compose up --build

Services: Gradio UI โ†’ http://127.0.0.1:7860 ยท Neo4j โ†’ http://localhost:7474 ยท Ollama โ†’ http://localhost:11434. See docker/five-minute-magic-onboarding/README.md.

Share with your team (free)

MethodDurationLocal OllamaSetupBest For
python app.py --share72 hoursโœ…1 minQuick demos
Ngrok tunnelUnlimited*โœ…5 minTeam evaluation
Cloudflare tunnelUnlimited*โœ…5 minTeam evaluation
Hugging Face SpacesPermanentโŒ (cloud LLM)15 minPublic showcase

*Free tier has some limitations.


๐Ÿ—๏ธ Architecture

mermaid
graph TD

    subgraph "Indexing Pipeline (one-time)"

        A[Source Documents] --> B{Document Chunking};

        B --> C{"LLM Extraction<br/>(Entities & Relationships)"};

        C --> D[Vector Index];

        C --> E[Knowledge Graph];

    end

    subgraph "Query Pipeline (real-time)"

        F[User Query] --> G{Hybrid Retrieval Engine};

        G -- "1. Vector search for entry points" --> D;

        G -- "2. Multi-hop graph traversal" --> E;

        G --> H{Pruning & Re-ranking};

        H -- "Rich context" --> I{LoRA-Tuned LLM Core};

        I -- "Answer + provenance" --> J{Attribution Layer};

        J --> K[Attributed Answer];

    end

    style A fill:#f2f2f2,stroke:#333,stroke-width:2px

    style F fill:#e6f7ff,stroke:#333,stroke-width:2px

    style K fill:#e6ffe6,stroke:#333,stroke-width:2px

The four stages:

  1. Automated Knowledge Graph construction โ€” chunk documents into TextUnits, extract (head, relation, tail) triplets, assemble nodes + edges in a graph DB (e.g. Neo4j).
  2. Hybrid retrieval engine โ€” vector search finds entry nodes, multi-hop traversal uncovers hidden relationships, pruning & re-ranking keeps the most relevant facts.
  3. LoRA-tuned reasoning core โ€” a locally hosted, LoRA-tuned open model generates attributed answers with efficient fine-tuning for reasoning + attribution.
  4. Attribution & provenance layer โ€” propagates source IDs, chunks, and graph nodes into a structured, traceable JSON output.
On-premise prerequisites

Hardware: 16+ CPU cores ยท 64GB+ RAM (128GB recommended) ยท NVIDIA GPU with 24GB+ VRAM (A100 / H100 / RTX 4090). Software: Docker & Docker Compose ยท Python 3.10+ ยท NVIDIA Container Toolkit. Copy .env.example โ†’ .env and populate with environment-specific values.


Why VeritasGraph?

  • โœ… Fully on-premise & secure โ€” 100% control over your data and models.
  • โœ… Verifiable attribution โ€” every claim traces back to its source.
  • โœ… Advanced graph reasoning โ€” answers complex, multi-hop questions.
  • โœ… Hierarchical tree + graph โ€” PageIndex-style TOC navigation with graph flexibility.
  • โœ… Governed agents โ€” guardrails, memory, tools, and context budgeting wired together in Studio.
  • โœ… Open-source & sovereign โ€” MIT-licensed, no vendor lock-in.

Who is it for? Engineers building enterprise search, compliance assistants, research copilots, scientific literature explorers, and agent memory systems โ€” anywhere "the answer" depends on how facts connect, not just whether they appear near each other in a vector index.


๐Ÿ™Œ Acknowledgments

Builds on the foundational work of HopRAG, Microsoft GraphRAG, LangChain & LlamaIndex, and Neo4j.

๐Ÿ† Awards & Citation

Presented at the International Conference on Applied Science and Future Technology (ICASF 2025) โ€” ๐Ÿ“„ Appreciation Certificate.

bibtex
@article{VeritasGraph2025,

  title={VeritasGraph: A Sovereign GraphRAG Framework for Enterprise-Grade AI with Verifiable Attribution},

  author={Bibin Prathap},

  journal={International Conference on Applied Science and Future Technology (ICASF)},

  year={2025}

}

Star History

Star History Chart


stars issues forks license

Licensed under MIT. โญ Star the repo to follow the roadmap for open-source, governed GraphRAG.