PrimeIntellect-ai/OpenDiloco

OpenDiLoCo: An Open-Source Framework for Globally Distributed Low-Communication Training

解決する課題

OpenDiLoCoは、通信オーバーヘッドを抑えた大規模モデルのグローバル分散トレーニングのためのフレームワークを提供します。分散トレーニングに特有の課題である高帯域幅の要求というボトルネックを解消し、地理的に分散したマシン間でのモデルトレーニングを可能にします。

仕組み

このフレームワークは、分散重み平均化を利用した低通信トレーニング戦略(DiLoCo)を実装しています。PyTorch FSDP (Fully Sharded Data Parallel) および hivemind ライブラリと統合されており、分散ハッシュテーブル (DHT) を使用してピア接続を管理し、ワーカー間で重みを同期します。ユーザーは、分散平均化に必要な内部および外部の最適化ループを処理する標準的なオプティマイザの代替として機能する DiLoCoOptimizer を使用することで、これを実装できます。

対象者

異なる場所に分散した計算リソースへのアクセス権を持ち、同期の通信コストを削減したい大規模Transformerモデルをトレーニングする研究者や開発者向けに設計されています。

ハイライト

  • 低通信トレーニング: グローバルに分散した環境向けに特別に設計されています。
  • 統合: PyTorch FSDP および hivemind ライブラリと連携します。
  • ドロップイン・オプティマイザ: 既存のトレーニングスクリプトに簡単に統合できる DiLoCoOptimizer を提供します。
  • スケーラブルなアーキテクチャ: DHTを介した分散重み平均化をサポートしています。

関連

  • プロジェクト
  • Dispatch
  • プロジェクト
  • プロジェクト
  • Dispatch