mosaicml/composer 是 MosaicML 开发的基于 PyTorch 的开源深度学习训练库。它在 GitHub 仓库 github.com/mosaicml/composer 上公开,目的是把在大规模集群中跨多个节点推进的分布式训练(distributed training)工作流简化到一个 Trainer 之中。项目用 Python 编写,采用 Apache-2.0 许可证发布。目前公开的最新版本是 v0.32.1。
这是一个面向可扩展 PyTorch 模型训练与训练算法组合的库,把多节点训练、检查点和训练优化算法统一放进同一个 Trainer。在 Trainer 内部可以设置并行化方式、数据加载器、指标与日志记录器,并支持 FSDP、DDP 和弹性分片检查点(elastic sharded checkpoint)。通过回调和训练算法,可以按自身需求调整训练过程。该仓库创建于 2021 年 10 月 12 日,GitHub 星标数为 5507。
不过可确认的范围仅到 README 所列的功能清单为止。v0.32.1 的变更记录,以及训练速度或吞吐量对比的数值,在给定信息中都没有。作为把分布式训练与检查点管理集中到一处的选择,它值得关注;但实际训练性能能提升多少,只能在相应环境中直接测量才能知道。