Passer au contenu principal
Serverless Sandboxes est en préversion publique.
Dans ce tutoriel, vous entraînez un modèle PyTorch dans un environnement Serverless Sandbox. Pour ce faire, vous démarrez un sandbox avec les variables d’environnement appropriées, installez les dépendances nécessaires et exécutez un script Python. Le script entraîne un réseau de neurones sur le jeu de données UCI Zoo. À la fin de ce tutoriel, vous disposez d’un fichier de modèle PyTorch entraîné enregistré localement. Cela montre comment utiliser un Serverless Sandbox pour exécuter des charges de travail d’entraînement ML isolées sans avoir à configurer d’infrastructure locale. Ce tutoriel s’adresse aux praticiens du ML et aux développeurs qui souhaitent évaluer Serverless Sandboxes pour des tâches d’entraînement reproductibles.

Prérequis

Avant de commencer, suivez les étapes de configuration suivantes.

Installez le SDK Python de W&B

Le SDK Python de W&B fournit l’interface Sandbox, que vous utiliserez plus tard pour créer le Serverless Sandbox et interagir avec lui. Installez-le à l’aide de pip :

Connectez-vous et authentifiez-vous auprès de W&B

Les Serverless Sandboxes W&B s’exécutent dans votre compte W&B, vous devez donc vous authentifier avant d’en créer un. Utilisez la commande CLI wandb login et suivez les instructions pour vous connecter :
Voir la documentation de référence wandb login pour plus d’informations sur la manière dont W&B recherche les informations d’authentification.

Copiez le script d’entraînement et les dépendances

Préparez les trois fichiers requis pour ce tutoriel : un fichier requirements, un fichier d’hyperparamètres et un script d’entraînement. Ouvrez le menu déroulant ci-dessous, puis copiez chaque exemple de code dans un fichier distinct dans le même répertoire que ce tutoriel. Dans la section suivante, vous exécuterez un script qui lit ces fichiers et entraîne un modèle PyTorch dans un W&B Serverless Sandbox.
Copiez-collez le code suivant dans un fichier nommé requirements.txt. Ce fichier contient les dépendances du script d’entraînement.
requirements.txt
Copiez-collez le code suivant dans un fichier YAML nommé hyperparameters.yaml. Ce fichier contient les hyperparamètres du script d’entraînement.
hyperparameters.yaml
Copiez-collez le code suivant dans un fichier nommé train.py. Ce script entraîne un modèle PyTorch sur le jeu de données UCI Zoo et enregistre le modèle entraîné dans un fichier nommé zoo_wandb.pth.
train.py

Créer le sandbox et exécuter le script d’entraînement

Une fois vos fichiers d’entraînement en place, créez et gérez un W&B Serverless Sandbox à partir d’un seul script Python. L’extrait de code suivant crée un sandbox, y copie le script d’entraînement et les dépendances, exécute le script d’entraînement, puis télécharge le fichier de modèle généré. La section suivante explique le code, ligne par ligne. Copiez-collez le code suivant dans un fichier Python et exécutez-le. Enregistrez-le dans le même répertoire que les fichiers train.py, requirements.txt et hyperparameters.yaml que vous avez créés à l’étape précédente.
train_in_sandbox.py
L’extrait de code précédent effectue les opérations suivantes :
  1. (Lignes 6 à 9) Liste les fichiers à monter dans le sandbox : train.py et requirements.txt.
  2. (Ligne 12) Démarre le sandbox. Le sandbox est configuré pour utiliser l’image de conteneur python:3.13, disposer d’un accès à Internet et avoir une durée de vie maximale de 3 600 secondes (1 heure).
  3. (Ligne 18) Écrit le fichier hyperparameters.yaml dans le sandbox. Cela permet au script d’entraînement (train.py) d’accéder aux hyperparamètres lorsqu’il s’exécute.
  4. (Ligne 22) Installe les dépendances. La commande pip install -r requirements.txt est exécutée dans le sandbox pour installer les dépendances nécessaires au script d’entraînement.
  5. (Ligne 26) Exécute le script d’entraînement. La commande python train.py --config hyperparameters.yaml est exécutée dans le sandbox pour démarrer le processus d’entraînement. Le script entraîne un modèle PyTorch sur le jeu de données UCI Zoo et enregistre le modèle entraîné dans un fichier nommé zoo_wandb.pth.
  6. (Lignes 27 à 29) Affiche la sortie et le code de sortie. Une fois l’exécution du script d’entraînement terminée, la sortie standard, la sortie d’erreur standard et le code de sortie sont affichés dans la console à des fins de débogage et de vérification.
  7. (Lignes 33 à 34) Télécharge le fichier de modèle généré. Le fichier zoo_wandb.pth est lu depuis le sandbox à l’aide de la méthode read_file() et enregistré localement.
Une fois le script terminé, vous disposez d’un modèle PyTorch entraîné enregistré sous le nom zoo_wandb.pth dans votre répertoire de travail. Le sandbox qui l’a produit est créé, utilisé, puis supprimé à la demande.