You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -60,7 +60,13 @@ pip install -U kubeflow
60
60
```
61
61
62
62
### Run your first PyTorch distributed job
63
-
63
+
> Design notes (KEP-936 alignment)
64
+
>
65
+
> -**Why SDK-wrapping (vs direct API):** the SDK provides a single Pythonic surface for auth/config, local execution modes, and consistent orchestration across BuiltinTrainer/CustomTrainer workflows.
> **MCP suggestion:** expose `namespace` as an explicit tool parameter, and internally create/cache a per-namespace `TrainerClient`.
68
+
> -**CustomTrainer input (today):** pass a Python callable via `func=...` when constructing `CustomTrainer`. **Future/MCP-layer suggestion:** consider a `script_code: str` input (with `ast.parse` validation and denylisted imports) at the tooling layer, not as part of the current SDK.
69
+
> -**Minimal toolset stance (MCP tools, not SDK methods):** start with orchestration tools (e.g. MCP `fine_tune` wrapping `TrainerClient.train`) + observability tools (e.g. MCP `get_training_logs` / `events` wrapping `TrainerClient.get_job_logs` / `TrainerClient.get_job_events`); gate fine-grained list/get tools via persona filtering.
64
70
```python
65
71
from kubeflow.trainer import TrainerClient, CustomTrainer, TrainJobTemplate
0 commit comments