Passer au contenu principal
Utilisez W&B avec Jupyter pour obtenir des visualisations interactives sans quitter votre notebook. Combinez des analyses personnalisées, des expériences et des prototypes, le tout entièrement enregistré.

Cas d’usage de W&B avec les notebooks Jupyter

  1. Expérimentation itérative : exécutez et relancez des expériences, ajustez les paramètres, et enregistrez automatiquement tous vos runs dans W&B sans avoir à prendre de notes manuellement au fil de l’eau.
  2. Enregistrement du code : lorsque vous reproduisez un modèle, il est difficile de savoir quelles cellules d’un notebook ont été exécutées et dans quel ordre. Activez l’enregistrement du code dans votre page Settings pour conserver un historique de l’exécution des cellules pour chaque expérience.
  3. Analyse personnalisée : une fois les runs consignés dans W&B, vous pouvez facilement récupérer un dataframe depuis l’API, effectuer une analyse personnalisée, puis consigner ces résultats dans W&B pour les enregistrer et les partager dans Reports.

Prise en main dans un notebook

Commencez votre notebook avec le code suivant pour installer W&B et associer votre compte :
!pip install wandb -qqq
import wandb
wandb.login()
Ensuite, configurez votre expérience et enregistrez les hyperparamètres :
wandb.init(
    project="jupyter-projo",
    config={
        "batch_size": 128,
        "learning_rate": 0.01,
        "dataset": "CIFAR-100",
    },
)
Après avoir exécuté wandb.init() , démarrez une nouvelle cellule avec %%wandb pour afficher des graphiques en temps réel dans le notebook. Si vous exécutez cette cellule plusieurs fois, les données seront ajoutées au run.
%%wandb

# Votre boucle d'entraînement ici
Essayez-le vous-même dans ce notebook d’exemple.
widget W&B pour Jupyter

Afficher des interfaces W&B en direct dans vos notebooks

Vous pouvez également afficher directement dans votre notebook des tableaux de bord, des Sweeps ou des rapports existants à l’aide de la commande magique %wandb :
# Afficher l'espace de travail du projet
%wandb USERNAME/PROJECT
# Afficher un run unique
%wandb USERNAME/PROJECT/runs/RUN_ID
# Afficher un balayage
%wandb USERNAME/PROJECT/sweeps/SWEEP_ID
# Afficher un rapport
%wandb USERNAME/PROJECT/reports/REPORT_ID
# Spécifier la hauteur de l'iframe intégrée
%wandb USERNAME/PROJECT -h 2048
Comme alternative aux commandes magiques %%wandb ou %wandb, après avoir exécuté wandb.init(), vous pouvez terminer n’importe quelle cellule par wandb.Run.finish() pour afficher des graphiques en ligne, ou appeler ipython.display(...) sur n’importe quel objet rapport, balayage ou run renvoyé par nos API.
import wandb
from IPython.display import display
# Initialiser un run
run = wandb.init()

# Si la cellule affiche run.finish(), vous verrez des graphiques en direct
run.finish()
Vous voulez en savoir plus sur ce que vous pouvez faire avec W&B ? Consultez notre guide de journalisation des données et des médias, découvrez comment intégrer W&B à vos outils ML préférés, ou consultez directement la documentation de référence ou notre dépôt d’exemples.

Fonctionnalités Jupyter supplémentaires dans W&B

  1. Authentification facile dans Colab : lorsque vous appelez wandb.init pour la première fois dans Colab, nous authentifions automatiquement votre environnement d’exécution si vous êtes déjà connecté à W&B dans votre navigateur. Dans l’onglet Vue d’ensemble de la page de votre run, vous verrez un lien vers le notebook Colab.
  2. Jupyter Magic : affichez des tableaux de bord, des Sweeps et des Reports directement dans vos notebooks. La commande magique %wandb accepte un chemin vers votre projet, vos Sweeps ou vos Reports et affiche l’interface W&B directement dans le notebook.
  3. Lancer Jupyter conteneurisé avec Docker : appelez wandb docker --jupyter pour lancer un conteneur Docker, y monter votre code, vous assurer que Jupyter est installé et le démarrer sur le port 8888.
  4. Exécutez des cellules dans n’importe quel ordre sans crainte : par défaut, nous attendons le prochain appel à wandb.init avant de marquer un run comme finished. Cela vous permet d’exécuter plusieurs cellules (par exemple, une pour configurer les données, une pour entraîner, une pour tester) dans l’ordre de votre choix et de tout enregistrer dans le même run. Si vous activez l’enregistrement du code dans les Paramètres utilisateur, les cellules exécutées seront également enregistrées, dans l’ordre et dans l’état où elles l’ont été, ce qui vous permettra de reproduire même les pipelines les plus non linéaires. Pour marquer manuellement un run comme terminé dans un notebook Jupyter, appelez run.finish.
import wandb

run = wandb.init()

# script d'entraînement et journalisation ici

run.finish()