Skip to content

Adding high level memory#157

Merged
shuheng-liu merged 4 commits into
mainfrom
feat/high_level_mem
Apr 3, 2026
Merged

Adding high level memory#157
shuheng-liu merged 4 commits into
mainfrom
feat/high_level_mem

Conversation

@akshay18iitg
Copy link
Copy Markdown
Collaborator

@akshay18iitg akshay18iitg commented Mar 31, 2026

What this does

Implements data generation pipeline for memory using o3 mini

How it was tested

python -m opentau.scripts.pi_mem_data_generator configs/examples/task_segments.json

outputs

tem['up_to_date_memory']
'The cup was picked up and placed in the tray.'
item['up_to_date_memory']
'The cup was picked up and placed in the tray. The attempt to pick up the bottle and place it in the tray failed.'
item['up_to_date_memory']
'The cup was picked up and placed in the tray. The bottle was picked up and placed in the tray.'

Changed the prompt appropriately to get concise and relevant memory updates

How to checkout & try? (for the reviewer)

python -m opentau.scripts.pi_mem_data_generator configs/examples/task_segments.json

Checklist

  • I have added Google-style docstrings to important functions and ensured function parameters are typed.
  • My PR includes policy-related changes.
    • If the above is checked: I have run the GPU pytests (pytest -m "gpu") and regression tests.

Note: Before submitting this PR, please read the contributor guideline.

Copy link
Copy Markdown
Member

@shuheng-liu shuheng-liu left a comment

Choose a reason for hiding this comment

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

  1. We only need one way to get the OpenAI API keys – via the official env var – and check_env should always be implied.
  2. Let's include previous memory and the goal language (high level task) in the user prompt.
  3. Let's include a one-shot example or n-shots examples in the system prompt. The one in section III(B) in Pi memory paper is a good start.

PS: This is not an action item right now, but in the future we want to do an end-to-end pipeline that takes in a LeRobot dataset with subtasks and outputs another LeRobot dataset (modification in place is also fine if it's light weight and non-destructive)

Comment thread src/opentau/scripts/pi_mem_data_generator.py Outdated
Comment thread src/opentau/scripts/pi_mem_data_generator.py
Comment thread src/opentau/scripts/pi_mem_data_generator.py Outdated
Comment thread src/opentau/scripts/pi_mem_data_generator.py
Copy link
Copy Markdown
Member

@shuheng-liu shuheng-liu left a comment

Choose a reason for hiding this comment

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

I'll take over this and add a cursor review

Comment thread src/opentau/scripts/pi_mem_data_generator.py Outdated
Comment thread src/opentau/scripts/pi_mem_data_generator.py Outdated
@shuheng-liu shuheng-liu self-requested a review April 3, 2026 18:35
@shuheng-liu shuheng-liu merged commit de98b1f into main Apr 3, 2026
5 checks passed
@shuheng-liu shuheng-liu deleted the feat/high_level_mem branch April 3, 2026 18:36
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.

2 participants