daveshap / OpenAI_Agent_Swarm

HAAS = Hierarchical Autonomous Agent Swarm - "Resistance is futile!"
MIT License
2.96k stars 382 forks source link

AutoGen as an infrastructure #54

Closed sonichi closed 10 months ago

sonichi commented 10 months ago

I found this repo from https://github.com/microsoft/autogen/discussions/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.

IANTHEREAL commented 10 months ago

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.

Czajnikuss commented 10 months ago

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.

daveshap commented 10 months ago

Please move this to discussions.