kubeflow/sdk

[SDK] Snapshot users' workspace into distributed TrainJob workload

Open

#48 geöffnet am 10. Dez. 2024

Auf GitHub ansehen
 (22 Kommentare) (6 Reaktionen) (0 zugewiesene Personen)Python (196 Forks)auto 404
help wantedkind/featurelifecycle/frozen

Repository-Metriken

Stars
 (124 Stars)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

What you would like to be added?

As we discussed earlier, we want to design an approach to snapshot users' workspace into TrainJob (e.g. distributed ML workload): https://github.com/kubeflow/training-operator/pull/2324#discussion_r1862719941. To achieve this, we plan to generate a unique TrainJob ID before submitting it to the Kubernetes control plane.

During the KubeCon 2024 demo, we demonstrated how workspace snapshotting might work: https://youtu.be/Lgy4ir1AhYw?t=458. In this demo, we pushed Python code files into S3 and then loaded them into TrainJob using initContainers.

However, we can consider various approaches, for instance:

  • Using distributed cache.
  • Using kubectl cp.

Why is this needed?

This should streamline Data Scientists user experience while working with Kubeflow Training Python SDK.

Love this feature?

Give it a 👍 We prioritize the features with most 👍

Contributor Guide