πŸ—οΈ Architecture Options

Two paths to build the AML Investigator Copilot

πŸ”§
Option A
Modular Microservices
76%
Team Size 9 people
MVP 4 months
v1.0 8 months
3-Year TCO $5.85M
Best For Enterprise scale
πŸ•ΈοΈ
Option B
Graph-Centric RAG
79% ⭐
Team Size 5 people
MVP 2.5 months
v1.0 5 months
3-Year TCO $2.97M
Best For Fast iteration

πŸ“Š Detailed Ratings

Criterion Option A Option B Winner
Market Fit 85% 80% πŸ”§ A
Technical Feasibility 75% 85% πŸ•ΈοΈ B
Time to Market 60% 90% πŸ•ΈοΈ B
Scalability 90% 70% πŸ”§ A
Cost Efficiency 65% 90% πŸ•ΈοΈ B
Competitive Moat 80% 60% πŸ”§ A

πŸ”§ Option A: Modular Microservices

Philosophy: Specialized models per task, maximum customization, enterprise-grade scalability.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ INVESTIGATOR UI (React) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ API GATEWAY (Kong) β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β–Ό β–Ό β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ ENTITY SERVICEβ”‚ β”‚DOCUMENT SERVICEβ”‚ β”‚REASONING SERVICEβ”‚ β”‚ β€’ Resolution β”‚ β”‚ β€’ OCR/Extract β”‚ β”‚ β€’ Inconsistencyβ”‚ β”‚ β€’ Risk Score β”‚ β”‚ β€’ Classificationβ”‚ β”‚ β€’ Capacity β”‚ β”‚ β€’ Network Map β”‚ β”‚ β€’ NER/Parsing β”‚ β”‚ β€’ Signals β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ MESSAGE BUS (Kafka) + EVENT SOURCING β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β–Ό β–Ό β–Ό PostgreSQL Elasticsearch Milvus (Cases/Audit) (Full-text) (Vectors) β”‚ MODEL SERVING (vLLM) 4-8x A100 GPUs

Tech Stack

LLMLlama 3.1 70B
ServingvLLM + Triton
GraphNeo4j
VectorMilvus
SearchElasticsearch
QueueKafka
DBPostgreSQL
K8sOpenShift

Timeline

Months 1-2
Infrastructure + core data pipeline
Months 2-3
Document processing + basic entity service
Months 3-4
Simple reasoning (8B model) + basic UI β†’ MVP
Months 5-8
Fine-tuned models, full UI, audit system β†’ v1.0

Cost (3-Year)

$1.25M
Infrastructure
$4.2M
Personnel (9 FTE)

Pros

Cons

πŸ•ΈοΈ Option B: Graph-Centric RAG

Philosophy: Unified knowledge graph + single LLM, simpler operations, faster iteration.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ INVESTIGATOR UI (Next.js) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ UNIFIED API (FastAPI) β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ ORCHESTRATION (LangGraph) β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚ Pre-Decisionβ”‚ β”‚ Document β”‚ β”‚ Ad-hoc β”‚ β”‚ β”‚ β”‚ Agent β”‚ β”‚ Agent β”‚ β”‚ Query β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β–Ό β”‚ β”‚ UNIFIED LLM (Llama 70B / Mixtral) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β–Ό β–Ό β–Ό KNOWLEDGE DOCUMENT STORE AUDIT LOG GRAPH PostgreSQL + PostgreSQL (Neo4j) pgvector (Event Source)

Tech Stack

LLMLlama 70B / Mixtral
OrchestrationLangGraph
GraphNeo4j
Vectorpgvector
DocsUnstructured.io
QueueRedis Streams
DBPostgreSQL
K8sK3s

Timeline

Weeks 1-3
Infrastructure + graph setup + ingestion
Weeks 4-6
LLM integration, basic agents, copilot UI
Weeks 7-10
Document extraction, entity 360 β†’ MVP
Months 3-5
Advanced graph, audit system, export β†’ v1.0

Cost (3-Year)

$494K
Infrastructure
$2.33M
Personnel (5 FTE)

Pros

Cons

πŸ’‘ Recommendation

Start with Option B, evolve toward Option A

Get to market in 2.5 months with core functionality. Learn from real users. Add Option A components (fine-tuned models, specialized services) only where needed. If traction with large banks in Year 2, invest in full microservices architecture.

🎯 Progressive Complexity Approach

Phase 1: MVP (Option B)
Get to market in 2.5 months with core copilot functionality
Phase 2: Learn
Understand actual workflows and pain points from real users
Phase 3: Scale Selectively
Add Option A components only where data shows you need them
Phase 4: Enterprise (Year 2+)
If traction with large banks, invest in full Option A infrastructure
This optimizes for:
  • Fast market validation
  • Lower initial capital burn
  • Reduced technical risk
  • Flexibility to pivot based on learnings