L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

accelerate

accelerate

Use Hugging Face Accelerate for PyTorch training-loop migration, distributed launch/configuration, DeepSpeed/FSDP/TPU backend setup, big-model inference/offload, checkpointing, tracking, and troubleshooting.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: accelerate description: "Use Hugging Face Accelerate for PyTorch training-loop migration, distributed launch/configuration, DeepSpeed/FSDP/TPU backend setup, big-model inference/offload, checkpointing, tracking, and troubleshooting." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

Accelerate

Use this repo skill when a task involves Hugging Face Accelerate: adapting PyTorch code with Accelerator, building accelerate launch commands, validating config files, choosing distributed backends, loading large models with device maps/offload, or saving/logging training state.

Install And Import Check

For normal package use:

pip install accelerate
python - <<'PY'
import accelerate
from accelerate import Accelerator
print(accelerate.__version__)
print(Accelerator)
PY

Install optional backends only for workflows that need them, such as DeepSpeed, torch-xla, transformer-engine, torchao, bitsandbytes, experiment trackers, or model libraries. Do not install broad development or testing extras unless the user explicitly asks for repository development coverage.

Route By Task

  • Use sub-skills/training-loop-integration/ to migrate raw PyTorch training/evaluation loops to Accelerator, prepare(), backward(), mixed precision, dataloader handling, gradient accumulation, DDP kwargs, and distributed-loop debugging.
  • Use sub-skills/configuration-and-cli/ to create or validate Accelerate config YAML, construct accelerate launch commands, inspect accelerate env, estimate memory, merge weights, and plan multi-node or SLURM launches without executing them.
  • Use sub-skills/distributed-training-backends/ to choose and configure DeepSpeed, FSDP/FSDP2, Megatron-LM, TPU/XLA, FP8, quantization, compilation, tensor/context parallelism, Local SGD, or DDP communication hooks.
  • Use sub-skills/big-model-inference/ for init_empty_weights, infer_auto_device_map, load_checkpoint_and_dispatch, CPU/disk offload, model hooks, PiPPy/distributed inference, and memory-sizing workflows.
  • Use sub-skills/checkpointing-and-tracking/ for save_state, load_state, checkpoint hooks, ProjectConfiguration, model export, experiment trackers, distributed-safe logging, profiling, and memory cleanup.

Shared References And Scripts

  • Read references/troubleshooting.md first for cross-cutting install/import, CLI, optional dependency, hardware, and distributed hang triage.
  • Read references/repo-provenance.md before deciding whether this skill matches a current Accelerate checkout or should be refreshed.
  • Run scripts/check_accelerate_environment.py --help or the script itself for a safe import/CLI/backend availability diagnostic.

Common Decision Points

  • Prefer Accelerator and accelerator.prepare(...) for ordinary training loops; do not start with backend-specific plugins until the baseline loop is clear.
  • Prefer accelerate config or a reviewed config YAML when launch commands become long, multi-node, or backend-specific.
  • Treat DeepSpeed, FSDP, TPU/XLA, FP8, and quantization as optional backend surfaces with package, hardware, and version constraints.
  • Use big-model dispatch/offload APIs for model loading and inference memory pressure; do not use them as a replacement for normal training-loop preparation.
  • Use checkpointing/tracking helpers from the nearest sub-skill before adding custom save/load or logging code in distributed jobs.

Safety Defaults

  • Run helper scripts with --help first when adapting them.
  • Avoid commands that download models/datasets, launch multi-process distributed jobs, require GPUs/TPUs/SLURM, or contact external tracker services unless the user explicitly asks and the environment is ready.
  • For verification in limited environments, prefer parser checks, config validation, tiny CPU smoke tests, and static backend diagnostics over full distributed execution.
Skills enregistrées