-
Notifications
You must be signed in to change notification settings - Fork 53
Open
Description
What you would like to be added?
With the successful release of local execution mode for the TrainingClient, it would be great to extend this capability to the OptimizerClient for optimizing TrainJobs locally without requiring Kubernetes.
from kubeflow.optimizer import OptimizerClient, ContainerBackendConfig, Search, TrialConfig
client = OptimizerClient(backend_config=ContainerBackendConfig())
# Create OptimizationJob with the same template
optimization_id = client.optimize(
trial_template=template,
trial_config=TrialConfig(num_trials=10, parallel_trials=2),
search_space={
"learning_rate": Search.loguniform(0.001, 0.1),
"num_epochs": Search.choice([5, 10, 15]),
},
)
print(f"OptimizationJob created: {optimization_id}")Running optimization jobs locally would help Data Scientists quickly prototype and validate their tuning strategies before deploying to production without needing to deal with cluster complexity
Why is this needed?
Delivering local execution mode across different clients in Kubeflow SDK, including for optimization models will significantly improve usability.
Love this feature?
Give it a 👍 We prioritize the features with most 👍