🧪 新しいチュートリアルを公開中 — ロボットアームからセンサーまで
コンテンツへスキップ
この製品を購入公式ストア公式サイト

コマンドラインの説明 ​

バージョンの説明(重要、まずお読みください) ​

LeRobot 0.6.0 以降、訓練済みモデルのデプロイには lerobot-rollout を使用します。従来の lerobot-record --policy.path=... という記法は、0.5.2 バージョンですでに削除されています。

本チュートリアルのステップ1では git clone で LeRobot をインストールしており、入手できるのは現在の最新バージョンです。そのため、以下の lerobot-rollout のコマンドラインを使用してください。lerobot-record を使い続けると、プログラムはそのままエラーを報告し、lerobot-rollout に切り替えるよう促します。

2つのコマンドの役割分担は次のとおりです:

  • lerobot-record:示教データの収集のみを担当します(ステップ7で使用しているのはこれです)。現在は eval_ で始まるデータセット名を拒否します
  • lerobot-rollout:訓練済みモデルのデプロイを担当し、--strategy.type で動作方式を選択します

rollout のコマンドラインパラメータ ​

パラメータ説明
--strategy.type動作方式。base はモデルを実行するだけでデータを記録せず、現場で効果を確認するのに使います;episodic は episode ごとに記録し reset 段階を伴い、動作は旧版の lerobot-record に近いです
--policy.pathモデルのパス。訓練出力内の checkpoints/last/pretrained_model を指します
--taskタスクの説明。--strategy.type=base と組み合わせて使用します
--duration実行秒数。0 は時間制限なしを意味します
--interactive途中で引き継ぎが必要な場合に追加します。ターミナルで /stop、/reset などのコマンドで制御できます
--display_datarerun.io の可視化インターフェースを起動するかどうか
--policy.device計算デバイス。例えば cuda、cpu

コマンドラインの説明 ​

リアルタイム可視化あり:--display_data=true

リアルタイム可視化なし:--display_data=false

--display_data=trueの場合、rerun.io のクールな可視化インターフェースが起動しますが、/Users/tommy/.cache/huggingface/lerobot/rollout_lerobot_my_dataset_a/images/observation.images.front/episode-000000ディレクトリ以下に毎フレームの画像が保存され、非常に容量を占有します。後で--display_data=falseに設定できます

HuggingFace モデル Repo 上のモデルを推論する:--policy.path=Tommymy/lerobot_my_model_a

みかん掴みタスクを例にする ​

  • ローカルモデルを推論する(リアルタイム可視化あり)
Shell
lerobot-rollout  \
  --strategy.type=episodic \
  --robot.type=so101_follower \
  --robot.port=/dev/tty.usbmodem5AAF2193061 \
  --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 1920, height: 1080, fps: 60, fourcc: "MJPG"}}" \
  --robot.id=my_follower_arm \
  --display_data=true \
  --dataset.repo_id=Tommymy/rollout_lerobot_my_dataset_a \
  --dataset.single_task="Grab Oranges" \
  --dataset.episode_time_s=1000 \
  --policy.path=/Users/tommy/Downloads/7-lerobot/checkpoints/last/pretrained_model
  • ローカルモデルを推論する(リアルタイム可視化なし)
Shell
lerobot-rollout  \
  --strategy.type=episodic \
  --robot.type=so101_follower \
  --robot.port=/dev/tty.usbmodem5AAF2193061 \
  --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 1920, height: 1080, fps: 60, fourcc: "MJPG"}}" \
  --robot.id=my_follower_arm \
  --display_data=false \
  --dataset.repo_id=Tommymy/rollout_lerobot_my_dataset_a \
  --dataset.single_task="Grab Oranges" \
  --dataset.episode_time_s=1000 \
  --policy.path=/Users/tommy/Downloads/7-lerobot/checkpoints/last/pretrained_model
  • HuggingFace モデル Repo 上のモデルを推論する
Shell
lerobot-rollout  \
  --strategy.type=episodic \
  --robot.type=so101_follower \
  --robot.port=/dev/tty.usbmodem5AAF2193061 \
  --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 1920, height: 1080, fps: 60, fourcc: "MJPG"}}" \
  --robot.id=my_follower_arm \
  --display_data=true \
  --dataset.repo_id=Tommymy/rollout_lerobot_my_dataset_a \
  --dataset.single_task="Grab Oranges" \
  --policy.path=Tommymy/lerobot_my_model_a

実行後にモデルがダウンロードされます

imagepng