Skip to content

Restore the Kimi-K2 recipe with the endpoint picker template - #560

Draft
dennis-upbound wants to merge 1 commit into
modelplaneai:mainfrom
dennis-upbound:dennis/restore-kimi-k2
Draft

dennis-upbound wants to merge 1 commit into
modelplaneai:mainfrom
dennis-upbound:dennis/restore-kimi-k2

Conversation

@dennis-upbound

Copy link
Copy Markdown
Collaborator

Description of your changes

The docs home page shows an empty Moonshot AI card. #529 (24a5cdd) removed the Kimi-K2 recipe, the only Moonshot AI one, because its ModelDeployment named the endpoint picker by image alone, which serving.endpointPicker no longer accepts.

This is the alternative to #559, which removes the card instead. Merge one and close the other.

This PR brings the recipe back with the picker written as a pod template. The template is copied from docs/manifests/concepts/model-deployment-disaggregated.yaml, which uses the same llm-d v0.9.0 picker image and plugins and ran live on GKE as a vLLM NIXL prefill/decode pair. Nothing else in the recipe changes: same engines, sidecar, picker config, H200 class and cluster.

Verified without GPUs:

  • docs-manifests validates all 145 manifests, including the five restored ones, and docs-vale has no findings in the recipe page.
  • The deployment composes through compose-model-replica's routing code: a picker Deployment, its ConfigMap and the InferencePool, with the MODELPLANE_* pool, port and config variables set.
  • That picker started on kind with this config. It loaded every plugin, read the recipe's own parameters (maxPrefixBlocksToMatch: 256, lruCapacityPerServer: 31250), served on 9002 and 9003, and went Ready with no errors.

Needs judgment: the routing still hasn't run live on H200s, and the recipe page says so, as it did before it was removed. A live run needs two p5en.48xlarge nodes with EFA. The earliest EC2 Capacity Block for those is Saturday, about $3K for 24 hours.

I have:

  • Read and followed Modelplane's contribution process.
  • Run nix flake check (or ./nix.sh flake check) and made sure it passes. Ran the docs-manifests and docs-vale checks, the only ones these files reach; CI runs the rest.
  • Added or updated tests covering any composition function changes. Docs only.
  • Signed off every commit with git commit -s.

🤖 Generated with Claude Code

24a5cdd removed the Kimi-K2 recipe because its ModelDeployment named the
endpoint picker by image alone, which serving.endpointPicker no longer
accepts. That left the docs home page with an empty Moonshot AI card.

The recipe comes back with the picker written as a pod template. Its
command line is the one the Qwen3-8B prefill/decode concept manifest uses,
which ran live on GKE with the same picker image and plugins. Nothing else
in the recipe changes.

Verified without GPUs: the manifests validate against the generated
models, the deployment composes through compose-model-replica's routing
code, and the picker started on kind with this config, parsed its
parameters and went Ready. The recipe still says its routing hasn't run
live, as it did before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Dennis Ramdass <dennis@upbound.io>
@dennis-upbound

Copy link
Copy Markdown
Collaborator Author

@negz @haarchri two ways to fix the empty Moonshot AI card on the docs home page: this PR restores the Kimi-K2 recipe, checked without GPUs, and #559 removes the card until Kimi-K2 runs live. Your pick; I'll close the other.

@github-actions

Copy link
Copy Markdown

Docs preview: https://modelplane-docs-pr-560.vercel.app (ready once the site's Content workflow finishes)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant