Modelplane v0.2.0
In this release of Modelplane we've added support for Nebius and Azure AKS inference clusters. You can now drain an inference cluster, or taint it so only certain models can schedule to it. Model services now support weighted routing, which enables scenarios like canary model deployments and progressively moving traffic between model deployments - or even between a hosted inference provider and a model deployment.
Check out https://docs.modelplane.ai/getting-started/ to deploy your first inference cluster and model.
Notable Changes
- Add Nebius as an inference cluster provider by @haarchri in #340
- Add Azure AKS as an inference cluster provider by @haarchri in #346
- Support weighted traffic splitting across endpoint selectors by @negz in #349
- Activate only the managed resources Modelplane composes by @negz in #351
- Label GKE GPU node pools so the autoscaler can cold-start from zero by @negz in #332
- Restructure ModelDeployment spec under a template by @dennis-upbound in #343
- Route Unified serving through an endpoint picker by @dennis-upbound in #342
- Schedule around taints on InferenceClusters by @dennis-upbound in #344
Other Changes
- Regenerate schema lock for orphaned in-cluster resources by @negz in #270
- Add 0.1 to the docs version dropdown by @negz in #273
- fix slack links by @bassam in #277
- Fix and rebrand the docs social cards by @bassam in #276
- Add an example for collecting engine metrics by @pluna in #264
- Tag docs pageviews with the Docs Google Analytics content group by @pluna in #278
- docs: Update analytics string for prod environments only by @tr0njavolta in #280
- Point remaining Slack references at slack.modelplane.ai by @bassam in #282
- Refocus the contributor guide on the most common contributions by @negz in #308
- Fix the docs favicon head: dead refs and stale Crossplane branding by @bassam in #309
- docs: Updates thematic elements for paths and current docs features by @tr0njavolta in #312
- build: Pin the Crossplane CLI to v2.4.0 by @adamwg in #313
- Add a speculative-decoding serving example for Qwen3-8B by @pluna in #307
- docs: Pin kind cluster image version for compatibility by @tr0njavolta in #315
- Expand shortcodes in the llms.json and llms-full.txt corpora by @bassam in #271
- Redirect the docs root to the latest release by @negz in #274
- Name each serving-stack Helm release after its chart by @dennis-upbound in #314
- Set the inference gateway Service to externalTrafficPolicy Cluster by @pluna in #320
- Bump golang.org/x/net from 0.49.0 to 0.55.0 in /functions/compose-model-deployment/tests/oracle in the go_modules group across 1 directory by @dependabot[bot] in #319
- docs: memory limit kind note by @tr0njavolta in #322
- feat(auth): Authenticate existing clusters via their declared cloud identity by @haarchri in #324
- Fix external-provider ModelEndpoint example's double /v1 prefix by @negz in #328
- Update URL base for docs serving by @tr0njavolta in #336
- Move inline YAML doc examples to real manifest files by @negz in #329
- feat(nix): drop into dev shell by @haarchri in #339
- feat(nix): Forward DOCKER_CONFIG into the nix container so push can authenticate by @haarchri in #338
- fix(doc): update provider location in prereq by @haarchri in #337
- Add a Drain a Cluster page to the Platform docs by @dennis-upbound in #348
- Fix discrepancies in getting-started docs and concepts manifests by @ytsarev in #347
- Create aks/nebius get started scenarios by @tr0njavolta in #350
- Prepare for v0.2.0 release by @negz in #352
New Contributors
Full Changelog: v0.1.0...v0.2.0