Accelerate documentation

Lançadores

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

Lançadores

Funções para iniciar o treinamento em processos distribuídos.

notebook_launcher

accelerate.notebook_launcher

< >

( 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 )

Parâmetros

  • function (Callable) — A função de treinamento a ser executada. Se ela aceitar argumentos, o primeiro argumento deve ser o índice do processo em execução.
  • args (Tuple) — Tupla de argumentos para passar à função (ela receberá *args).
  • num_processes (int, opcional) — O número de processos a serem usados para o treinamento. O padrão será 8 no Colab/Kaggle se um TPU estiver disponível, caso contrário, será o número de dispositivos disponíveis.
  • mixed_precision (str, opcional, padrão "no") — Se fp16 ou bf16, usará treinamento com precisão mista em multi-dispositivo.
  • use_port (str, opcional, padrão "29500") — A porta a ser usada para comunicar entre processos ao iniciar um treinamento multi-dispositivo.
  • master_addr (str, opcional, padrão "127.0.0.1") — O endereço a ser usado para comunicação entre processos.
  • node_rank (int, opcional, padrão 0) — O rank do nó atual.
  • num_nodes (int, opcional, padrão 1) — O número de nós a serem usados para o treinamento.
  • rdzv_backend (str, opcional, padrão "static") — O método de rendezvous a ser utilizado, como ‘static’ (o padrão) ou ‘c10d’
  • rdzv_endpoint (str, opcional, padrão "") — O endpoint do armazenamento de sincronização do rdzv.
  • rdzv_conf (Dict, opcional, padrão None) — Configuração adicional de rendezvous.
  • rdzv_id (str, opcional, padrão "none") — O id de execução exclusivo do job.
  • max_restarts (int, opcional, padrão 0) — A quantidade máxima de reinícios que o agente elástico executará nos workers antes de falhar.
  • monitor_interval (float, opcional, padrão 0.1) — O intervalo em segundos usado pelo elastic_agent como período de monitoramento dos workers.
  • log_line_prefix_template (str, opcional, padrão None) — O modelo de prefixo para o registro de logs do elastic launch. Disponível a partir do PyTorch 2.2.0.

Inicia uma função de treinamento, usando vários processos ou múltiplos nós, se possível no ambiente atual (por exemplo, TPU com múltiplos núcleos).

Para usar esta função, nenhuma chamada a um dispositivo deve ser feita na sessão do notebook antes da chamada. Se alguma tiver sido feita, será necessário reiniciar o notebook e garantir que nenhuma célula utilize qualquer capacidade de dispositivo.

Definir ACCELERATE_DEBUG_MODE="1" no seu ambiente executará um teste antes de iniciar de fato para garantir que nenhuma dessas chamadas tenha sido feita.

Exemplo:

# Assume this is defined in a Jupyter Notebook on an instance with two devices
from accelerate import notebook_launcher


def train(*args):
    # Your training function here
    ...


notebook_launcher(train, args=(arg1, arg2), num_processes=2, mixed_precision="fp16")

debug_launcher

accelerate.debug_launcher

< >

( functionargs = ()num_processes = 2 )

Parâmetros

  • function (Callable) — A função de treinamento a ser executada.
  • args (Tuple) — Tupla de argumentos para passar à função (ela receberá *args).
  • num_processes (int, opcional, padrão 2) — O número de processos a serem usados para o treinamento.

Inicia uma função de treinamento usando vários processos na CPU para fins de depuração.

Esta função é fornecida para testes e depuração internos, mas não é destinada a treinamentos reais. Ela usará apenas a CPU.

Update on GitHub