{"slug": "modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu", "title": "Modelplane v0.3: Vultr, the Anthropic Messages API, and testing without a GPU", "summary": "Modelplane v0.3 adds Vultr as an inference cluster provider, supports the Anthropic Messages API end-to-end for tools like Claude Code, improves multi-node scheduling, and introduces three new model recipes, including Nemotron-3.5-Lightning. The release also enables multi-account provisioning via per-cluster credentials and includes a local end-to-end test that requires no cloud account or GPU.", "body_md": "Modelplane v0.3 is out, our third release in the two months since we open sourced the project. Release by release, Modelplane is growing into its mission: bringing together the models, engines, clouds, and accelerators that make up the intelligence ecosystem so you can operate them as a single system under your control. And we are building it in the open.\n\nThis release adds Vultr as an inference cluster provider, serves the Anthropic Messages API end to end so tools like Claude Code can run against your own GPUs, improves multi-node scheduling, and ships three new model recipes. It also adds something for contributors: a local end-to-end test that exercises the whole system with no cloud account and no GPU. Here's what's new.\n\n## Vultr joins the fleet[#](#vultr-joins-the-fleet)\n\n[Vultr](https://www.vultr.com/) VKE is now an inference cluster provider,\nalongside GKE, EKS, AKS, and Nebius. As with the others, Modelplane provisions\nthe full cluster: VPC, control plane, system and GPU node pools and installs\nthe inference stack on top:\n\nA big thank you to the folks at Vultr, who worked with us on validating the integration and finding the right GPU plans. This is exactly the kind of collaboration we hope to repeat with other clouds, more on that below.\n\n## One control plane, many accounts[#](#one-control-plane-many-accounts)\n\nUntil now, every `InferenceCluster`\n\nauthenticated through a single\n`ClusterProviderConfig`\n\nnamed `default`\n\n, which quietly limited a fleet to one\nAWS account, one GCP project, one Azure subscription per cloud. v0.3 lifts\nthat: every cluster type now takes a `credentials`\n\nreference, so each\n`InferenceCluster`\n\ncan name the `ProviderConfig`\n\nor `ClusterProviderConfig`\n\nit\nprovisions through:\n\nOne control plane can now provision clusters across team accounts, projects, and\nsubscriptions, a production fleet in one account and experiments in another,\nwithout running a second Modelplane. Omit `credentials`\n\nand everything behaves\nas before, using the `ClusterProviderConfig`\n\nnamed `default`\n\n.\n\n## Claude Code on your own GPUs[#](#claude-code-on-your-own-gpus)\n\nModelplane now serves the Anthropic Messages API end to end. A vLLM server\nregisters `/v1/messages`\n\nalongside its OpenAI routes, and Modelplane's routing\npreserves the path below the `/<namespace>/<service>/`\n\nprefix, so the same\n`ModelService`\n\nURL answers both `/v1/chat/completions`\n\nand `/v1/messages`\n\n:\n\nAny client that speaks the Messages API works, including Claude Code: point\n`ANTHROPIC_BASE_URL`\n\nat the service address and map its model tiers onto the\nserved model name:\n\nThe details that make this actually work, the tool-calling flags that let\nClaude Code's tool use function, and why you need to cap output tokens on a\nsmall model, are in the\n[Anthropic Messages API recipe](https://docs.modelplane.ai/examples/anthropic-messages-api/).\n\n## Multi-node scheduling improvements[#](#multi-node-scheduling-improvements)\n\nMulti-node serving got two quality-of-life improvements. Modelplane now injects\n`MODELPLANE_RANK`\n\ninto every pod of a multi-node gang, 0 on the leader,\n1 through N on the workers, alongside the existing\n`MODELPLANE_LEADER_ADDRESS`\n\n, so a single worker template fans out to any number\nof nodes:\n\nAnd labels and annotations on a member's pod template now propagate through the composed workloads to the pods themselves, which is what you need for cluster-level features like service mesh injection:\n\nMalformed keys, and labels under the reserved `modelplane.ai/`\n\nprefix, are\nrejected at admission rather than failing later on the workload cluster.\n\n## Three new recipes[#](#three-new-recipes)\n\nThe [examples](https://docs.modelplane.ai/examples/) grew by three:\n\non a Nebius H100, the recipe behind[Nemotron-3.5-Lightning](https://docs.modelplane.ai/examples/nemotron-3.5-lightning/)[yesterday's day-zero post](/blog/nemotron-3-5-lightning-day-zero).Poolside's 118B code MoE (8B active) served FP8, tensor-parallel across a single 8x H100 node on Nebius.[Laguna-S-2.1](https://docs.modelplane.ai/examples/laguna/)a 72B dense model from an AWQ INT4 quantization on a single 80 GB GPU per replica, with platform manifests for both an A100 on AKS and an H100 on Nebius. The ML side is the same manifest for both, and the recipe ends by using weighted routing to split traffic between the two GPUs and compare them.[Qwen2.5-72B](https://docs.modelplane.ai/examples/qwen2.5-72b/)\n\n## Test Modelplane with no cloud and no GPU[#](#test-modelplane-with-no-cloud-and-no-gpu)\n\nv0.3 adds a local two-cluster end-to-end test that runs the full Modelplane\npath, publish capacity, register a cluster, deploy a model, route a request\nthrough the control-plane gateway, on two local `kind`\n\nclusters. A fake DRA\ndriver publishes GPUs that don't exist and a mock engine answers both the\nOpenAI and Anthropic APIs, so the real scheduling, allocation, and routing\npaths run with no cloud account and no GPU.\n\nAlongside it, the Nix-based control plane setup is now complete, with failures\nsurfaced directly from `nix run`\n\n. We're thrilled to see people starting to\nadopt Modelplane, and we want the first step to be as easy as possible: trying\nit out, validating a change, or building a contribution now takes an afternoon\nand a laptop with Docker, not a cloud bill.\n\n## Help us shape what's next[#](#help-us-shape-whats-next)\n\nModelplane now provisions inference clusters on five providers and runs on any\nKubernetes you bring. But the intelligence ecosystem is bigger than five\nclouds, there's a long tail of clouds and neoclouds we haven't integrated yet,\nand that's exactly where community contributions matter most. The provider\npattern is established: an `InferenceClass`\n\ndescribes the hardware, an\n`InferenceCluster`\n\nprovisions it, and the same `nodePools`\n\nmodel applies\neverywhere. If your GPUs live somewhere Modelplane doesn't provision yet,\n[upvote or open an issue](https://github.com/modelplaneai/modelplane/issues)\nor come talk to us about building the integration.\n\nThe same goes for testing. The local end-to-end setup means you can validate changes, chase bugs, and try Modelplane across multiple clusters without spending a cent on GPUs, so kicking the tires is now a real way to contribute. Run it, break it, and tell us what you find.\n\nThe full release notes are on\n[GitHub](https://github.com/modelplaneai/modelplane/releases/tag/v0.3.0), the\n[getting-started guide](https://docs.modelplane.ai/getting-started/) covers all\nfive providers, and questions and feedback are welcome in\n[Slack](https://slack.modelplane.ai).", "url": "https://wpnews.pro/news/modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu", "canonical_source": "https://modelplane.ai/blog/modelplane-v0-3", "published_at": "2026-08-12 00:00:00+00:00", "updated_at": "2026-08-12 15:36:18.110266+00:00", "lang": "en", "topics": ["ai-infrastructure", "ai-tools", "ai-products", "machine-learning"], "entities": ["Modelplane", "Vultr", "Anthropic", "Claude Code", "Nebius", "Nemotron-3.5-Lightning", "Poolside"], "alternates": {"html": "https://wpnews.pro/news/modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu", "markdown": "https://wpnews.pro/news/modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu.md", "text": "https://wpnews.pro/news/modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu.txt", "jsonld": "https://wpnews.pro/news/modelplane-v0-3-vultr-the-anthropic-messages-api-and-testing-without-a-gpu.jsonld"}}