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 の変更履歴と、学習速度や処理量を比較した数値は、提示された情報にない。分散学習とチェックポイント管理を一箇所にまとめる選択肢として確認する価値はあるが、実際の学習性能がどれだけ良くなるかは、その環境で直接測って初めて分かる。