Skip to content

Typology Library

Search money-laundering typologies and red flags by description.

Industry Level Difficulty Recommended mode
Anti-money laundering 1 of 5 Beginner flat
  • Typology knowledge is spread across reports.
  • New investigators lack experience.
  • Red flags are described differently.
  1. Typologies and red-flag descriptions are embedded.
  2. Case descriptions retrieve matching typologies.
  3. Local and confidential.
  4. Updated with new guidance.
Today With Typology Library on SrvDB
Searching reports Instant typologies
Experience gaps Shared knowledge
Inconsistent terms Meaning-based
  1. Collect typologies.
  2. Embed.
  3. Search.
  4. Train staff.
  5. Update.
  • Exact search (flat): every query compares against every stored vector, so results are exact and explainable.
  • upsert: inserts new items and replaces changed ones, so the knowledge base stays current.
  • Crash-safe persist(): after it returns, data survives a crash or power loss and reopens exactly as committed.
  • Fully offline: SrvDB runs in-process and never opens a network connection.
  • Trade-based laundering
  • Structuring
  • Shell companies
  • Crypto patterns
  • Real-estate laundering
  • Mule networks

embed() is your embedding model (for example sentence-transformers, or a function that turns your records into feature vectors).

import json
import srvdb
db = srvdb.Database("./typology-library-db", dimension=384)
def ingest(items):
"""items: list of (id, text, metadata dict)"""
db.upsert(
ids=[i for i, _, _ in items],
embeddings=[embed(t) for _, t, _ in items],
metadatas=[json.dumps(m) for _, _, m in items],
)
db.persist() # crash-safe checkpoint
def matching_typologies(case_description, k=5):
hits = db.search(embed(case_description), k)
return [(json.loads(db.get(i)), round(score, 3)) for i, score in hits]
  • Use alongside regulatory guidance.
  1. Prototype: load a sample of real data with flat mode and check that searches return what an expert expects.
  2. Measure: if you move to an approximate mode, compare its results with flat on the same queries (recall).
  3. Pipeline: add continuous upsert and decide when to call persist().
  4. Harden: test restarts and crashes, add logging, review every output path with domain experts.
  5. Deploy: ship the database directory with the application or service.
Level Project What it does
1 · Beginner Typology Library (this page) Search money-laundering typologies and red flags by description.
2 · Intermediate Alert Prioritizer Ranks AML alerts by similarity to past true and false positives.
3 · Advanced Adverse Media Matcher Deduplicates and matches adverse media to customers.
4 · Expert AML Investigation Agent An investigator agent with memory across cases, typologies and media.
5 · Frontier Emerging Typology Radar Detects clusters of cases far from every known typology.

See also: Use cases · Live examples (coming soon)