画像・動画生成
最終更新
MacでDIAMONDを実行する: CSGOワールドモデルをMPSで操作する
移動や視点操作を入力すると、AIが次のゲーム画面を生成します。
DIAMONDはプレイヤーの操作を受け、拡散ワールドモデルで次のゲーム画面を生成します。このガイドでは元のeloialonso/diamondリポジトリのcsgoブランチを使い、Apple SiliconでMPSのCPU1 fallbackを有効にして操作画面を開きます。
操作を受けて次のゲーム画面を作るモデルです
DIAMONDは現在のゲーム画面とプレイヤーの操作をもとに次のフレーム2を作る拡散ワールドモデルです。研究用のCSGOブランチでは、操作を入力するとモデルが次のフレームを生成し、場面を続けます。以下ではMacで操作できるこのCSGO経路を使います。
Macでは元のeloialonso/diamondリポジトリのcsgoブランチを使います。MPSが対応しない演算をCPUに渡す設定を有効にすると、モデルが生成した場面の中で移動や視点操作を試せます。

元のCSGOブランチを準備します
Apple Silicon搭載Macとcondaが必要です。プロジェクトはPython 3.10環境を指定しており、CSGOプレイ経路は初回実行時にHugging Faceからモデル重み、スポーン地点、プレイヤー操作データを取得します。公開されている重みの容量は1.5GBです。この経路にAtari ROMは含まれません。
git clone https://github.com/eloialonso/diamond.git
cd diamond
git switch csgo
conda create -n diamond python=3.10 -y
conda activate diamond
python -m pip install -r requirements.txtMPS fallbackを有効にして操作画面を開きます
Apple SiliconでMPSが処理できないPyTorch3演算をCPUに渡せるよう、環境変数を指定します。下の設定はこのコマンドの実行時だけ有効です。初回はモデルファイルを取得するため、インターネット接続と保存容量が必要です。
PYTORCH_ENABLE_MPS_FALLBACK=1 python src/play.py生成されたゲーム画面は操作可能なウィンドウに表示されます。起動が止まったら端末の最初のtracebackを確認し、リポジトリ内にいることとgit branch --show-currentの結果がcsgoであることを確認します。
Atariの例はROMの利用権を先に確認します
Atariの例も試すなら、デフォルトブランチの事前学習済みモデルを使えます。この経路は依存関係の導入時にAtari ROMも取得するため、先にROMの利用ライセンスを確認してください。利用権を確認した場合に限り、次の手順へ進みます。
git switch main
conda create -n diamond-atari python=3.10 -y
conda activate diamond-atari
python -m pip install -r requirements.txt
python src/play.py --pretrained
初回起動のエラーと画面状態を確認します
No module named ...が表示されたら、diamond conda環境が有効か確認し、その環境でrequirementsが導入済みか調べます。モデルの取得が中断した場合は、エラーに示されたHugging Faceファイルを再取得できるよう接続と空き容量を確認し、同じ実行コマンドを再入力します。MPS演算エラーでは、コマンドの前にPYTORCH_ENABLE_MPS_FALLBACK=1を付けたか確認します。
起動ログのdeviceがmpsならMacのGPU4を使っています。cpuが選ばれている場合は画面更新が遅くなるため、まずPyTorchのMPS対応を確認してください。
ほかのワールドモデルも試してみましょう
DIAMONDの操作画面を試したら、ほかのモデルが受け取る入力も比べてみてください。ワールドモデル入門では6つのプロジェクトの用途を説明しています。RTX 5090でゲームエンジンとAI描画を組み合わせるなら、Matrix-Game 4.0ガイドへ進めます。

用語の注釈
よくある質問
- この記事で最初に確認すべきことは何ですか?
- DIAMONDはプレイヤーの操作を受け、拡散ワールドモデルで次のゲーム画面を生成します。このガイドでは元のeloialonso/diamondリポジトリのcsgoブランチを使い、Apple SiliconでMPSのCPU fallbackを有効にして操作画面を開きます。
- 条件と出典はどこで確認できますか?
- Atariの例も試すなら、デフォルトブランチの事前学習済みモデルを使えます。この経路は依存関係の導入時にAtari ROMも取得するため、先にROMの利用ライセンスを確認してください。利用権を確認した場合に限り、次の手順へ進みます。
