RiskAttest automatically captures tamper-proof evidence for every model — AI or traditional, LLM or Monte Carlo — and maps it to APRA, Fed, EU, and OSFI requirements. It sits between your MLOps/DataOps stack and your GRC platform, adding the compliance layer neither was designed to provide — without replacing either.
RiskAttest connects to your existing MLOps stack — Databricks Unity Catalog, MLflow, HuggingFace, LiteLLM — and pushes compliance evidence to your GRC platform — OpenPages, ServiceNow IRM, Workiva. It adds the regulatory evidence layer that neither stack was designed to provide, without replacing either.
Regulators don't want a policy document. They want proof: who validated this model, when, with what data, what happened when it made a wrong call. That proof doesn't exist in most banks today.
APRA CPS 230 requires tamper-evident documentation of model decisions. Most banks have a PDF in a SharePoint folder last updated six months ago.
APRA CPS 230 · Paragraphs 27–28
Deloitte 2025: only a third of banks have tooling that fully supports lifecycle automation. The rest rebuild manually, every time.
Deloitte 2025 EMEA MRM Survey (87 banks)
Legacy MRM suites were built for statistical models. LLMs, RAG pipelines, and agentic systems don't exist in their data model. The EU AI Act doesn't care.
EU AI Act · Annex IV obligations
RiskAttest sits between your models and your GRC platform. Every model run produces a tamper-proof, regulator-ready evidence packet — without your risk team lifting a finger.
A single compliance layer across your entire model inventory — GenAI, LLMs, RAG pipelines, and traditional statistical models. RiskAttest reads from your MLOps stack (Databricks, MLflow, HuggingFace) and writes to your GRC platform (OpenPages, ServiceNow, Workiva). Your engineers keep their tools. Your risk team keeps theirs. RiskAttest is the bridge.
27-concept cross-standard crosswalk included. Pluggable for custom jurisdictions via @register_standard.
Your MLOps stack (Databricks, MLflow, HuggingFace) is built to ship models fast. Your GRC platform (OpenPages, ServiceNow) is built to manage risk processes. Neither was designed to produce tamper-proof, regulator-ready evidence for every model decision. RiskAttest fills that gap — reading from one, writing to the other, replacing neither.
Register models directly from Unity Catalog. RiskAttest reads model versions, lineage, and metadata — your model catalog becomes the source of truth for validation and evidence generation.
Model catalogPull models directly from MLflow by name or version alias. Validation runs, evidence packets, and compliance reports are automatically linked back to the originating experiment run.
Experiment trackingValidate any HuggingFace model directly — FinBERT, Llama, custom fine-tunes. Apply GenAI-specific tests (hallucination rate, toxicity, PII leakage) to models your team pulls from the Hub.
GenAI modelsOne integration covers OpenAI, Anthropic, Azure OpenAI, Bedrock, and 100+ LLM providers. Validate any LLM your organisation uses through a single standardised interface.
LLM providersFull support for traditional ML models — credit scorecards, fraud detection, propensity models. Load from pickle, joblib, or S3. The same YAML declaration, the same compliance output.
Traditional MLEvery DecisionRecord exports natively to OTLP. Send model decision traces to Datadog, Splunk, Grafana, or any SIEM your security team already monitors — no custom connectors needed.
ObservabilityEvidence packets are stored to S3 with Object Lock enabled — Write Once, Read Many. Immutable from creation. Satisfies APRA's tamper-evident retention requirements with no additional configuration.
Evidence vaultPush compliance reports directly to IBM OpenPages, ServiceNow IRM, and Workiva. Risk officers see validation status in the tools they already use — no separate portal to log into.
Coming Q4 2026Declare any model in YAML — GenAI, LLM, Monte Carlo, credit scoring, fraud detection. Run one command. The evidence vault, audit trail, and compliance reports generate automatically in the same pipeline your engineers already use.
Just as dbt handles both SQL and Python models without separate tooling, RiskAttest handles GenAI, LLMs, RAG pipelines, Monte Carlo, credit risk, and fraud models from a single YAML declaration. CLI-first. Git-compatible. Runs in any CI/CD pipeline.
Unity Catalog / Purview-style registry — every model is a governed object with tier, lineage, owner, validation status, and a sealed evidence trail. Reads directly from your MLOps catalog; no re-registration.
mrm_project.yml maps every model, its tier, its source, and the standards it must satisfy — the same file the CLI runs against.This config is what powers everything on this page. The full YAML — with per-test compliance mappings — is in the code sample just below.
| Test | Metadata | Maps to | Runtime |
|---|---|---|---|
ccr.MCConvergence Monte Carlo path convergence |
paths: 100ktol: 1e-3 | cps230 §27sr26_2 III.A | 4.2s |
ccr.ExposureBacktest EPE vs realised exposure |
window: 250dconf: 0.99 | cps230 §28 | 2.8s |
tabular.MissingValues Input completeness check |
threshold: 0% | cps230 §27 | 0.4s |
compliance.GovernanceCheck Owner, tier, review date set |
tier: tier_1 | cps230 §35osfi §3.1 | 0.1s |
ccr.SensitivityIM Initial margin sensitivity |
shock: ±25% | sr26_2 III.B | 3.1s |
Every test carries its own metadata — parameters, thresholds, and the exact regulatory paragraphs it satisfies. Namespaced (ccr.*, tabular.*, compliance.*) and pluggable via @register_test.
Results carry the actual metric, the threshold, and the trigger that fired. The WARN here tripped a review trigger — logged to the evidence packet automatically, no manual write-up.
The differentiator: every run seals an append-only, hash-chained evidence packet — model snapshot, results, replay set, and compliance mapping under one Merkle root, HSM-signed and WORM-stored. This is the artifact you hand a regulator.
models: # Traditional model — loaded from Databricks Unity Catalog - name: ccr_monte_carlo tier: tier_1 # APRA CPS 230 tiering location: type: mlflow uri: "databricks-uc://main.risk.ccr_monte_carlo@champion" tests: - test: ccr.MCConvergence params: { paths: 100000, tolerance: 1e-3 } compliance: cps230: ["27", "28"] sr26_2: ["III.A"] # GenAI model — loaded from HuggingFace Hub - name: credit_memo_llm tier: tier_2 location: "hf://ProsusAI/finbert:text-classification" tests: - test: genai.HallucinationRate - test: genai.PIILeakage - test: genai.ToxicityScore compliance: eu_ai_act: ["Annex IV §2.b"] cps230: ["27"] # Run in CI/CD — same command, dev or prod: mrm test --select tier_1+ mrm evidence freeze ccr_monte_carlo # hash-chains to S3 Object Lock mrm replay sample --model ccr_monte_carlo --n 50 mrm docs generate --compliance cps230,sr26_2,eu_ai_act
RFC-6962 Merkle roots. HMAC-SHA256 chain. KMS / HSM signing. WORM-stored on S3 Object Lock. Immutable from creation, verifiable forever.
DecisionRecord captures inputs, model identity, inference params, output. Byte-for-byte replayable. OTLP export to any SIEM.
Hallucination rate, PII leakage, toxicity, bias, semantic drift, refusal rate — covering EU AI Act Annex IV and APRA AI letter requirements.
dbt-style dependency graph. ref() across models. Topological ordering, cycle detection, parallel execution. mrm test --select +expected_loss.
158 pytest passing. 59 end-to-end acceptance checks. 5 jurisdictions. Apache 2.0 OSS core. 6 Architecture Decision Records published.
Profile-based backend switching — same YAML runs locally and in prod (S3 + Object Lock). No notebook dependency. Fits any pipeline.
Open source core on GitHub: github.com/riskattest/riskattest-core
ValidMind raised $11.1M (Point72 Ventures, 2024–26) proving the market is real. They went notebook-first. We went infrastructure-first — CLI + YAML + Git, the same bet dbt made against SQL scripts and spreadsheets.
The OSS core is on GitHub now. Cloud early access is for teams who need managed evidence vaults, HSM signing, and GRC connectors out of the box.
Get notified when RiskAttest Cloud launches — managed evidence vault, GRC connectors (OpenPages, ServiceNow, Workiva), HSM-backed signing. No spam. One email when it's ready.
Or go straight to the OSS core: github.com/riskattest/riskattest-core
Raising a $750K pre-seed to build the cloud layer, GRC connectors, and HSM evidence vault. Working OSS product. 158 tests passing. Design partner pipeline open.
Or email directly: founders@riskattest.com
Completely optional. No email required. Shapes what we build next.
Combined experience across data engineering, data product development & data/AI governance, quant finance, model risk management, product governance, and regulatory compliance at Tier-1 banks and global consultancies.
Recruiting a Head of Compliance (GDPR + AI governance) for post-seed. Get in touch.