LiveIndustry-Specific

Ensemble

Forensic AI-writing detection. Three detectors combined by a trained meta-learner, with sentence-level evidence instead of one opaque percentage.

Ensemble interface

The Problem

Most AI checkers spit out '37% AI' with no defensible evidence. Ensemble runs three detectors (stylometric, modernbert, binoculars) combined by a trained meta-learner, then explains the verdict with token-level attribution and sentence evidence. Uncertain is a first-class output, not a failure.

Architecture

FastAPI on AWS Lambda for orchestration

Modal serverless GPU with scale-to-zero economics

DynamoDB + S3 split (control plane vs large payloads)

Bedrock Claude Haiku for explanations only, not decisions

Stripe credit wallet on an immutable append-only ledger

SST for stage-isolated deploys

Engineering Decisions

Why stack models?

Each method fails on different inputs. Combining them beats any one model in testing, especially on paraphrased text.

Why Modal over SageMaker?

SageMaker had cost-at-idle and capacity deadlock issues that killed deploy velocity. Modal scales to zero properly and warm-resumes fast. The migration was painful, the GPU bill dropped and deploys got simpler.

Why split verdict from explanation?

Scoring stays deterministic and stable. Explanation is additive, cacheable, optionally LLM-rendered after a verifier. So I can iterate on prose without destabilising verdicts.

Highlights

Three detectors in the primary production path; legacy ensemble runs in parallel as shadow telemetryToken-level attribution via ModernBERT attention grounds every explanationVerdict path and explanation path deliberately separated for safer iterationLive SaaS with credit wallet, Stripe billing, and a full audit ledger

Stack

Next.js 15FastAPILambdaModalDynamoDBS3Bedrock ClaudeCognitoStripeSST