mlship Plan
Year 5 Capstone. One command to deploy any ML model to production. sklearn → Llama 70B. Zero config. Zero code. The OSS project that proves Staff/Principal-level synthesis. The launch that puts the abukix name on the map.
v0/v0.5 land in Year 4 (usable for the train→deploy composition recipe). v2 is the Year 5 P30 capstone launch.
mlship is the Group B service that doubles as the Year 5 capstone OSS launch. It’s a CLI a user invokes from anywhere — mlship deploy ./model.pkl produces a deployed, served, monitored ML endpoint with auto-detection picking the right runtime per framework.
The project lands in three stages. v0 ships in Year 4 Phase 21 — a private CLI doing sklearn auto-detection + container build + deploy to local Docker or KServe-on-basecamp, just enough to make the train → register → deploy composition recipe work end-to-end. v0.5 follows in Phase 25 with PyTorch, Fargate, and Cloud Run targets. v2 is the Year 5 Phase 30 capstone — public from day 1, launched with Show HN + LinkedIn + blog + demo video, and the artifact that makes the “Staff/Principal AI Platform Engineer” claim concrete.
The differentiator is scope discipline: 2 frameworks done excellently (sklearn + HuggingFace text-generation), not 6. Other frameworks ship as v2.1+ post-launch. The space is crowded (BentoML, Cog, Truss, KServe directly), but every existing tool requires config files or code; mlship’s auto-detection + zero-config is what makes it cinematic in a 3-minute demo video.
What it is
A CLI that takes a model file (or HuggingFace ID) and produces a deployed, served, monitored ML endpoint — in one command.
mlship deploy ./model.pkl# → auto-detect sklearn; containerize; deploy local Docker; print URL
mlship deploy ./pytorch_model.pt --to k8s --cluster basecamp-k3s# → containerize with PyTorch runtime; deploy KServe via basecamp; print URL
mlship deploy hf://meta-llama/Llama-3.2-1B --quantize awq --to k8s# → fetch from HF; AWQ-quantize; deploy via vLLM on KServe; OpenAI-compat API
mlship listmlship logs my-modelmlship rollback my-modelmlship destroy my-modelWhy it exists
Three reasons:
- Career artifact. The Year 5 capstone is what makes “Staff/Principal AI Platform Engineer” claim concrete. mlship is the OSS proof.
- Brand artifact. Launch with Show HN, LinkedIn, blog post, demo video. Targets GitHub stars + real users + interest from companies hiring AI platform engineers.
- Real tool. ML engineers + DevOps engineers genuinely need this. The space is crowded (BentoML, Cog, Truss, KServe directly) but every existing tool requires config files or code; mlship’s auto-detection + zero-config is the differentiator.
Pattern it teaches
- model-lifecycle: mlship abstracts the full lifecycle
- inference-shapes: mlship picks the right runtime per model shape
- platform-as-product: zero-config IS the product
Scope
Y4 P21: v0 (private)
The minimum for the train→deploy composition recipe to work.
[ ] Go + cobra CLI[ ] sklearn auto-detect (.pkl, .joblib)[ ] Containerize: multi-stage Dockerfile, distroless runtime[ ] Deploy targets: local Docker, K8s+KServe (basecamp)[ ] REST API: POST /predict[ ] Prometheus metrics[ ] Tests: 70%+ coverage[ ] CI: GitHub ActionsY4 P25: v0.5 (private)
Add to the v0 base.
[ ] PyTorch auto-detect (.pt, .pth, TorchScript)[ ] AWS Fargate deploy target[ ] GCP Cloud Run deploy target[ ] Better error messages[ ] Tests: 80%+ coverageY5 P30: v2 capstone (PUBLIC, the launch)
The review’s scope discipline: 2 frameworks done excellently (sklearn + HuggingFace text-generation), not 6. Other frameworks ship as v2.1+ post-launch.
[ ] github.com/abukix/mlship PUBLIC + active[ ] CLI: deploy, list, logs, rollback, destroy, update[ ] Auto-detection (V2 launch): - sklearn (.pkl, .joblib) - HuggingFace text-generation (auto-route to vLLM) - HuggingFace transformers (general)[ ] Auto-detection (V2.1+ post-launch — quietly added): - PyTorch (.pt, TorchScript) - TensorFlow (SavedModel, .h5) - ONNX - Plugin model for custom frameworks[ ] Containerization: - Per-framework optimized Dockerfile - Multi-stage, distroless - Layer cache for fast rebuilds[ ] Deployment targets: - Local (Docker) - K8s + KServe (basecamp or any cluster) - AWS Fargate (serverless) - GCP Cloud Run[ ] LLM-aware: - vLLM runtime for HF text-generation - AWQ quantization option - OpenAI-compatible API (/v1/chat/completions)[ ] Standard model API: REST POST /predict for traditional models[ ] Observability out-of-the-box: Prometheus metrics, structured logs[ ] Tests: 80%+ coverage, one integration test per shipped framework[ ] CI: GitHub Actions, releases via GoReleaser[ ] Docs site (mkdocs or VitePress)[ ] 3-minute demo video[ ] Show HN post[ ] LinkedIn announcement[ ] Blog post: "Why mlship exists"When built
- v0: Year 4 Phase 21 (Month 39-40)
- v0.5: Year 4 Phase 25 (Month 47-48)
- v2 capstone: Year 5 Phase 30, Months 57-60. The 4-month launch push.
Dependencies
mlship’s deploy targets depend on infrastructure provisioned by terralabs (clusters, Fargate config, Cloud Run setup) and on basecamp Tier 5-7 being operational (KServe, vLLM, observability). platform-ctl wraps mlship as platform-ctl model deploy from Y4 P21 onward, so mlship’s stability indirectly bounds platform-ctl’s usefulness.
Stack
- Go 1.23+ (CLI core)
- Python wrapper code for ML framework auto-detection (subprocess + introspection)
- Cobra (CLI)
- Docker SDK
- K8s client-go + KServe types
- AWS SDK + GCP SDK
- pytest + go test
Success criteria (Y5 capstone)
[ ] 5+ real users (not just stars) deployed real models with mlship[ ] >100 GitHub stars in launch week (good); >1000 in first 3 months (great)[ ] One inbound conversation about "we want to use this at $COMPANY"[ ] Documented in pattern paper as the capstone artifact[ ] Show HN front-page slot OR clearly positive receptionPublic vs private
- Y4: private (v0/v0.5 used internally for composition recipes)
- Y5 P30: PUBLIC FROM DAY 1. Repo created public; first commits + README + demo video go up together. Launch is coordinated across Show HN + LinkedIn + blog + abukix.dev/blog.
Cross-references
- Phase: Year 4 Phase 21 (v0), Y4 P25 (v0.5), Y5 P30 (v2 capstone)
- Patterns: model-lifecycle, inference-shapes, platform-as-product
- Master plan context: Master Plan — Group B services
- Composition recipe: Recipe 3 — train → register → deploy
- Brand context: Abukix Studio
- Related: basecamp (deployment target), platform-ctl (wraps mlship for in-basecamp users), studio