Accelerate documentation

Suiveurs d'expérimentations

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.15.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Suiveurs d'expérimentations

GeneralTracker

classe accelerate.tracking.GeneralTracker

< >

( _blank = False )

Une classe Tracker de base à utiliser pour toutes les implémentations d’intégration de journalisation.

Chaque fonction doit recevoir **kwargs, qui seront automatiquement transmis depuis un dictionnaire de base fourni à Accelerator.

Doit implémenter les propriétés name, requires_logging_directory et tracker de manière à ce que :

name (str) : Représentation en chaîne du nom de la classe de tracker, par exemple « TensorBoard ». requires_logging_directory (bool) : Indique si le logger nécessite un répertoire pour stocker ses journaux. tracker (object) : Doit retourner le mécanisme de suivi interne utilisé par une classe de tracker (comme run pour wandb).

Les implémentations peuvent également inclure un attribut main_process_only (bool) pour déterminer si les fonctions de journalisation, d’initialisation et autres pertinentes doivent s’exécuter sur le processus principal ou sur tous les processus (la valeur par défaut est True).

finish

< >

( )

Doit exécuter les fonctions de finalisation au sein de l'API de suivi. Si l'API ne doit pas en avoir, il suffit de ne pas réécrire cette méthode.

log

< >

( values: dictstep: int | None = None**kwargs )

Paramètres

  • values (Dictionnaire str vers str, float ou int) — Valeurs à consigner sous forme de paires clé-valeur. Les valeurs doivent être de type str, float ou int.
  • step (int, facultatif) — L'étape d'exécution. Si incluse, la journalisation sera associée à cette étape.

Enregistre les values dans l'exécution en cours. Les implémentations de base de log d'une API de suivi doivent être placées ici, ainsi que le comportement particulier du paramètre `step`.

démarrer

< >

( )

Initialisation paresseuse du tracker dans Accelerator afin d'éviter d'initialiser PartialState avant InitProcessGroupKwargs.

store_init_configuration

< >

( values: dict )

Paramètres

  • values (Dictionnaire str vers bool, str, float ou int) — Valeurs à stocker en tant qu’hyperparamètres initiaux sous forme de paires clé-valeur. Les valeurs doivent être de type bool, str, float, int ou None.

Enregistre les values en tant qu'hyperparamètres pour l'exécution. Les implémentations doivent utiliser la fonctionnalité de configuration d'expérience d'une API de suivi.

register_tracker_class

accelerate.tracking.register_tracker_class

< >

( tracker_class: type )

Paramètres

  • tracker_class (sous-classe de GeneralTracker) — La classe de tracker à enregistrer. Elle doit être une sous-classe de GeneralTracker et définir un attribut de classe name non vide ainsi qu'un attribut de classe requires_logging_directory. La classe est instanciée avec le project_name transmis à Accelerator.init_trackers() en tant que premier argument positionnel. Lorsque requires_logging_directory est True, le répertoire de journalisation est transmis en tant que deuxième argument positionnel (conformément à la convention des trackers intégrés). Les arguments nommés spécifiques au tracker issus de init_kwargs sont transmis sous forme de **kwargs.

Enregistre un sous-classe personnalisé de GeneralTracker afin qu'il puisse être référencé par son name dans l'argument log_with de Accelerator, de la même manière que les traceurs intégrés.

Le tracker doit être enregistré avant d'instancier le Accelerator qui l'utilise.

Exemple :

from accelerate import Accelerator
from accelerate.tracking import GeneralTracker, register_tracker_class


class MyTracker(GeneralTracker):
    name = "my_tracker"
    requires_logging_directory = False
    # ... implement the rest of the `GeneralTracker` interface


register_tracker_class(MyTracker)
accelerator = Accelerator(log_with="my_tracker")

TensorBoardTracker

classe accelerate.tracking.TensorBoardTracker

< >

( run_name: strlogging_dir: str | os.PathLike**kwargs )

Paramètres

  • run_name (str) — Le nom de l'exécution de l'expérience
  • logging_dir (str, os.PathLike) — Emplacement de stockage des journaux TensorBoard.
  • **kwargs (arguments de mots-clés supplémentaires, facultatif) — Arguments de mots-clés supplémentaires transmis à la méthode tensorboard.SummaryWriter.__init__.

Une classe Tracker qui prend en charge tensorboard. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: strlogging_dir: str | os.PathLike**kwargs )

WandBTracker

classe accelerate.tracking.WandBTracker

< >

( run_name: str**kwargs )

Paramètres

  • run_name (str) — Le nom de l'exécution de l'expérience.
  • **kwargs (arguments de mots-clés supplémentaires, facultatif) — Arguments de mots-clés supplémentaires transmis à la méthode wandb.init.

Une classe Tracker qui prend en charge wandb. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: str**kwargs )

Trackio

classe accelerate.tracking.TrackioTracker

< >

( run_name: str**kwargs )

