NVIDIAのイベントで見た人型ロボット制御を自宅DGX Sparkで動かしてみた — SONIC × Kimodo × MuJoCo
昨日参加した NVIDIA Build-a-Claw Tokyo で、Unitree G1(43関節のヒューマノイド)を自然言語で制御するデモを見た。
帰宅後、同じパイプラインを自宅の DGX Spark で構築して動かしてみた記録。
まだ俺も数時間しか触っていないので、もうちょい深くやれば良い感じになりそうだけど、
NVIDIAのデモは気合を入れれば24時間以内に出来るぜ!!って記事
パイプライン構成
イベントで動いていたアーキテクチャをそのまま再現する
気合の目コピ!!構築自体は数時間程度で行ける。
自然言語プロンプト(例: "elegant Chinese sword dance")
↓
Kimodo-G1-RP-v1(テキスト → G1骨格アニメーション生成)
↓
GEAR-SONIC(物理追従ポリシー: ONNX encoder/decoder)
↓
MuJoCo G1 ロールアウト(nq=36, 動画出力)
各コンポーネント:
| レイヤー | 役割 | リポジトリ |
|---|---|---|
| Kimodo | テキスト→モーション生成 | GitHub / HuggingFace |
| SONIC | 物理追従制御ポリシー | GitHub / HuggingFace |
| MuJoCo | 物理シミュレーション | GitHub |
全て公開されているコンポーネントで構成されている。
Kimodo — テキストからモーションへ
Kimodo(Kinematic Motion Diffusion)は、テキストプロンプトを受け取ってG1の骨格に対応するモーションシーケンスを生成する拡散モデル。282Mパラメータ、700時間の光学モーションキャプチャデータで訓練されている。
やっていることはテキストの意味をモーション空間にマッピングして、G1の関節構成(34ジョイント)に対応した関節回転の時系列を出力すること。テキスト以外にもフルボディのポーズキーフレーム、エンドエフェクタ位置、2Dパスなどの制約入力にも対応する。
ポイントは、生成されたモーションが物理を考慮していないこと。重力も接地もバランスも無視した、純粋なキネマティクスとしての動き。だからこのまま物理シミュレータに食わせると即座に転倒する。
ここでSONICが必要になる。
SONIC — 倒れないための物理追従
SONIC(Supersizing Motion Tracking for Natural Humanoid Control)は、NVIDIAが開発したヒューマノイド行動基盤モデル。42Mパラメータ、100M+フレーム(700時間の高品質MoCapデータ)、9,000 GPU時間で訓練されている。
SONICの仕事は「Kimodoが生成した理想の動きに、物理的に追従しながらバランスを保つ」こと。
構造としてはONNXモデル2つ:
- Encoder: 現在のロボット状態 + 目標モーションを受け取って潜在表現を生成
- Decoder: 潜在表現からジョイントアクションを出力
強化学習で訓練された単一のポリシーが、歩行・走行・匍匐・ジャンプ・マニピュレーションなど多様な全身行動をカバーする。人間で言えば小脳の役割。「剣舞をしたい」と「転ばない」の両立をリアルタイムで解く。
実機(Unitree G1)では50パターンのモーションで100%成功率(ゼロショット)という結果が報告されているらしい。
MuJoCo ロールアウト — 最終レンダリング
MuJoCo上でG1のURDFを読み込み、SONICのアクション出力をステップごとに適用する。SONIC_RENDER=1 フラグで各フレームをレンダリングして動画出力。

# 出力例
output/sonic_g1_sword.mp4 # 剣舞
output/sonic_g1_snake.mp4 # 匍匐前進
output/sonic_g1_jackie.mp4 # カンフー
GEAR-SONICのリポジトリに MuJoCo での sim-to-sim ガイドが含まれており、チェックポイントのダウンロードからロールアウトまで手順が整っている。
動かしてみた結果
OpenClawを通じてテキストプロンプトでいろいろ試した
| プロンプト | 結果とウチのAIのコメント |
|---|---|
"head slide then prone crawl" |
✅ 匍匐前進(base高さ0.195m) |
"elegant Chinese sword dance" |
😂 なんか笑える |
"Jackie Chan kung fu" |
😂 これも笑える |
全く匍匐前進ではなくシュールスライドになった。しかし座標でしかみていないOpenClawはこれを良しとしてしまっているので、
マルチモーダルで今度は目で教え込まないと駄目だな・・・
剣舞とジャッキー・チェンなど無茶な指示をOpenClawが良い感じにとって努力はしてくれている。
しかし理想の動きにはならないねぇ・・・
OpenClaw との統合
このパイプラインは OpenClaw から自然言語で呼び出せる。「G1を〇〇させて」とチャットで投げると、Kimodo → SONIC → MuJoCo が走って動画が返ってくる。
Isaac Sim 6.0 + Isaac Lab 3.0 の環境も DGX Spark 上で動作確認済み。WebRTC(ポート49100)でリアルタイム映像配信ができる状態にはなっているが、現状は MuJoCo 経由の動画生成の方が安定している。
環境
| 項目 | スペック |
|---|---|
| GPU | NVIDIA GB10(Grace Blackwell)130 GiB |
| ホスト | DGX Spark |
| シミュレータ | Isaac Sim 6.0.1 / MuJoCo |
| モーション生成 | Kimodo-G1-RP-v1(282M params) |
| 物理追従 | GEAR-SONIC(42M params, ONNX) |
まとめ
NVIDIAのクローズドイベントで動いていた「テキスト → ヒューマノイドモーション」パイプラインは:
- 全て公開コンポーネント(GitHub / HuggingFace)で構成されている
- DGX Spark 1台で動く
- 自然言語プロンプト → 動画まで一気通貫で回る
次は SONIC の残差モード + ARDY(Kimodoのリアルタイム版)でインタラクティブ制御を試す。「歩きながら剣舞」のような連続動作の合成が目標。


