clearml/clearml-agent

ClearML Agent - MLOps/LLMOps made easy. MLOps/LLMOps scheduler & orchestration solution

解決する課題

ClearML Agent は、ML/DL 研究から DevOps の負担を取り除くことを目的としたジョブスケジューラ兼オーケストレーションソリューションです。研究者はローカルでもクラウドでも、環境を手動で設定したり、コンテナを管理したり、複雑な YAML/JSON テンプレートを扱ったりすることなく実験を実行できます。

仕組み

エージェントはジョブキューを監視するワーカーとして動作します。ClearML UI から実験がキューに入れられると、エージェントはジョブを取得し、以下の処理を自動で行います。

  1. 環境セットアップ:仮想環境を作成するか、指定された Docker コンテナを起動します。
  2. コード取得:Git リポジトリから必要なコードをクローンします。
  3. 依存関係インストール:必要な Python パッケージをインストールし、マシンの CUDA バージョンに合わせて適切な PyTorch バージョンを自動選択します。
  4. 実行とモニタリング:コードを実行し、すべての出力(stdout/stderr)を ClearML UI に戻してリモートデバッグを可能にします。

ベアメタル、VM、Kubernetes へのデプロイをサポートし、Kubernetes 用の「Glue mode」では ClearML ジョブを直接 K8s ジョブにマッピングします。

対象ユーザー

複数の GPU、クラウドインスタンス、またはオンプレミスクラスタに実験をスケールさせたいが、深い DevOps 知識を持たない機械学習エンジニアや研究者向けです。

ハイライト

  • ゼロコンフィギュレーション:テンプレート設定不要のファイア&フォーゲット実行。
  • 柔軟なリソース管理:クラウドとオンプレミスの GPU リソースを組み合わせて使用可能。
  • ブートストラップサポート:Python、Git、エージェントの事前コンパイルバイナリを提供し、コールドスタートを高速化し、最小コンテナイメージでも動作可能。
  • マルチプラットフォーム:Linux、macOS、Windows をサポート。
  • オーケストレーション機能:優先キュー、クラウドオートスケーリング、複雑な実験パイプラインの作成をサポート。