Models that survive the model-risk review
Our delivered financial work is an AI chief of staff for a family office: seven agents, a document-intelligence pipeline across 25 document types, and a temporal knowledge graph where every extracted value carries its source quote. The systems below are what that engineering becomes in banking — fraud scoring against a low-millisecond budget, credit decisions carrying their reason codes, screening costed per case — built inside your own environment.
6
workloads, each shipped with its model-risk pack
1
environment: yours, with no egress where scope demands it
0
automated credit decisions without a reason code

Six workloads, each with its artefact pack
Every one ships as an inference service plus the model card, validation report, drift dashboards and challenger registry — so second-line review passes on the first cycle rather than the third.
Real-time fraud and scam detection
A feature pipeline computing hundreds of signals per transaction — velocity over one minute, one hour and a day, device fingerprint, geo-velocity, BIN-MCC mismatch, behavioural biometrics — with graph networks over the counterparty graph to surface mule rings before they cash out.
Credit risk and explainable underwriting
A hybrid scorecard plus gradient-boosted model: the scorecard owns the explainable backbone, the model owns the residual lift, and both go through challenger review. Reason codes are generated at decision time and mapped to disclosure language.
AML, KYC and sanctions screening
Entity resolution across the consolidated sanctions, politically-exposed-person and adverse-media corpora, with phonetic and transliteration matching for non-Latin scripts, plus typology-aware transaction monitoring and peer-group anomaly detection.
Quantitative and algorithmic execution
Backtesting with survivorship-bias correction, point-in-time fundamentals and realistic slippage models; risk-aware execution with pre-trade analysis, parent-child order slicing and venue selection across lit, dark and RFQ pools.
Conversational banking with an audit trail
Every model call logged with prompt, retrieved context, tool calls, response and customer identifier, retained to the regulatory window — with hard guardrails on dispensable actions: the model proposes, a deterministic policy engine and step-up authentication dispose.
Churn, lifetime value and next-best-action
Survival models that predict time-to-attrition rather than a static flag, so retention teams know when to intervene; uplift modelling so offers go to customers whose behaviour actually changes.
Every automated decision carries its reasons
A decision a customer cannot be told the reasons for is a decision you cannot make automatically.
Reason codes are generated at decision time and mapped to the disclosure language your regulator expects — not reconstructed afterwards from a model that has already answered. Fair-lending tests run before deployment, not after a complaint: disparate impact across protected classes, parity of discrimination, and calibration drift by segment. Our architectures are aligned with SOC 2, ISO 27001, GDPR and PCI-DSS practices; we hold no formal certification and do not imply one.
Money does not move in JSON
It moves in ISO 20022, FIX and SWIFT. Trades have to be reconstructable years later, and a late-arriving fact in a fraud table is a chargeback in court. That shapes the whole pipeline.
Payments and messaging protocol fluency
ISO 20022 with full schema validation and structured remittance preserved end to end; FIX for order flow and binary feeds for tick data; message transformation with field-level lineage, so reconciliation can trace any cent back to its original message.
Trade reconstruction and retention
A time-synchronised event log across order, market data, voice, chat and email, aligned to the microsecond — and playback that rebuilds any executed order from raw events on demand.
Ledger change-capture and exactly-once streams
Log-based change data capture from the core banking platform, never query-based; topics partitioned by account key with idempotent producers and transactional consumers, so the ledger and the lake agree.
Schema governance
A registry enforcing forward and backward compatibility, so a release never breaks a downstream consumer that nobody remembered was listening.
Market data and time series
Storage and query paths designed for the shape of the question, so a risk run and a tick-level lookup are not fighting over the same index.
Deployment topology for cardholder data
The full model lifecycle — training, registry, drift monitoring — inside your own environment, with no internet egress required where the scope demands it.
The systems behind the sector
Nothing here is bespoke to finance for its own sake. Each of these is a system we build in other sectors too, configured to what banking demands of it.
Document intelligence
The eight-stage pipeline behind statement, subscription and capital-call parsing, with per-field confidence and evidence.
See how it is built →Knowledge graphs and GraphRAG
Beneficial-owner networks and exposure chains, where the question is a traversal and a flat lookup cannot answer it.
See how it is built →Agent orchestration
Supervisor and specialist topology with guardrails written in code, state checkpointing and traces on every decision.
See how it is built →Multi-tenant platform
Tenant isolation at the data layer, per-tenant credential vaulting and metered spend — the shape a bank's own platform needs.
See how it is built →Voice AI
Grounded answers with sentiment-triggered escalation, for account servicing where the caller expects a person eventually.
See how it is built →The full service map
Agents, retrieval, document intelligence, voice, data engineering and cloud — the practice these systems come out of.
See how it is built →
Engineering questions
Asked by risk, compliance and platform teams
Every automated credit decision ships with a SHAP-derived reason-code stack - typically the top 4–6 features in plain language, mapped to FCRA / Reg B / GDPR-acceptable disclosure phrasing. The model itself is a hybrid: a monotonic scorecard backbone (auditor-readable) plus a constrained gradient-boosted residual model. We document the data sources, training window, and segment-level fairness tests in a model card the applicant can request. For higher-stakes decisions (decline above a threshold, adverse-action on existing limits), we add a human-in-the-loop review step so the decision is not 'solely' automated within the Article 22(1) definition.
The latency budget on card-not-present traffic is set by the authorisation network, and the architecture is built to fit inside it end-to-end (ingress → score → response). Stack: pre-computed user/merchant/device features in Redis with a 50ms refresh budget, a quantised gradient-boosted model served from C++ via Triton, and graph features (mule-network proximity) computed offline and joined at read. We keep the hot path under 200 features; the heavy graph and behavioural signals run on a 5-minute streaming window and are checkpointed. We have also evaluated edge inference - co-locating the model at the issuer-processor boundary - which cuts network time at the cost of feature staleness.
We treat SR 11-7 as the development methodology, not a documentation tax. Each model gets: (1) a conceptual soundness write-up - why this technique, why these features, references to literature; (2) an outcomes analysis with backtesting, benchmarking against the existing model, and stability testing; (3) an ongoing monitoring plan with PSI on features, KS on scores, and outcome-based drift; (4) a challenger model maintained in shadow. The artefact pack feeds straight into the bank's MRM team. We have second-line validation review built into our release gate - a model does not promote to production without sign-off from the bank's independent validators.
Yes - that constraint shapes the architecture. We never write back to the core synchronously on the customer path; reads use the core's standard read replicas or a CDC stream into our analytical store. For Temenos T24 we use T24 Browser API plus the TAFC log stream; for FIS Profile, the IBS adapter; for Fiserv DNA, the OpenBank API; for Finacle, FI-direct and connect24. End-of-day batch windows are sacred - our pipelines respect cutover times and resume from CDC checkpoints once the batch is clean. The integration is designed so the batch window is never in the blast radius.
Three layers. First, in data: we do not feed protected-class variables, and we audit proxies (e.g. ZIP code is a known race proxy in the US - we use it with caution and bias-aware transforms). Second, in training: adversarial debiasing or constrained optimisation so the model cannot improve AUC by exploiting protected-class signal. Third, in validation: standardised disparate-impact analysis (80% rule), AUC parity, calibration parity, and an adverse-action consistency check. We publish a fair-lending technical report with every deployment, including statistical tests and the boundary cases the model gets wrong. CFPB Circular 2022-03 made explainability a regulatory requirement - our reason codes are designed to clear that bar.
We ship a self-hosted MLOps bundle: MLflow model registry, Argo Workflows for orchestration, Prometheus + Grafana for monitoring, a private container registry (Harbor), and a pip/conda mirror seeded from an approved package list. Updates come in over a one-way diode or as signed offline bundles, scanned at the air-gap boundary. Training data never leaves the enclave; model weights are versioned in-bank. The trade-off is slower iteration: a new dependency takes a week to clear, not five minutes.
Yes - and we strongly recommend it for any system that touches PAN, CVV, or full track data. Our reference deploy on AWS uses a dedicated VPC with PrivateLink endpoints (no public internet), KMS with customer-managed keys, VPC Flow Logs to your SIEM, and Macie for PII discovery. On Azure: Private Link + Key Vault HSM. On GCP: VPC-SC perimeters with CMEK. We tokenise PANs at the perimeter wherever possible so analytics, ML training, and inference operate on tokens - the cardholder data environment stays small and the PCI-DSS audit scope stays bounded. We can support FIPS 140-2 Level 3 HSMs where required.
We do not pretend the trade-off does not exist - we manage it. For low-stakes, high-volume decisions (e.g. routing a fraud alert to queue A or B), pure gradient-boosted or even neural models are fine and SHAP is sufficient post-hoc. For high-stakes regulated decisions (credit underwriting, AML SAR filing recommendations, robo-advisor allocations), we use intrinsically interpretable models: monotonic scorecards, GAMs (EBMs), or constrained GBMs where every feature has a known sign on the outcome. There is an AUC cost versus a free GBM - we measure it on your own portfolio rather than quoting an average - and it is worth paying when the regulator asks why a customer was declined.
Bring your model-risk reviewer to the first call
This is our AI engineering practice
It is real work and it is where our four products came from. But what Cognilium leads with is narrower: optimization apps that run in tandem with Microsoft Dynamics 365, computing the decisions the ERP records but does not derive — the optimal price, the optimal pick path, the optimal stock level. See the optimization apps · How we build inside the ERP.






