Skip to content

fix(train): discover Training Sessions models by capability keyword - #6506

Merged
mufaddal-rohawala merged 1 commit into
aws:masterfrom
992X:training-session-model-discovery
Oct 21, 2026
Merged

mufaddal-rohawala merged 1 commit into
aws:masterfrom
992X:training-session-model-discovery

Conversation

@992X

@992X 992X commented Oct 20, 2026

Copy link
Copy Markdown
Collaborator

Why

list_base_models() and base_model resolution filtered Public Hub entries on the @recipe:finetuning_mtrl_ keyword, so only models that also ship a managed MTRL recipe were discoverable. Training Sessions serves models independently of MTRL recipes (e.g. Qwen/Qwen3.8-27B).

Change

  • Keep a Hub model when it carries @capability:training_session, or, until the Public Hub publishes that keyword, when it is in the client Region's static list of models served by Training Sessions (_TRAINABLE_MODELS_BY_REGION).
  • The static list is transitional and mirrors the service's model configuration; it is removed once the keyword is live.

Tests

  • Unit: tests/unit/train/training_session/{test_utils,test_service_client}.py (252 passed), including new cases for the static list (match, per-Region, no Region).

Checklist

  • Unit tests added/updated
  • No public API signature change

@992X
992X deployed to manual-approval October 20, 2026 19:07 — with GitHub Actions Active
#: before the Public Hub publishes the capability keyword above. Mirrors the
#: service's model configuration; a listed model that is absent from a
#: Region's Hub is simply not reported there. Remove when the keyword is live.
_TRAINABLE_MODELS_BY_REGION: Dict[str, FrozenSet[str]] = {

@maheshxb maheshxb Oct 20, 2026 •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean we're going to now start maintaining this list of models in each region?

@mufaddal-rohawala mufaddal-rohawala Oct 20, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, until we have the Model Hub capability added.

#: The Public Hub publishes each model's ``Capabilities`` as
#: ``@capability:{capability}`` (lowercase) keywords; ``TRAINING_SESSION`` is
#: set per region, so the keyword is present only where the model is served.
_TRAINABLE_CAPABILITY_KEYWORD = "@capability:training_session"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we still need list below or we can directly publish our list through internal pipeline to JumpStart?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's using the "OR" condition today, once JS new capability onboarding is done, we don't have to maintain the list below.

…bility

list_base_models() and base_model resolution keep a Hub model when it
carries @capability:training_session, or, until the Public Hub publishes
that keyword, when it is in the client Region's static list of models
served by Training Sessions. Replaces the MTRL recipe keyword filter,
which listed only models that also have a managed MTRL recipe.
@992X
992X force-pushed the training-session-model-discovery branch from 09a3610 to 784f6bb Compare October 20, 2026 21:56
@992X
992X deployed to auto-approve October 20, 2026 21:57 — with GitHub Actions Active
@992X
992X deployed to auto-approve October 20, 2026 21:57 — with GitHub Actions Active
@992X
992X deployed to auto-approve October 20, 2026 21:58 — with GitHub Actions Active

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 AI code review

This PR changes Training Sessions model discovery from filtering Public Hub entries on the @recipe:finetuning_mtrl_ recipe keyword to filtering on the @capability:training_session capability keyword, with a transitional per-Region static allow-list (_TRAINABLE_MODELS_BY_REGION) for the interval before the Hub publishes the capability keyword. The change is well-contained, documented, and backed by new unit tests covering the static-list match, per-region behaviour, and the no-region case. No correctness, security, or backward-compatibility issues found; the implementation and tests look clean.

Reviewed commit 784f6bb. Automated review; verify before acting.

@mufaddal-rohawala
mufaddal-rohawala merged commit d8c17d5 into aws:master Oct 21, 2026
39 of 41 checks passed

This branch was successfully deployed

2 active (1 outdated) deployments
auto-approve — 784f6bb0 Deployed Oct 20, 2026 by 992X via wait-for-approval #2067
manual-approval — 09a36105 Deployed Oct 20, 2026 by 992X via wait-for-approval #2064
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.

4 participants