PrismRAG
Define which concepts belong together. Train a personal MLP on your rules. Search a graph built from your domain expertise — not document co-occurrence.
See how it works →PrismRAG maps your data into your semantic model — auditable rules, personal ML, millisecond search. Deliberation runs seven domain experts in parallel, then synthesises agreement, conflict, and insight.
# Your mapping — not document statistics POST /api/prismrag/jobs { "strategy": "mlp", "mapping": { "categories": [ { "slug": "risk", "label": "Risk & Compliance" }, { "slug": "growth", "label": "Growth" } ], "rules": [ { "word": "volatility", "category_slug": "risk" } ] } }
One platform for building enterprise knowledge graphs and running multi-domain AI deliberation — included on every plan.
Define which concepts belong together. Train a personal MLP on your rules. Search a graph built from your domain expertise — not document co-occurrence.
See how it works →Ask one hard question. Seven domain experts answer in parallel. A Master Deliberator surfaces agreements, real conflicts, and insights no single model would find.
See the pipeline →Graph RAG infers relationships from how often words appear together. PrismRAG embeds data into the structure you define.
Three steps. Full audit trail. No black-box graph construction.
Send a category table and word→group rules via API, CSV, SQL query, or Excel file. This is your domain model — explicit, versioned, and auditable.
Your rules train a personal MLP (Tier 2) that learns the boundaries of your categories and generalises them to unseen vocabulary. All source text is projected through your model.
Queries traverse your community graph, not a statistical one. Graph RAG finds what you defined as related — not what happened to co-occur in training data.
Every API call is backed by a multi-layer machine learning stack. Here's exactly what runs and when.
Every word and chunk is embedded into 768-dimensional semantic space using Google's Gemini embedding model, with DB caching so repeated words don't re-call the API.
768-d Gemini vectors are projected to 256-d via a seeded random orthonormal matrix (preserves cosine distances). A 30% category one-hot signal is blended in to pull same-category words together before MLP training. L2-normalised to unit sphere. Fully deterministic and auditable.
A 3-layer MLP (768→512→512→256) is trained on your word rules using InfoNCE contrastive loss (τ=0.20) plus anchor repulsion (weight=0.35). This learns the decision boundaries between your categories and generalises them to vocabulary not in your rule set. AdamW optimiser, CosineAnnealingLR schedule, gradient clipping at 1.0.
A word co-occurrence graph is built from ingested chunks, then Louvain modularity optimisation groups words into communities. Each community centroid is computed, stored as a pgvector VECTOR(256), and labelled in parallel using Gemini LLM calls.
Three-phase retrieval: (1) HNSW cosine search on community centroids to find the closest community to the query. (2) BFS 2-hop expansion on the word graph to find related words. (3) MLP re-ranking: if a Tier-2 model exists, all candidates are re-projected through the personal MLP before final cosine ranking.
Cross-community semantic bridges are created by computing the normalised midpoint between two community centroids: normalize((centroid_A + centroid_B) / 2). The bridge vector is then projected through the personal MLP (if Tier 2), creating a synthetic node that connects two previously separate semantic clusters without retraining.
The Deliberation pipeline runs a structured ensemble of Gemini LLM calls: one horizontal domain discovery call, up to 10 parallel vertical expert calls (each with domain-specific prompt engineering), and one Master Deliberator synthesis call. Based on the Mixture of Agents (MoA) technique — diverse independent reasoning outperforms a single call on complex questions.
Usage is enforced and tracked at three levels: Redis sliding window for per-minute rate limiting (<1ms), Redis monthly counter for quota tracking (Postgres fallback), and async Postgres writes for usage_event audit log. Zero DB latency added to the request path.
Complex decisions span finance, legal, ops, and more. Deliberation discovers relevant domains, queries them in parallel, and surfaces real disagreements — not hedged single-model prose.
The same model generates both sides of "on one hand… on the other hand…" — so it tends toward vague consensus. All domains compete for the same attention budget. There's no real conflict detection because the model doesn't want to contradict itself. You can't see which domain contributed what.
Finance, Antitrust, and HR each reason independently before any synthesis. Real conflicts emerge from domain logic differences, not hedging. The Master Deliberator can say "Finance says go, Antitrust assigns 40% block probability" — a genuine disagreement from independent reasoning. Every domain's contribution is visible and auditable.
Finance, Antitrust, HR, Technology Integration, Market Strategy, Regulatory, and Culture domains each weigh in — then conflicts are surfaced.
Cardiology, Neurology, Endocrinology, and Psychiatry all examine the same symptom set independently before synthesis.
GDPR, CCPA, common law, and sector regulations examined in parallel. Conflicts between frameworks are explicitly surfaced.
Market Entry, Regulatory, Cultural, Supply Chain, Competitive, Financial, and Political Risk — all examined automatically.
Actuarial, Legal, Environmental, Behavioral, and Operational domains assess the same risk from different expert angles.
Connect via MCP. Your Claude/ChatGPT agent calls deliberate(question) and gets a full multi-domain synthesis automatically.
# Claude Desktop / any MCP-compatible AI agent # Just one tool call — the full 3-phase pipeline runs automatically deliberate({ "question": "Should we acquire CompetitorX in Q4?", "domain_count": 7, "tenant_id": "your-prismrag-workspace" // optional KB grounding }) // Returns: { "agreements": "Finance & Strategy both see 12–18% synergy...", "conflicts": "Finance: 70% deal probability. Antitrust: 40%.", "unique_insights": "HR flagged culture clash not in financial models", "final_answer": "Strong strategic fit, material regulatory risk...", "confidence": 0.81 }
SQL query, Excel upload, REST API, or existing pgvector chunk store. One job API handles all of them.
Start with explicit rules (fully auditable). Upgrade to MLP training that generalises your rules to new vocabulary without rewriting them.
Every vector table ships with HNSW indexes (m=16, ef_construction=64). Millisecond cosine search across millions of chunks — not sequential scans.
Connect two existing communities post-hoc with a synthetic bridge node — no retraining required. Instantly links semantic clusters across domains.
Every tenant gets their own vector space, their own community graph, their own MLP model weights. Complete data isolation by design.
Every retrieval decision traces back to a versioned mapping rule. Regulators can ask "why did this document appear?" and get a real answer.
Files under 1MB run inline. Up to 500MB upload directly to Azure Blob, queue via Service Bus, processed streaming row-by-row — never held in memory.
9 MCP tools out of the box: search, submit_job, create_bridge, deliberate, and more. Connect any Claude, ChatGPT, or custom AI agent in minutes.
Both products included in every plan. Start free — no credit card required.
Try PrismRAG with no commitment
For teams building their first pipeline
Full ML stack for production deployments
Unlimited scale, dedicated infrastructure
Included with every PrismRAG plan. Deliberation credits are separate from chunk limits.
5,000 free chunks and 5 free deliberations every month. No credit card. Full API access from day one.