MA
Portfolio

Area BProduction ML Platform

Imaging Inference Platform

The serving backbone · 4 models, 5 environments

One shared framework so each new clinical model ships as a thin plug-in, not bespoke infrastructure.

dissimilar AI services, one platform
4
dissimilar AI services, one platform
model repos, one CI/CD pipeline
7
model repos, one CI/CD pipeline

01/Problem

Every clinical model shares the same error-prone plumbing — study events, DICOM retrieval, eligibility, decoding, inference, standards-compliant output — identically across dev, stage, pre-prod and two production regions. Re-implementing it per model is slow and risky.

02/Approach

A shared platform library built on a template-method base class that owns the whole lifecycle — eligibility, prioritization, download, preprocess, infer, postprocess, DICOM SR/GSPS output — so each model is a thin subclass. It hosts a CNN ensemble, a classical registration cascade, cascaded classifiers and a landmark detector feeding a measurement engine. Hardening includes a multi-decoder DICOM fallback chain, per-order thread isolation and an integration suite run against a live DICOM store.

03/Outcome

  • Four architecturally dissimilar services kept live across five environments, including two production regions.
  • Every new model ships as a thin subclass — no reimplemented DICOM I/O, serving, eligibility or testing.
  • Survived a TensorFlow 2.11 → 2.20 upgrade without losing class-activation-map findings.
  • The decode-fallback chain turned a class of runtime crashes into recoverable paths.

04/My role

  • Directed consolidation of model serving onto this framework as an organizational standard, so the marginal cost of each launch fell.
  • Prioritized maintenance and framework-upgrade work against features, protecting the fleet from dependency drift.
  • Required integration tests against live DICOM stores rather than mocks.

Stack

PythonTensorFlowPub/SubGKEhighdicomCI/CD