Accelerate documentation
Lanceurs
Lanceurs
Fonctions pour lancer l'entraînement sur des processus distribués.
notebook_launcher
accelerate.notebook_launcher
< source >( functionargs = ()num_processes = Nonemixed_precision = 'no'use_port = '29500'master_addr = '127.0.0.1'node_rank = 0num_nodes = 1rdzv_backend = 'static'rdzv_endpoint = ''rdzv_conf = Nonerdzv_id = 'none'max_restarts = 0monitor_interval = 0.1log_line_prefix_template = None )
Paramètres
- function (
Callable) — La fonction d’entraînement à exécuter. Si elle accepte des arguments, le premier argument doit être l’indice du processus exécuté. - args (
Tuple) — Tuple d'arguments à passer à la fonction (elle recevra*args). - num_processes (
int, facultatif) — Le nombre de processus à utiliser pour l’entraînement. Par défaut, il est fixé à 8 dans Colab/Kaggle si un TPU est disponible, sinon au nombre de dispositifs disponibles. - mixed_precision (
str, facultatif, par défaut"no") — Sifp16oubf16, utilise l’entraînement en précision mixte sur plusieurs appareils. - use_port (
str, facultatif, par défaut"29500") — Le port à utiliser pour communiquer entre les processus lors du lancement d'une formation multi-appareils. - master_addr (
str, facultatif, par défaut"127.0.0.1") — L'adresse à utiliser pour la communication entre les processus. - node_rank (
int, facultatif, valeur par défaut 0) — Le rang du nœud actuel. - num_nodes (
int, facultatif, valeur par défaut 1) — Le nombre de nœuds à utiliser pour l’entraînement. - rdzv_backend (
str, facultatif, par défaut"static") — Méthode de rendez-vous à utiliser, telle que ‘static’ (par défaut) ou ‘c10d’ - rdzv_endpoint (
str, facultatif, par défaut"") — Le point de terminaison du stockage de synchronisation rdzv. - rdzv_conf (
Dict, facultatif, par défautNone) — Configuration supplémentaire du rendez-vous. - rdzv_id (
str, facultatif, par défaut"none") — L'identifiant d'exécution unique du travail. - max_restarts (
int, facultatif, valeur par défaut 0) — Le nombre maximal de redémarrages que l’agent élastique effectuera sur les workers avant d’échouer. - monitor_interval (
float, facultatif, valeur par défaut 0.1) — L'intervalle en secondes utilisé par l'elastic_agent comme période de surveillance des workers. - log_line_prefix_template (
str, facultatif, par défautNone) — Le modèle de préfixe pour les journaux de lancement élastique. Disponible à partir de PyTorch 2.2.0.
Lance une fonction d’entraînement, en utilisant plusieurs processus ou plusieurs nœuds si c’est possible dans l’environnement actuel (par exemple un TPU avec plusieurs cœurs).
Pour utiliser cette fonction, aucun appel à un périphérique ne doit avoir été effectué dans la session du notebook avant l'appel. Si des appels ont déjà été effectués, vous devrez redémarrer le notebook et vous assurer qu'aucune cellule n'utilise de capacité de périphérique.
Définir
ACCELERATE_DEBUG_MODE="1"dans votre environnement exécutera un test avant le véritable lancement afin de s’assurer qu’aucun de ces appels n’a été effectué.
debug_launcher
accelerate.debug_launcher
< source >( functionargs = ()num_processes = 2 )
Lance une fonction d'entraînement utilisant plusieurs processus sur CPU à des fins de débogage.
Cette fonction est fournie pour les tests et le débogage internes, mais elle n’est pas destinée aux entraînements réels. Elle n’utilisera que le CPU.