Genesis-Embodied-AI / RoboGen

A generative and self-guided robotic agent that endlessly propose and master new skills.
Apache License 2.0
552 stars 50 forks source link

link_id is none #16

Closed Guanbin-Huang closed 8 months ago

Guanbin-Huang commented 8 months ago

command i run

python execute.py --task_config_path data/generated_task_from_description/Put_a_pen_into_the_box_box_100426_2023-12-25-11-43-33/Put_a_pen_into_the_box_The_robot_arm_picks_up_a_pen_and_places_it_inside_the_box_by_opening_the_lid_of_the_box_putting_the_pen_inside_and_then_closing_the_lid.yaml

the put_a_pen_into_box is the demo for generation in your readme.

the yaml file `- use_table: true

image
Guanbin-Huang commented 8 months ago

can you give us a docker to run it? Otherwise it's torturing. Any additional info you would like to add for? please tell me, thanks.

Guanbin-Huang commented 8 months ago
image

i've got the similar issue in the case of "cup" "cup" and "box", both of them don't have the link_id, which are really confusing.

yufeiwang63 commented 8 months ago

Thanks for the question.

It seems that the generated box object in the generated yaml config file is having type 'mesh' instead of 'urdf'. The latter should be the correct one since 'urdf' means it is an articulated object, which means it will have joints and links. The 'mesh' type of object is non-articulated, and will have no joints and links.

I think the error should be that when you run the generation command, you didn't capitalize the first letter of "box". I.e., you should run python gpt_4/prompts/prompt_from_description.py --task_description "Put a pen into the box" --object "Box" instead of python gpt_4/prompts/prompt_from_description.py --task_description "Put a pen into the box" --object "box" The reason is that only the objects in PartNetMobility will be articulated, so you need to stick to their naming conventions. ”Box“ is a proper articulated object category in PartNetMobility yet 'box' is not. You can check the full list of supported articulated object categories in this file: https://github.com/Genesis-Embodied-AI/RoboGen/blob/main/data/partnet_mobility_dict.json#L1703. As you can see, they use the capitalized word "Box".

I have added a check for making sure the articulated object is supported by partnetmobility in the new commit.

Let me know if you have any more questions.

yufeiwang63 commented 8 months ago

Also I noticed that in the generated config, the pen is somewhat very small -- only 0.01m. This sometimes happens when GPT somewhat gives very wrong object sizes. You might want to correct that or re-generate.

FYI the size prompt we use is here: https://github.com/Genesis-Embodied-AI/RoboGen/blob/main/gpt_4/prompts/prompt_with_scale.py. Feel free to update it.

Guanbin-Huang commented 8 months ago

hi, what if i use multiple object? let's say i don't just need Box but also coffeepot?

yufeiwang63 commented 8 months ago

Right now the task generation needs/samples 1 articulated object from PartNetMobility as the core object for the task, and depends on the generated task, there might be other objects involved. E.g., for the task of putting pen to the box, you only need to specify the Box as the core object, and the pen will be automatically built/retrieved by RoboGen.

What kind of tasks do you have in mind that require multiple objects?

Guanbin-Huang commented 8 months ago

Let's talk about the phrase "put the pen into a box". As you can see, the phrase involves two items, "pen" and "box". But why do we only focus on the box instead of the two objects?

zhouxian commented 8 months ago

RoboGen is about generating diverse tasks and object sampling functions as the seeding stage for increase the diversity of the auto generated tasks. The task you described, could be generated by the task proposal stage and the corresponding items will be retrieved. Following specific user-provided task prompt is not a focus at the current stage.

Also, it’s somewhat confusing to me why you have been shooting questions in such a condescending and aggressive manner - you could clearly use a bit more politeness.

On Wed, Dec 27, 2023 at 7:42 AM Guanbin Huang @.***> wrote:

Let's talk about the phrase "put the pen into a box". As you can see, the phrase involves two items, "pen" and "box". But why do we only focus on the box instead of the two objects?

— Reply to this email directly, view it on GitHub https://github.com/Genesis-Embodied-AI/RoboGen/issues/16#issuecomment-1870418622, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEV4V6KAIPRBLWI7QZ5QUOTYLQ6UVAVCNFSM6AAAAABBCPOVWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZQGQYTQNRSGI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

Guanbin-Huang commented 8 months ago

RoboGen is about generating diverse tasks and object sampling functions as the seeding stage for increase the diversity of the auto generated tasks. The task you described, could be generated by the task proposal stage and the corresponding items will be retrieved. Following specific user-provided task prompt is not a focus at the current stage. Also, it’s somewhat confusing to me why you have been shooting questions in such a condescending and aggressive manner - you could clearly use a bit more politeness. On Wed, Dec 27, 2023 at 7:42 AM Guanbin Huang @.> wrote: Let's talk about the phrase "put the pen into a box". As you can see, the phrase involves two items, "pen" and "box". But why do we only focus on the box instead of the two objects? — Reply to this email directly, view it on GitHub <#16 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEV4V6KAIPRBLWI7QZ5QUOTYLQ6UVAVCNFSM6AAAAABBCPOVWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZQGQYTQNRSGI . You are receiving this because you are subscribed to this thread.Message ID: @.>

sorry~~, thank you for your pointing out my manner. I didn't mean it. Your confusion is correct. i just talked to gpu in a teacher-student manner, and I copied paste it without second thinking.

i wish it wouldn't bother you two too much. @zhouxian @yufeiwang63

zhouxian commented 8 months ago

Thank you for your reply. No worries :) Do let us know if you've got any more questions