NVIDIA-NeMo/Automodel

🚀 Pytorch Distributed native training library for LLMs/VLMs with OOTB Hugging Face support

🚀 NeMo AutoModel – 简介

NeMo AutoModel(托管于 NVIDIA-NeMo 组织下)是一个 Python 库,让您能够以尽可能少的样板代码来微调或预训练巨大的语言、视觉-语言和扩散模型。它构建在 PyTorch 和 NVIDIA 的并行训练栈(DTensor、自定义内核、张量并行、流水线并行等)之上,并为 Hugging Face 上数十个最先进的模型提供了现成的配方


核心理念

理念 对您的意义
模型无关的配方 每个支持的模型(例如 DeepSeek-V4.1-Flash、GLM-5.3、Qwen-3.8-Flash-Next、Nemotron-3-Ultra、Gemma-4 等)都有一个 YAML 定义的训练脚本,用于配置数据加载、并行性、优化器以及任何特殊内核。您只需将配方指向您的数据并启动即可。
全参数和 LoRA/PEFT 支持 您可以训练模型的每个权重,或使用参数高效微调(LoRA、PEFT)– 相同的接口对两者都有效。
推测解码与草稿器 内置支持训练“草稿”模型(EAGLE、DFlash、DSpark),通过推测解码实现更快的推理。
代理友好的技能 一小部分命令行“技能”(例如 run_recipemodel_onboard),可由自动化代理或笔记本调用。
NVIDIA 优化内核 配方会自动选择自定义内核(例如 CSA2、FlexAttention、TileLang、cuDNN DSA),以从 H100/GB200 GPU 中榨取性能。

您可以做什么

  • 微调 LLM(密集、MoE、混合注意力)在 HellaSwag、MedPix 或自定义数据集等经典基准上。
  • 微调视觉-语言模型(LLaVA-OneVision、Qwen-VL、Inkling、MiniMax-M3)使用打包序列或多令牌预测配方。
  • 训练扩散或 D-LLM 模型(DiffusionGemma、DFlash)并实验推测解码。
  • 从单个 GPU 扩展到数十个 H100/GB200 节点使用相同的配方;库在底层处理张量和流水线并行。
  • 添加新模型通过编写简短的模型覆盖 MD 文件和配方 – 仓库已经附带了一个大型目录。

快速入门

# 1. 安装(需要 Python 3.10+)
pip install nemo-automodel

# 2. 选择一个配方 – 例如,在 HellaSwag 上微调 DeepSeek-V4.1-Flash
python -m nemo_automodel.run \
    --recipe examples/llm_finetune/deepseek_v41/deepseek_v41_flash_hellaswag_ep64_16nodes.yaml \
    --data_path /path/to/hellaswag

YAML 文件包含 modeltrainerparallelismdataset 部分。除非您想要自定义数据管道,否则无需更改代码。


文档与资源


谁应该关注这个?

  • 研究人员:需要可靠、高性能的训练管道来处理最新的 LLM/VLM 架构。
  • 工程师:在 NVIDIA GPU 上构建生产级微调服务。
  • ML-ops 团队:希望使用单个仓库来处理从数据接入到多节点训练的所有事情。

许可证

该仓库在 Apache 2.0 许可证下发布(参见 README 中的徽章)。


总结

NeMo AutoModel 是 NVIDIA 的交钥匙库,用于大规模微调大量现代语言、视觉-语言和扩散模型,提供全参数和参数高效选项,并内置对推测解码和 NVIDIA 优化内核的支持。

相关

  • 项目
  • Dispatch
  • 项目
  • 项目
  • 项目