Skip to content

feat: KEP-3562: Add Phase 2 Kubeflow SDK integration design - #3881

Open
Sridhar1030 wants to merge 3 commits into
kubeflow:masterfrom
Sridhar1030:kep/2605-phase2-sdk-integration
Open

feat: KEP-3562: Add Phase 2 Kubeflow SDK integration design#3881
Sridhar1030 wants to merge 3 commits into
kubeflow:masterfrom
Sridhar1030:kep/2605-phase2-sdk-integration

Conversation

@Sridhar1030

@Sridhar1030 Sridhar1030 commented Aug 9, 2026

Copy link
Copy Markdown
Member

This PR adds the Phase 2: Kubeflow SDK Integration section to the OptimizationJob proposal introduced in #3565, following the direction agreed on the Kubeflow SDK & ML Experience call (2026-07-29): keep the single TrainerClient(), start with TrainerClient().optimize().

What this defines:

  • TrainerClient().optimize() and its lifecycle APIs — the same client and the same TrainJobTemplate are used for both training and hyperparameter optimization
  • How trials consume suggestions: automatic func_args override for CustomTrainer (no user code changes), get_hyperparameters() for custom containers and builtin trainers
  • report_metrics() for reporting the objective metric
  • Backend-neutral Search types, removing the kubeflow-katib-api dependency from the trainer-native path
  • Migration plan from the Katib-backed OptimizerClient
  • Open questions for review: lifecycle method naming, generated Python models

SDK prototype (on hold pending this design): kubeflow/sdk#726

Part of #3794

Add the SDK client API design for OptimizationJob per the SDK & ML
Experience call (2026-07-29): single TrainerClient with optimize(),
get_hyperparameters() helper, SDK-to-CRD type mappings, and the
migration path from the Katib-backed OptimizerClient.

Part of kubeflow#3794

Signed-off-by: Sridhar1030 <sridharpillai75@gmail.com>
Signed-off-by: Sridhar1030 <sridharpillai75@gmail.com>
Copilot AI balanced review requested due to automatic review settings August 9, 2026 08:46

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@google-oss-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign johnugeorge for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@Sridhar1030 Sridhar1030 changed the title KEP-3562: Add Phase 2 Kubeflow SDK integration design feat: KEP-3562: Add Phase 2 Kubeflow SDK integration design Aug 9, 2026
Signed-off-by: Sridhar1030 <sridharpillai75@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants