LiBai 项目介绍
简介
LiBai 是一个基于 OneFlow 的大规模开源模型训练工具箱。LiBai 的主分支与 OneFlow 0.7.0 兼容。该项目致力于提供高效的模型训练工具,支持多种并行训练技术,并具备易于使用的模块化设计。
项目亮点
1. 支持多种并行训练模式
LiBai 提供多种并行训练方法,包括数据并行、张量并行和流水线并行,并且易于扩展到其他新型并行方式。这使得用户能够根据自身需求灵活配置模型训练环境。
2. 多样化的训练技术
LiBai 提供了多种现成的训练技术,包括分布式训练、混合精度训练、激活检查点、重计算、梯度累积以及零冗余优化器(ZeRO)。这些技术均可以提高训练的效率和效果。
3. 支持计算机视觉(CV)和自然语言处理(NLP)任务
LiBai 提供了预定义的数据处理支持,可用于 CV 和 NLP 领域的数据集,如 CIFAR、ImageNet 和 BERT 数据集。这使得用户在不同领域的应用都有了成熟的工具支持。
4. 易于使用
LiBai 组件的设计遵循模块化原则,便于使用:
- 提供 LazyConfig 系统,实现灵活的语法和非预定义结构。
- 拥有友好的训练者和引擎。
- 可以作为库使用,支持在其基础上构建研究项目。
5. 高效能
LiBai 专注于为用户提供高效的训练过程,确保资源的最佳利用。
安装与使用
LiBai 的详细安装步骤和使用说明可以在其文档中找到,文档提供了完整的 API 描述和教程。
最新更新
在 2024 年发布的 Beta 0.3.0 版本中,LiBai 引入了新的功能,包括对 mock transformers 的支持,以及模型评估的工具集。新增了多种原生支持的模型,如 BLOOM、ChatGLM、Couplets、DALL-E 2、Llama2、MAE 和 Stable Diffusion,以及一些通过 mock 实现的扩展模型。
贡献与许可
LiBai 欢迎所有的开发者贡献,以帮助改进项目。该项目是在 Apache 2.0 许可证下发布的,所有的贡献者需遵循相应的贡献指南。
引用
如果 LiBai 在您的研究中发挥了作用,请参考以下 BibTeX 进行引用:
@misc{of2021libai,
author = {Xingyu Liao and Peng Cheng and Tianhe Ren and Depeng Liang and
Kai Dang and Yi Wang and Xiaoyu Xu},
title = {LiBai},
howpublished = {\url{https://github.com/Oneflow-Inc/libai}},
year = {2021}
}
加入微信交流群
如果您对 LiBai 感兴趣,可以通过扫描项目文档中的二维码加入相应的微信交流群,获取更多交流学习的机会。