7B | 13B | 30B | 65B | |
---|---|---|---|---|
Finetune | 2 | 3 | 6 | 16 |
LoRA | 1 | 1 | 1 | 2 |
LOMO | 1 | 1 | 1 | 2 |
注:在使用Adam优化器的情况下,各个模型需要的最少的GPU(A100)数量
CoLLiE 基于 DeepSpeed 和 PyTorch,为大型语言模型提供协作式和高效的调优方法。 它主要包括以下四个特点:
- 并行策略
- 数据并行 (DP)
- 流水线并行 (PP)
- 张量并行 (TP)
- 零冗余优化器 (ZeRO)
- 模型架构
- 内存高效的微调方法
- 用户友好的使用方式
CoLLiE已使用 Megatron-LM 和 Flash Attention 重写模型,只需修改 config.dp_size
,config.pp_size
,和config.tp_size
,就能简单地享受 3D 并行(注意,这三个并行性尺寸的乘积应等于GPU的数量)。
此外,您可以通过更改 config.use_flash
来选择是否使用 Flash Attention。
为了方便用户,CoLLiE 的模型还支持类似于 🤗Huggingface 的方法,您可以使用 model.from_pretrained()
从HF加载权重。
如果你不想自己编写训练循环,CoLLiE提供了一个 训练器。你需要做的只是提供配置和数据集来进行你的自定义训练过程。
更多示例可在 示例 中查看。
CoLLiE提供了与 torchrun 和 slurm 的集成,以便在单个或多个节点上轻松启动任务。
pip install git+https://github.com/OpenLMLab/collie.git