Paramètres

  • run_name (str) — Le nom de l’exécution de l’expérience. Sera utilisé comme nom de project lors de l’instanciation de trackio.
  • **kwargs (arguments supplémentaires par mot-clé, facultatif) — Arguments supplémentaires par mot-clé transmis à la méthode trackio.init. Consultez cette init pour voir tous les arguments par mot-clé pris en charge.

Une classe Tracker qui prend en charge trackio. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: str**kwargs )

CometMLTracker

classe accelerate.tracking.CometMLTracker

< >

( run_name: str**kwargs )

Paramètres

Une classe Tracker qui prend en charge comet_ml. Elle doit être initialisée au début de votre script.

Les clés API doivent être stockées dans un fichier de configuration Comet.

Note : Pour les versions de comet_ml antérieures à 3.41.0, des arguments de mot-clé supplémentaires sont transmis à comet_ml.Experiment à la place : https://www.comet.com/docs/v2/api-and-sdk/python-sdk/reference/Experiment/#comet_ml.Experiment.__init__

__init__

< >

( run_name: str**kwargs )

AimTracker

classe accelerate.tracking.AimTracker

< >

( run_name: strlogging_dir: str | os.PathLike | None = '.'**kwargs )

Paramètres

  • run_name (str) — Le nom de l'exécution de l'expérience.
  • **kwargs (arguments de mots-clés supplémentaires, facultatif) — Arguments de mots-clés supplémentaires transmis à la méthode Run.__init__.

Une classe Tracker qui prend en charge aim. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: strlogging_dir: str | os.PathLike | None = '.'**kwargs )

MLflowTracker

classe accelerate.tracking.MLflowTracker

< >

( experiment_name: str | None = Nonelogging_dir: str | os.PathLike | None = Nonerun_id: str | None = Nonetags: dict[str, typing.Any] | str | None = Nonenested_run: bool | None = Falserun_name: str | None = Nonedescription: str | None = None )

Paramètres

  • experiment_name (str, facultatif) — Nom de l’expérience. La variable d’environnement MLFLOW_EXPERIMENT_NAME a la priorité sur cet argument.
  • logging_dir (str ou os.PathLike, par défaut ".") — Emplacement de stockage des journaux mlflow.
  • run_id (str, facultatif) — Si spécifié, récupère l’exécution portant l’UUID indiqué et enregistre les paramètres et les métriques sous cette exécution. L’heure de fin de l’exécution est non définie et son statut est défini sur « en cours », mais les autres attributs de l’exécution (source_version, source_type, etc.) ne sont pas modifiés. La variable d’environnement MLFLOW_RUN_ID a la priorité sur cet argument.
  • tags (Dict[str, str], facultatif) — Un dict facultatif de clés et de valeurs de type str, ou un déchargement str d’un dict, à définir en tant que balises sur l’exécution. Si une exécution est reprise, ces balises sont définies sur l’exécution reprise. Si une nouvelle exécution est créée, ces balises sont définies sur la nouvelle exécution. La variable d’environnement MLFLOW_TAGS a la priorité sur cet argument.
  • nested_run (bool, facultatif, par défaut False) — Contrôle si l’exécution est imbriquée dans l’exécution parente. True crée une exécution imbriquée. La variable d’environnement MLFLOW_NESTED_RUN a la priorité sur cet argument.
  • run_name (str, facultatif) — Nom de la nouvelle exécution (stocké en tant que tag mlflow.runName). Utilisé uniquement lorsque run_id n’est pas spécifié.
  • description (str, facultatif) — Chaîne de caractères facultative qui remplit la zone de description de l’exécution. Si une exécution est reprise, la description est définie sur l’exécution reprise. Si une nouvelle exécution est créée, la description est définie sur la nouvelle exécution.

Une classe Tracker qui prend en charge mlflow. Elle doit être initialisée au début de votre script.

__init__

< >

( experiment_name: str | None = Nonelogging_dir: str | os.PathLike | None = Nonerun_id: str | None = Nonetags: dict[str, typing.Any] | str | None = Nonenested_run: bool | None = Falserun_name: str | None = Nonedescription: str | None = None )

ClearMLTracker

classe accelerate.tracking.ClearMLTracker

< >

( run_name: str | None = None**kwargs )

Paramètres

  • run_name (str, facultatif) — Nom de l’expérience. Les variables d’environnement CLEARML_PROJECT et CLEARML_TASK ont la priorité sur cet argument.
  • **kwargs (arguments de mots-clés supplémentaires, facultatif) — Arguments de mots-clés transmis à la méthode Task.__init__.

Une classe Tracker qui prend en charge clearml. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: str | None = None**kwargs )

SwanLabTracker

classe accelerate.tracking.SwanLabTracker

< >

( run_name: str**kwargs )

Paramètres

  • run_name (str) — Le nom de l'exécution de l'expérience.
  • **kwargs (arguments de mots-clés supplémentaires, facultatif) — Arguments de mots-clés supplémentaires transmis à la méthode swanlab.init.

Une classe Tracker qui prend en charge swanlab. Elle doit être initialisée au début de votre script.

__init__

< >

( run_name: str**kwargs )

Update on GitHub