Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Persistent Task Execution in Autogen Distributed Agent Runtime #5327

Open
linznin opened this issue Feb 3, 2025 · 1 comment · May be fixed by #5371
Open

Support Persistent Task Execution in Autogen Distributed Agent Runtime #5327

linznin opened this issue Feb 3, 2025 · 1 comment · May be fixed by #5371

Comments

@linznin
Copy link
Contributor

linznin commented Feb 3, 2025

What feature would you like to be added?

Currently, when using Autogen's Distributed Agent Runtime, tasks are managed using asyncio's Queue. However, this approach does not persist tasks across service restarts. To ensure that tasks can continue execution even after a restart, we propose introducing an external storage mechanism such as Redis queue.

Proposed Solution

  • Replace or extend the existing asyncio.Queue implementation with an external message queue, such as Redis queue.
  • Ensure that queued tasks are not lost when the service restarts.
  • Provide configuration options to allow users to choose between in-memory and persistent queues.

Why is this needed?

  • Improved reliability and fault tolerance.
  • Ability to recover and continue executing tasks after unexpected failures or restarts.
  • Scalability for distributed agent execution.
@ekzhu
Copy link
Collaborator

ekzhu commented Feb 3, 2025

Great suggestion! I think a Redis implementation is great!

Would you like to take a look into this and have a draft Pr for it?

The redis supports persistence beyond the tasks, it can also be used to store the agent states so when the runtime restart it will have all the agents ready to go as well.

Perhaps to start we can focus on the single threaded agent runtime -- it is much more well defined.

@ekzhu ekzhu added this to the python-v0.4.x milestone Feb 3, 2025
@linznin linznin linked a pull request Feb 5, 2025 that will close this issue
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants