microsoft / semantic-kernel

Integrate cutting-edge LLM technology quickly and easily into your apps
https://aka.ms/semantic-kernel
MIT License
21.09k stars 3.09k forks source link

New Feature: Agents story - Tighten collaboration with the AutoGen Team #7245

Open joslat opened 1 month ago

joslat commented 1 month ago

Foster a more clear and collaborative relationship with the AutoGen team to co-author packages like Microsoft.SemanticKernel.Experimental.Agents.AutoGen (or without the experimental tag 🥇 ). and to use them widely in AutoGen. Of course ensure immediate support on the agent abstractions and Core packages to support them as a TOP customer.

This collaboration will ensure cohesive development and integration, presenting a unified "ONE Microsoft" approach to the community and users.

That would require probably covering all the points of the "New Feature: Agents story" issues (feature requests) complete, so the .NET (and maybe the python teams) of AutoGen can build upon those abstractions. This would simplify their work and tighten the collaboration.

Also you would make a lot of people very happy with this. I would LOVE to see this happen in a joint "office hours" together.

LittleLittleCloud commented 1 month ago

AutoGen.SemanticKernel is already available, which enables using sk agents with other autogen agents. maybe we can follow the similiar pattern if there is no circular dependency problem.

joslat commented 1 month ago

Yes, and the integration is very well done - lean and as simple as it can get :) As I understand, please correct me, it is a wrapper to use Semantic Kernel constructs within the AutoGen framework.

My idea, call it wish, which I did not convey or explain properly - sorry for that - would be that the SK SDK is used as the base, core, for the AutoGen. For this a lot of things should be implemented (see the epic, maybe you can add any which is missing here...) but with those, AutoGen would have a solid Core base where to build upon the abstractions/base implementations provided by the kernel, to build the concrete implementations of, for example:

And other constructs.

This way there would be no integration, SK would be the core. Also if AutoGen exports the Agents & workflow implementations as a nuget package, you could import as "AutoGen.Agents" and use them from any .NET app right away... I can only dream but that is what I meant, hope I explained it properly, otherwise let me know.

Anyhow, I am thankful & humbled by you responding.