Skip to content

Update simpler_env: g3pi0#42

Open
yasu-nishi wants to merge 5 commits intobenchmark-v2-g3from
feature/benchmark-v2-g3-multi
Open

Update simpler_env: g3pi0#42
yasu-nishi wants to merge 5 commits intobenchmark-v2-g3from
feature/benchmark-v2-g3-multi

Conversation

@yasu-nishi
Copy link

・multiembodimentでのSimplerEnv試験の追加

@haru425 haru425 marked this pull request as ready for review September 20, 2025 13:25
action["rot_axangle"] = action_rotation_axangle * self.action_scale

if self.policy_setup == "google_robot":
action["gripper"] = 0
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sticky actionについてなのですが、SimplerEnvデータで学習する場合 sticky actionはしない方が良いので、optionなどでsticky actionを指定した時のみsticky actionをできるようにするというような設定にしていただいてもよろしいでしょうか?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

追加いたしました。同時にadd-taks-prefixとして、trueの際にrobot typeのpromptを追加する仕様も追加しました。

from g3_haptics.utils.lerobot_dataset_utils import create_g3multi_embodiment
from g3_haptics.datasets.embodiment import EmbodimentTag

class G3Pi0mutiLerobotToAiroaPolicy(AiroaBasePolicy):
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

細かいですが、 muti になっていて l が抜けているかと思います。

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

修正前のverでした。修正しましたのでご確認お願い致します。

@haru425
Copy link

haru425 commented Sep 21, 2025

@yasu-nishi
ありがとうございます!LGTMです!


proprio = eef_pos.copy()
if self.rot6d:
rpy_bridge_converted = quat_to_rot6d(torch.from_numpy(eef_pos).unsqueeze(0)).squeeze(0).numpy()
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

すみません、widowxを動かしていて気づいたのですが、こちら、一旦

proprio = eef_pos
rm_bridge = quat2mat(proprio[3:7])
rpy_bridge_converted = mat2euler(rm_bridge @ self.default_rot.T)

でrpyに変換してから、rpy_to_rot6dでrot6dに変換するべきではないでしょうか?

Copy link
Author

@yasu-nishi yasu-nishi Sep 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

確かに補正が抜けてしまっていますね。修正いたします。

@ymd-h
Copy link

ymd-h commented Sep 22, 2025

@haru425 @yasu-nishi
cc @keiohta

PR提出ありがとうございます。

前提

このレポジトリに PR を出していただいているのは、Stage 1の評価に向けての開発だと考えています。

また Stage 1 の評価での提出については以下に記載されているとの認識です。

質問

今回の PR では独立した評価スクリプトを作成いただいていると思いますが、これはどうやって最終評価スクリプト (おそらく2種) に反映させることができますでしょうか?

eval_rot6d.py の中にロジックが結構漏れているので、「adapter / geometry / policy を使ってちょこっと書けば反映できる」というステータスではないのではないかと感じました。

最終提出物にどのような方式を採用するかはまだ流動的だと思いますので、完全に置き換える必要までは無いと思いますが、
import して必要なパラメータを渡したら、後は従来のモデル (Policy?) と差し替えて評価ができる、
ぐらいが目標地点かなと考えていますがどうでしょうか??

@yasu-nishi
Copy link
Author

@ymd-h さん
貴重なコメントありがとうございます。
おっしゃる通りでStage 1の評価に向けての改修が必要な状況ではあります。
現状のステータスとしては、simpler envでの評価を可能にしたフェーズ(学習モデルの評価用)でして、
明日明後日にでも評価可能なフェーズでのPR等は出させていただければと思っています。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants