Skip to content

Unify trainer reconciliation and validate records at the KV boundary - #11

Open
kailash109 wants to merge 2 commits into
mainfrom
unify-trainer-reconciliation
Open

kailash109 wants to merge 2 commits into
mainfrom
unify-trainer-reconciliation

Conversation

@kailash109

Copy link
Copy Markdown
Collaborator

Summary

  • Shared, scoped, and local deployments now scale trainers through one reconciler. Scoped runs use the same path with limits of 0–1 instances and one model per instance, instead of a separate reconciler or parameterization-based routing.
  • Definition selection is one alias map: an explicit definition id, or the first recipe registered for a Hugging Face model name. Sampling sessions require an engine definition id.
  • Durable session, model, placement, and sampling records are validated once at the KV boundary, and legacy untyped sampling-session records are no longer accepted.
  • Package metadata, distribution checks, and publish workflows prepare the modal-spindle PyPI release. deploy_models.sh includes the 128k Qwen LoRA recipe and deploys through uv on Python 3.12.

Test plan

  • Run the CPU pytest suite
  • Create a model and confirm trainer_demand is written and reconciliation scales trainers for that definition
  • Request a model by Hugging Face name and by explicit definition id, and confirm the first registered recipe is the name default
  • Run uv build and scripts/check_distribution.py

Made with Cursor

kailash109 and others added 2 commits September 30, 2026 17:55
…oundary.

Shared, scoped, and local deployments now scale trainers through one path, with scoped runs limited to a single instance, and definition lookup is an explicit id or the first model-name alias.

Co-authored-by: Cursor <cursoragent@cursor.com>
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