Transformers documentation

NeMo Automodel

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

and get access to the augmented documentation experience

to get started

NeMo Automodel

NeMo Automodel é uma biblioteca de treinamento open-source nativa de PyTorch DTensor da NVIDIA. Ela suporta pré-treinamento e ajuste fino em larga e pequena escala para LLMs e VLMs, permitindo experimentação rápida em ambientes de pesquisa e produção, com estratégias de paralelismo que incluem FSDP2, tensor, pipeline, expert e context parallelism. Para alto throughput, ela integra kernels do DeepEP e do TransformerEngine.

Defina sua execução de treinamento em um arquivo de configuração YAML (veja o arquivo de configuração completo).

# Instantiate a Nemotron V3 Nano model
model:
  _target_: nemo_automodel.NeMoAutoModelForCausalLM.from_pretrained
  pretrained_model_name_or_path: nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16

# Run SFT on HellaSwag
dataset:
  _target_: nemo_automodel.components.datasets.llm.hellaswag.HellaSwag
  path_or_dataset: rowan/hellaswag
  split: train

# Train PEFT adapters
peft:
  _target_: nemo_automodel.components._peft.lora.PeftConfig
  exclude_modules: ["*.out_proj"]  # mamba layers use custom kernels that take in the out_proj.weight directly, thus lora doesn't work here.
  dim: 8
  alpha: 32
  use_triton: True

# Use EP + FSDP2 for training
distributed:
  strategy: fsdp2
  dp_size: none
  tp_size: 1
  cp_size: 1
  ep_size: 4

# ... other parameters

Inicie o treinamento com torchrun usando o comando abaixo.

torchrun --nproc-per-node=4 examples/llm_finetune/finetune.py -c /path/to/yaml

Integração com Transformers

  • Qualquer LLM ou VLM suportado no Transformers também pode ser instanciado por meio do NeMo Automodel. Consulte a cobertura completa de modelos.
  • Construído sobre modelos do Hugging Face com AutoModel.from_pretrained(), com trocas dinâmicas de camadas de alto desempenho e suporte a paralelismos mais refinados, como Expert Parallelism (EP).
  • Detecta o campo de arquitetura em AutoConfig.from_pretrained() para carregar automaticamente implementações personalizadas, como o Nemotron Nano V3.
  • Segue de perto a API do Transformers para compatibilidade direta.

Recursos

Update on GitHub