Skip to content

AI Lab

Experiments in AI-native product engineering

Every experiment here starts from a domain I've actually shipped — ERPs, marketplaces, field tools — because AI features are only as good as the systems underneath them.

RAG Systemsshipped

RAG chatbot over this portfolio

The chatbot on this site is a real retrieval pipeline: content chunked with citation metadata, hybrid retrieval (BM25 + Voyage embeddings) fused with Reciprocal Rank Fusion, top-k passages injected into Claude with inline citations you can click.

BM25Voyage EmbeddingsRRFClaude API
RAG Systemsbuilding

RAG over ERP audit trails

Retrieval-augmented answers over procurement and payment history — embeddings on audit rows, hybrid search, and citations back to source records. Built on my Construction ERP domain.

pgvectorEmbeddingsHybrid SearchNode.js
Semantic Searchbuilding

Semantic service search

'Someone to fix a leaking tap this weekend' → ranked, available professionals. Embedding search over service descriptions with availability and geo re-ranking.

EmbeddingsRe-rankingMongoDB Atlas Vector
AI Workflowsresearching

LLM-drafted purchase orders

Unstructured supplier quotes → structured PO drafts, validated by Zod schemas, approved by humans inside the existing procurement state machine. LLM output as a proposal, never a mutation.

Structured OutputZodState Machines
Prompt Engineeringresearching

Prompt-eval harness

Small harness for versioning prompts and scoring outputs against golden sets — treating prompts like code: reviewed, tested, and regression-checked.

EvalsCITypeScript
Applied MLresearching

Attendance anomaly detection

Flagging geofence spoofing and duplicate selfie patterns in field attendance data — classical features first, model second.

Feature EngineeringPythonMySQL

// principle: LLM output is a proposal, never a mutation. Every AI feature routes through the same validation, RBAC, and audit layers as a human action.