feat: spatiotemporal agent
Purpose
Even though latest LLMs have the context capacity reaching hundreds of thousands of tokens, the reasoning capabilities tend to decrease with the context size.
Proposed Changes
This PR introduces the SpatioTemporalAgent which runs on interval data (image, position, text history) gathering pipeline which can be later used by the agent to retrieve memories from a long time ago.
Issues
- Links to relevant issues
Testing
- How was it tested, what were the results?
@maciejmajek I've tested the example agent with o3de rosbot_xl binary. One thing I had to change was the world_frame="odom" (here).
- I was driving Rosbot using arrows in the simulation and it successfully collected observations in MongoDB. I checked that with MongoCompass
However, I've only tested the "data collection" part of this PR. For the retrieval part I could not find the code to test. Do you have a snippet to test the retrieval part or how to add it to the example agent?
@coderabbitai please create an issue based on the context and content of this PR. This PR got stale and I will revisit the feature in the future.
[!TIP] For best results, initiate chat on the files or code changes.