Accelerate 文档
启动器
加入 Hugging Face 社区
并获得增强的文档体验
开始使用
启动器
用于在分布式进程上启动训练的函数。
notebook_launcher
accelerate.notebook_launcher
< source >( function args = () num_processes = None mixed_precision = 'no' use_port = '29500' master_addr = '127.0.0.1' node_rank = 0 num_nodes = 1 rdzv_backend = 'static' rdzv_endpoint = '' rdzv_conf = None rdzv_id = 'none' max_restarts = 0 monitor_interval = 0.1 log_line_prefix_template = None )
参数
- function (
Callable
) — 要执行的训练函数。如果它接受参数,则第一个参数应该是运行进程的索引。 - args (
Tuple
) — 传递给函数的参数元组(它将接收*args
)。 - num_processes (
int
, optional) — 用于训练的进程数。如果在 Colab/Kaggle 中有 TPU 可用,则默认为 8,否则默认为可用的 GPU 数量。 - mixed_precision (
str
, optional, defaults to"no"
) — 如果为fp16
或bf16
,将在多 GPU 上使用混合精度训练。 - use_port (
str
, optional, defaults to"29500"
) — 用于在启动多 GPU 训练时在进程之间进行通信的端口。 - master_addr (
str
, optional, defaults to"127.0.0.1"
) — 用于进程间通信的地址。 - node_rank (
int
, optional, defaults to 0) — 当前节点的排名。 - num_nodes (
int
, optional, defaults to 1) — 用于训练的节点数。 - rdzv_backend (
str
, optional, defaults to"static"
) — 要使用的 rendezvous 方法,例如 ‘static’(默认)或 ‘c10d’。 - rdzv_endpoint (
str
, optional, defaults to""
) — rdzv 同步存储的端点。 - rdzv_conf (
Dict
, optional, defaults toNone
) — 额外的 rendezvous 配置。 - rdzv_id (
str
, optional, defaults to"none"
) — 作业的唯一运行 ID。 - max_restarts (
int
, 可选, 默认为 0) — 弹性代理在工作进程失败前将执行的最大重启次数。 - monitor_interval (
float
, 可选, 默认为 0.1) — 弹性代理用于监控工作进程的时间间隔,以秒为单位。 - log_line_prefix_template (
str
, 可选, 默认为None
) — 弹性启动日志记录的前缀模板。 从 PyTorch 2.2.0 版本开始可用。
启动一个训练函数,如果在当前环境(例如,具有多个核心的 TPU)中可能,则使用多个进程或多个节点。
要使用此函数,在调用之前,笔记本会话中绝对不能调用 CUDA 设备。如果已进行任何调用,您需要重启笔记本并确保没有单元格使用任何 CUDA 功能。
在您的环境中设置 ACCELERATE_DEBUG_MODE="1"
将在真正启动之前运行测试,以确保未进行任何此类调用。
debug_launcher
accelerate.debug_launcher
< 源码 >( function args = () num_processes = 2 )
出于调试目的,使用 CPU 上的多个进程启动训练函数。
此函数用于内部测试和调试,但不适用于实际训练。它将仅使用 CPU。