NVIDIA NeMo-Aligner
最新动态
- 我们发布了Nemotron-4-340B的基础版、指令版和奖励版。指令版和奖励版是在Nemo-Aligner中训练的。有关奖励模型训练的更多详情,请参阅Helpsteer2论文。
- 我们在RLHF流程中发布了加速生成支持的测试版。这仍在进行中,但显著加快了RLHF训练速度。更多详情请参见Accelerated-RLHF和特别的Accelerated-RLHF-Release。
- NeMo-Aligner论文现已在arxiv上发布!
简介
NeMo-Aligner是一个可扩展的高效模型对齐工具包。该工具包支持最先进的模型对齐算法,如SteerLM、DPO和人类反馈强化学习(RLHF)。这些算法使用户能够将语言模型对齐,使其更安全、无害且有帮助。用户可以在各种规模的模型上进行端到端的模型对齐,并利用所有并行技术确保模型对齐高效且资源利用率高。有关更多技术细节,请参阅我们的论文。
NeMo-Aligner工具包基于NeMo工具包构建,允许使用张量、数据和流水线并行技术将训练扩展到数千个GPU,适用于对齐的所有组件。我们的所有检查点都与NeMo生态系统兼容,可用于推理部署和进一步定制。
该工具包目前处于早期阶段,我们致力于改进工具包,使开发人员能更容易地选择不同的对齐算法来构建安全、有帮助和可靠的模型。
主要特性
- SteerLM:属性条件SFT作为RLHF的(用户可控)替代方案。
- 使用NeMo Aligner对齐的Llama3-70B-SteerLM-Chat。
- 相应的奖励模型Llama3-70B-SteerLM-RM
- 在我们的SteerLM和HelpSteer2论文中了解更多。
- 监督微调
- 奖励模型训练
- 使用PPO算法的人类反馈强化学习
- 使用NeMo Aligner对齐的Llama3-70B-PPO-Chat。
- 直接偏好优化,如Direct Preference Optimization: Your Language Model is Secretly a Reward Model所述
- 使用NeMo Aligner对齐的Llama3-70B-DPO-Chat。
- 自我对弈微调(SPIN),如Self-Play Fine-Tuning Converts Weak Language Models to Strong Language Models所述
了解更多
最新发布
有关最新稳定版本,请参阅releases页面。所有发布版本都附带预构建的容器。每个版本的更改将记录在CHANGELOG中。
安装您自己的环境
要求
NeMo-Aligner的要求与NeMo工具包要求相同,另外还需要PyTriton。
安装
请按照NeMo工具包安装指南的相同步骤操作,但在安装NeMo后运行以下命令
pip install nemo-aligner
或者如果您希望安装最新的提交
pip install .
Docker容器
我们提供了一个官方的NeMo-Aligner Dockerfile,它基于NeMo、Megatron-LM和TransformerEngine的稳定、经过测试的版本。这个Dockerfile的目标是稳定性,因此可能不会跟踪这三个包的最新版本。您可以在这里访问我们的Dockerfile
或者,您可以构建NeMo Dockerfile,并在末尾添加RUN pip install nemo-aligner
。
未来工作
- 添加拒绝采样支持
- 我们将继续改进PPO学习阶段的稳定性。
- 提高RLHF的性能
贡献
我们欢迎社区贡献!请参阅CONTRIBUTING.md了解指南。
引用NeMo-Aligner
@misc{shen2024nemoaligner,
title={NeMo-Aligner: Scalable Toolkit for Efficient Model Alignment},
author={Gerald Shen and Zhilin Wang and Olivier Delalleau and Jiaqi Zeng and Yi Dong and Daniel Egert and Shengyang Sun and Jimmy Zhang and Sahil Jain and Ali Taghibakhshi and Markel Sanz Ausin and Ashwath Aithal and Oleksii Kuchaiev},
year={2024},
eprint={2405.01481},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
许可证
本工具包根据Apache License, Version 2.0.许可。