cncf / cncf/mentoring

[CNCF LFX Proposal] OptimizationJob CRD: Hyperparameter Tuning Engine for Kubeflow Trainer

Open
#2,013 36 comments 1 reaction 0 assignees View on GitHub
2026 Awaiting CNCF Admin Approval Exported lfx mentorship Maintainer/Contribex Approved Mentors Confirmed Proposal Term 3: Sept-Nov Validation Passed
Dominant language
JavaScript
Stars
3.1k
Forks
816
Avg merge
12h 32m
Merged PRs (30d)
8

Description

### CNCF Project

Kubeflow

### Term

2026 Term 3 (Sep-Nov)

### Program Name

OptimizationJob CRD: HPO Engine for Kubeflow Trainer

### Program Description

## Description

Hyperparameter optimization is critical for maximizing model performance, and Katib has long provided it through the `Experiment` CRD. But that CRD was built for broad use cases, including Neural Architecture Search and arbitrary workloads, which makes ordinary tuning verbose, hard to validate, and reliant on a stateful helper pod and database per experiment. The community has agreed to replace it with `OptimizationJob`, a resource focused solely on tuning `TrainJob`s. That work is half finished: the design is merged, the API is in review, and the push-based metrics foundation has shipped - but nothing yet watches these resources, launches trials, reads results, or picks a winner. This project builds that missing runtime.

## Expected Outcomes

- **Tuning controller:** launches TrainJobs from the template, enforces trial budgets, injects hyperparameters, evaluates reported metrics, and records the best trial
- **Stateless suggestion service:** a short-lived, per-job companion that proposes values and is cleaned up automatically, with no database or persistent state
- **Katib compatibility layer:** translation letting the new typed API drive Katib's existing search algorithms unchanged
- **Testing:** unit, simulated-cluster, and end-to-end coverage, including failure paths
- **Documentation:** user guide, runnable examples, and migration notes for existing Katib users

### Technologies

Go, Python, Kubernetes controllers, CRDs, HPO frameworks

### Skills same as Technologies?

- [x] Yes, the required skills are the same as the technologies listed above.

### Required/Desirable Skills

_No response_

### Mentors

Tariq Hasan | @tariq-hasan | mmtariquehsn@gmail.com | tariqhasan
Aniket Shaha | @aniket2405 | aniketshaha2001@gmail.com | aniket05
Akshay Chitneni | @akshaychitneni | akshayadatta@gmail.com | akshaychitneni
Andrey Velichkevich | @andreyvelich | andrey.velichkevich@gmail.com | andreyvelich

### Upstream Issue URL

https://github.com/kubeflow/trainer/issues/3562

### Application Prerequisites

- [x] Resume
- [ ] Cover Letter
- [ ] School Enrollment Verification
- [ ] Participation Permission from school or employer
- [ ] Coding Challenge

### Coding Challenge URL

_No response_

### Custom Prerequisites

- [ ] Custom Prerequisite (fill in details below)

### Custom Prerequisite Name

_No response_

### Custom Prerequisite Description

_No response_

### Custom Prerequisite — File Upload

- [ ] Yes — completion of this task requires the mentee to submit a file.

---
**LFX program:** [CNCF - Kubeflow: OptimizationJob CRD: HPO Engine for Kubeflow Trainer (2026 Term 3)](https://mentorship.lfx.linuxfoundation.org/project/6a3ba49c-5202-4231-b86f-90b798e84997)

Contributor guide

Open the contributing guide

Research direction

Start with upstream issue #3562 and the merged OptimizationJob design, API under review, and push-based metrics foundation described here; no implementation files or tests are named. Done means delivering the controller, stateless suggestion service, Katib compatibility layer, failure-path tests, and user documentation listed in the expected outcomes.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes, python
Domain
backend, infrastructure, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.