ロボットエージェントをプログラミングエージェントのように機能させる:モデルはサンドボックス内の Python セッションで 22 個の低レベル機能(知覚、幾何学的測定、逆運動学レベルの動作)を呼び出し、コードを書いてマニピュレータを操作し、各呼び出しのテキストによる応答を読み取り、finish() を呼び出して終了するタイミングを自ら決定する。訓練はプログラミング/ウェブエージェント向けの手法を踏襲する:まず合成軌跡による教師あり微調整を行い、その後複数ラウンドの強化学習を実施する。1 エピソード終了時の成否を数十回のリクエストに配分するため、著者はシミュレータの真の状態(ポリシーからは見えない)を読み取れる「物理評論家」を追加し、各リクエストが成功確率をどれだけ変化させたかに基づいて報酬を与える。
いいね 18 · コードのスター数 50
理由
- 著者によると、Qwen3.5-4B はゼロショットで 0% を達成し、SFT 後は LIBERO ホールドアウトセットで 55.4%、RL 後は 73.8% に向上した。LIBERO-PRO では 78.5% を記録し、いくつかの最先端モデルエージェントを上回った。LIBERO のみで訓練されたにもかかわらず、SimplerEnv WidowX でゼロショット性能は 83.3% であり、実機でも動作を確認している。
- テスト時には最先端の大規模言語モデルも VLA も使用せず、特権状態も読み取らず、単なる 4B モデルのみを使用する。
- 公開範囲が広い:CaPtain-4B / CaPtain-4B-SFT の重み、SFT データ、評価用フレームワーク CaPtain-Harness、SFT および RL の訓練コード、ストリーミングロールアウト基盤のすべてが公開されており、コードは MIT ライセンスである。
使い方
git clone --recursive github.com/waltstephen/CaPtainでリポジトリをクローンし、harness/ディレクトリに入りscripts/setup_third_party.shを実行する。README に従って LIBERO 環境とエージェント用の Python 3.11 サンドボックス環境を作成する(bubblewrap 0.5 以上が必要)。harness/scripts/download_models.shで SAM 3、Molmo2-8B、CaPtain-4B をダウンロードする。services/start_perception.shで知覚サービスを開始し、services/serve_policy.sh YijiaFan/CaPtain-4B 8600で vLLM を用いてポリシーをサーブする。- 1 エピソードの実行:
eval/run_episode.sh libero_spatial 0 11 runs/demo。このフレームワークは OpenAI 互換 API に接続可能であり、独自のモデルや最先端モデルのテストにも使用できる。
リスク
- 訓練の再現にはコストがかかる:README によると、SFT には H100 を 16 枚使用して約 7.6 時間、RL には約 1,290 GPU 時間が必要である。評価にもポリシー用に 1 枚、知覚とレンダリング用に 1 枚の GPU が必要となる。
- SFT 軌跡はクローズドソースモデルによって合成されている。RoboTwin や SimplerEnv などへの転移時には、公式の観測データよりも多くの入力(深度、カメラキャリブレーション、手首の力覚など)を使用しており、README に項目ごとに明記されている。
- SAM 3 の重みは SAM ライセンスが適用され、モデル重みは Qwen3.5-4B(Apache-2.0)に従う。成績は著者による報告値である。
開く · コード · 抱きしめる論文ページ