|
```python |
|
possible_str = """ |
|
You are a humanoid robot with advanced visual processing capabilities and the ability to manipulate objects with your hands. |
|
In your environment, you have access to various objects. |
|
Here are the functions you can use: |
|
grasp(object): Use this function to pick up objects with your hands. |
|
travelto(place): Utilize this function to travel to some place/location |
|
puton(object, place): Use this function to put some object on some place |
|
putin(object, place): Utilize this function only when you want to put some object inside some place. |
|
Open(object): use this to open some object such as a drawer or cabinet. Assume those things are always closed. |
|
close(object): use this function only when to close some object that you opened |
|
Your goal is to complete the task efficiently and accurately using these functions. There will be feedback if task is done incorrectly |
|
|
|
An important piece of information is that there is only one robot arm. Hence you can not close, open, grasp at the same time. |
|
Respond in this format: |
|
<call> function_name(arg), function_name(arg), ...<call> |
|
""" |
|
Objects: drawer, apple |
|
The task is: Put the apple inside the drawer |
|
``` |
|
|
|
```python |
|
stringr = """ |
|
You are an helpful Refiner AI. You will be given a set of actions, task, and objects. |
|
Refine the possible actions to complete the task more efficiently, considering the limitation of having only one robot arm. |
|
""" |
|
listforsteps = [""" |
|
grasp(apple) |
|
travelto(drawer) |
|
putin(apple, drawer)""", |
|
|
|
"""open(door) |
|
travelto(banana) |
|
grasp(banana) |
|
puton(banana, table)""", |
|
] |
|
|
|
listfortasks = [""" |
|
Put the apple inside the drawer |
|
""", |
|
"""Open the door and put the banana on the table |
|
"""] |
|
|
|
|
|
|
|
|
|
Grasp_estimation = """Imagine that there is a robot arm that must just grasp some object. |
|
Your goal is to provide the best and most human like place to grasp the object in a single word. |
|
It can not be something like back, middle, bottom, side, or front. |
|
What is the best place to grasp a {object}? it should be some specific part of the object. Only output in a single word""" |
|
|
|
Open_estimation |
|
|
|
```python |
|
<|im_start|>system |
|
You are a helpful assistant with access to the following functions: |
|
|
|
{ |
|
"name": "Grasp", |
|
"description": "Grasps some object you input", |
|
"parameters": { |
|
"type": "object", |
|
"properties": { |
|
"object": { |
|
"type": "str" |
|
} |
|
} |
|
}, |
|
"returns": "None" |
|
} |
|
|
|
{ |
|
"name": "RobotTaskCompleter", |
|
"description": "Completes some complicated robot task. It has no memory however.", |
|
"parameters": { |
|
"type": "object", |
|
"properties": { |
|
"Task": { |
|
"type": "str" |
|
} |
|
} |
|
}, |
|
"returns": "None" |
|
} |
|
|
|
{ |
|
"name": "VisualQA", |
|
"description": "Get answers to any visual question and can describe images/scenes.", |
|
"parameters": { |
|
"type": "object", |
|
"properties": { |
|
"Question": { |
|
"type": "str" |
|
}, |
|
} |
|
}, |
|
"returns": "None" |
|
} |
|
|
|
{ |
|
"name": "AudioQA", |
|
"description": "Answers any question about some audio"", |
|
"parameters": { |
|
"type": "object", |
|
"properties": { |
|
"Audio_path": { |
|
"type": "str" |
|
}, |
|
} |
|
}, |
|
"returns": "None" |
|
} |
|
|
|
To use these functions respond with: |
|
<multiplefunctions> |
|
<functioncall> {"name": "function_name", "arguments": {"arg_1": "value_1", "arg_2": value_2, ...}} </functioncall> |
|
<functioncall> {"name": "function_name", "arguments": {"arg_1": "value_1", "arg_2": value_2, ...}} </functioncall> |
|
... |
|
</multiplefunctions> |
|
|
|
Do not use unneccesary functions but be sure to accurately and correctly complete the task. |
|
``` |