daveshap / OpenAI_Agent_Swarm

HAAS = Hierarchical Autonomous Agent Swarm - "Resistance is futile!"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AutoGen as an infrastructure

sonichi opened this issue · comments

I found this repo from microsoft/autogen#575
It's a very interesting effort and I'd like to see if autogen could help as a generic infrastructure to support inter-agent conversations.
@gagb @LeoLjl @IANTHEREAL are working hard to support openai assistant agent (will finish in a day or two), which is very similar to some agents autogen already has offered for months.

p.s. I'm a fan of your videos.

commented

The OpenAI Assistant has two aspects that particularly catch my interest:

  1. It's based on GPT-4 turbo, which allows for longer context windows. This feature has the potential to directly enhance the performance of a single agent by enabling it to hold more original information within the same session. However, it's important to be cautious about the potential distraction caused by too much content.

  2. OpenAI Assistant takes over some reasoning and processing that previously required 2-3 steps or even more in interactions between agents. With OpenAI Assistant, these tasks can now be accomplished in a single agent, simplifying the complexity of the interactions.

Based on this intuition, a few days ago, I inquired within the community Discord about whether there are any proposals for integrating Autogen. I believe this is a good starting point, and everyone can share their opinions on the matter.

AutoGen is obsolete as @IANTHEREAL mentioned above, this effort here IMO is nothing else then rewriting AutoGen to use new capabilities and to be more human focused (SOB), not to mention that in AutoGen You as user was the one that created agents by hand, here we are automating exactly was lacking there (Can we call this Hyper-AutoGen... or Meta-AutoGen... I know Auto-AutoGen??)

But, .... we definitely need a way of communication, and that was addressed there by implementing GroupChatManager class.
I would say that here similar role is taken by any agent that spawned other agents.

I see possible solutions in wrapping an agent in a class and having all communication be transferred by one of the methods in this class, so while creating an agent we can redefine this method to target other agents as needed.

Please move this to discussions.