17 KiB
Colossal-AI
新闻
- [2023/03] AWS and Google Fund Colossal-AI with Startup Cloud Programs
- [2023/02] Open source solution replicates ChatGPT training process! Ready to go with only 1.6GB GPU memory
- [2023/01] Hardware Savings Up to 46 Times for AIGC and Automatic Parallelism
- [2022/11] Diffusion Pretraining and Hardware Fine-Tuning Can Be Almost 7X Cheaper
- [2022/10] Use a Laptop to Analyze 90% of Proteins, With a Single-GPU Inference Sequence Exceeding 10,000
- [2022/09] HPC-AI Tech Completes $6 Million Seed and Angel Round Fundraising
目录
- 为何选择 Colossal-AI
- 特点
- 并行训练样例展示
- 单GPU训练样例展示
- 推理 (Energon-AI) 样例展示
- Colossal-AI 成功案例
- 安装
- 使用 Docker
- 社区
- 做出贡献
- 引用我们
为何选择 Colossal-AI
(返回顶端)
特点
Colossal-AI 为您提供了一系列并行组件。我们的目标是让您的分布式 AI 模型像构建普通的单 GPU 模型一样简单。我们提供的友好工具可以让您在几行代码内快速开始分布式训练和推理。
- 并行化策略
- 异构内存管理
- 使用友好
- 基于参数文件的并行化
- 推理
(返回顶端)
并行训练样例展示
GPT-3
- 释放 50% GPU 资源占用, 或 10.7% 加速
GPT-2
- 降低11倍 GPU 显存占用,或超线性扩展(张量并行)
- 用相同的硬件训练24倍大的模型
- 超3倍的吞吐量
BERT
- 2倍训练速度,或1.5倍序列长度
PaLM
- PaLM-colossalai: 可扩展的谷歌 Pathways Language Model (PaLM) 实现。
OPT
- Open Pretrained Transformer (OPT), 由Meta发布的1750亿语言模型,由于完全公开了预训练参数权重,因此促进了下游任务和应用部署的发展。
- 加速45%,仅用几行代码以低成本微调OPT。[样例] [在线推理]
ViT
- 14倍批大小和5倍训练速度(张量并行=64)
推荐系统模型
- Cached Embedding, 使用软件Cache实现Embeddings,用更少GPU显存训练更大的模型。
(返回顶端)
单GPU训练样例展示
GPT-2
- 用相同的硬件训练20倍大的模型
- 用相同的硬件训练120倍大的模型 (RTX 3080)
PaLM
- 用相同的硬件训练34倍大的模型
(返回顶端)
推理 (Energon-AI) 样例展示
-
Energon-AI :用相同的硬件推理加速50%
-
OPT推理服务: 体验1750亿参数OPT在线推理服务
- BLOOM: 降低1760亿参数BLOOM模型部署推理成本超10倍
(返回顶端)
Colossal-AI 成功案例
ChatGPT
- 最高可提升单机训练速度7.73倍,单卡推理速度1.42倍
- 单卡模型容量最多提升10.3倍
- 最小demo训练流程最低仅需1.62GB显存 (任意消费级GPU)
- 提升单卡的微调模型容量3.7倍
- 同时保持高速运行
AIGC
加速AIGC(AI内容生成)模型,如Stable Diffusion v1 和 Stable Diffusion v2
- 训练: 减少5.6倍显存消耗,硬件成本最高降低46倍(从A100到RTX3060)
- DreamBooth微调: 仅需3-5张目标主题图像个性化微调
- 推理: GPU推理显存消耗降低2.5倍
(返回顶端)
生物医药
加速 AlphaFold 蛋白质结构预测
- FastFold: 加速AlphaFold训练与推理、数据前处理、推理序列长度超过10000残基
- xTrimoMultimer: 11倍加速蛋白质单体与复合物结构预测
(返回顶端)
安装
Colossal-AI 目前仅支持Linux操作系统,没有在其他操作系统如Windows和macOS进行测试。
环境要求: PyTorch 1.10 ~ 1.12 (更新版本正在兼容中), Python >= 3.7, CUDA >= 11.0。如果你遇到安装问题,可以向本项目 反馈。
从PyPI安装
您可以用下面的命令直接从PyPI上下载并安装Colossal-AI。我们默认不会安装PyTorch扩展包
pip install colossalai
但是,如果你想在安装时就直接构建PyTorch扩展,您可以设置环境变量CUDA_EXT=1
.
CUDA_EXT=1 pip install colossalai
否则,PyTorch扩展只会在你实际需要使用他们时在运行时里被构建。
与此同时,我们也每周定时发布Nightly版本,这能让你提前体验到新的feature和bug fix。你可以通过以下命令安装Nightly版本。
pip install colossalai-nightly
从源码安装
此文档将与版本库的主分支保持一致。如果您遇到任何问题,欢迎给我们提 issue :)
git clone https://github.com/hpcaitech/ColossalAI.git
cd ColossalAI
# install dependency
pip install -r requirements/requirements.txt
# install colossalai
pip install .
我们默认在pip install
时不安装PyTorch扩展,而是在运行时临时编译,如果你想要提前安装这些扩展的话(在使用融合优化器时会用到),可以使用一下命令。
CUDA_EXT=1 pip install .
(返回顶端)
使用 Docker
从DockerHub获取镜像
您可以直接从我们的DockerHub主页获取最新的镜像,每一次发布我们都会自动上传最新的镜像。
本地构建镜像
运行以下命令从我们提供的 docker 文件中建立 docker 镜像。
在Dockerfile里编译Colossal-AI需要有GPU支持,您需要将Nvidia Docker Runtime设置为默认的Runtime。更多信息可以点击这里。 我们推荐从项目主页直接下载Colossal-AI.
cd ColossalAI
docker build -t colossalai ./docker
运行以下命令从以交互式启动 docker 镜像.
docker run -ti --gpus all --rm --ipc=host colossalai bash
(返回顶端)
社区
欢迎通过论坛, Slack, 或微信加入 Colossal-AI 社区,与我们分享你的建议和问题。
做出贡献
欢迎为该项目做出贡献,请参阅贡献指南。
真诚感谢所有贡献者!
贡献者头像的展示顺序是随机的。
(返回顶端)
CI/CD
我们使用GitHub Actions来自动化大部分开发以及部署流程。如果想了解这些工作流是如何运行的,请查看这个文档.
引用我们
Colossal-AI项目受一些相关的项目启发而成立,一些项目是我们的开发者的科研项目,另一些来自于其他组织的科研工作。我们希望. 我们希望在参考文献列表中列出这些令人称赞的项目,以向开源社区和研究项目致谢。
你可以通过以下格式引用这个项目。
@article{bian2021colossal,
title={Colossal-AI: A Unified Deep Learning System For Large-Scale Parallel Training},
author={Bian, Zhengda and Liu, Hongxin and Wang, Boxiang and Huang, Haichen and Li, Yongbin and Wang, Chuanrui and Cui, Fan and You, Yang},
journal={arXiv preprint arXiv:2110.14883},
year={2021}
}
Colossal-AI 已被 SC, AAAI, PPoPP, CVPR, ISC等顶级会议录取为官方教程。
(返回顶端)