Hugging Face がエンドツーエンドの ML 実験に Codex を統合

Hugging Face は、HF-skills リポジトリと OpenAI Codex を統合し、AI コーディング エージェントがデータ検証からモデル デプロイまでの機械学習ライフサイクル全体を管理できるようにしました。この統合により、エンジニアはファインチューニングと RL アラインメントなどの複雑な実験を、ハードウェアを自律的に選択し、トレーニング メトリクスを監視し、詳細な実験レポートを維持できるエージェントに委任できるようになります。

自動化されたエンドツーエンド ML ワークフロー

Codex は、シンプルな自然言語プロンプトを使用して完全な機械学習実験を今では実行できます。HF-skills リポジトリ内の AGENTS.md ファイルを利用することで、Codex は次のタスクを実行できます:

  • ファインチューニングとアラインメント: 教師ありファインチューニング (SFT)、直接嗜好最適化 (DPO)、および検証可能な報酬を伴う強化学習 (RL) を実行します。
  • インフラストラクチャ管理: 適切なハードウェアを自動的に選択(例: 1B パラメータ未満のモデルには t4-small)し、Hugging Face Jobs にジョブを送信します。
  • データ検証: CPU 上でデータセットを検査し、トレーニング メソッドとの互換性を確認します(例: SFT の場合は 'messages' 列の存在、DPO の場合は 'chosen' または 'rejected' 列の存在を確認)。
  • モニタリングとレポート: Trackio を介してライブ トレーニング メトリクスを確認し、パラメータ、実行状況、評価スコアを追跡する構造化された training_reports/<model>-<dataset>-<method>.md ファイルを維持します。
  • デプロイ: ローカル デプロイのために量子化(例: Q4_K_M)を施した GGUF 形式でモデルをエクスポートし、最終モデルを Hugging Face Hub に公開します。

技術的実装とセットアップ

この統合は、コーディング エージェントと Hugging Face エコシステムの間のギャップを埋めるために、Model Context Protocol (MCP) と専用のスキル ファイルに依存しています。

設定

これらの機能を有効にするには、ユーザーは Codex をインストールし、HF-skills リポジトリをクローンする必要があります。Codex は自動的に AGENTS.md ファイルを検出し、必要な機械学習スキルをロードします。より深い Hub 統合のために、ユーザーは ~/.codex/config.toml ファイルで Hugging Face MCP サーバーを設定できます:

[mcp_servers.huggingface]
command = "npx"
args = ["-y", "mcp-remote", "https://huggingface.co/mcp?login

ハードウェアとコストのスケーリング

Codex は、訓練中のモデルのパラメータ数に基づいてハードウェアを選択します:

モデル サイズ 推奨ハードウェア 推定コスト ユースケース
< 1B パラメータ t4-small $1 - $2 教育/実験
1B - 3B パラメータ t4-medium or a10g-small $5 - $15 小規模トレーニング
3B - 7B パラメータ a10g-large or a100-large (with LoRA) $15 - $40 本番レベルのトレーニング

現在、このシステムは 7B パラメータを超えるモデルをサポートしていません。

実験ライフサイクルの例

open-r1/codeforces-cots データセットと openai_humaneval ベンチマークを使用してコード解決能力の向上に取り組む際、Codex は構造化されたパイプラインに従います:

  1. 準備: データセットを検証し、最もコスト効果の高い GPU を選択します(例: 0.6B モデルには t4-small)。
  2. 実行: Hugging Face Jobs にジョブを送信し、ユーザーに推定コストと時間を提供します(例: 20 分で約 $0.30)。
  3. トラッキング: 実行ログと Trackio ダッシュボードへのリンクをトレーニング レポートに追加し、リアルタイムの損失監視を行います。
  4. 評価: ファインチューニング済みチェックポイントの pass@1 スコアとベースモデルのスコアを比較するため、評価ジョブを実行します。
  5. 最終化: 該当する場合は LoRA アダプターをマージし、llama-server を介してローカル使用のためにモデルを GGUF に変換します。

Sources