Add blog post announcing the new architecture preview (#3599)

This commit is contained in:
Jack Gerrits 2024-10-02 14:04:33 -04:00 committed by GitHub
parent 249a57bfa2
commit 9b79094891
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 121 additions and 21 deletions

View File

@ -21,7 +21,7 @@ AutoGen is an open-source programming framework for building AI agents and facil
> [!NOTE]
> *Note for contributors and users*</b>: [microsoft/autogen](https://aka.ms/autogen-gh) is the official repository of AutoGen project and it is under active development and maintenance under MIT license. We welcome contributions from developers and organizations worldwide. Our goal is to foster a collaborative and inclusive community where diverse perspectives and expertise can drive innovation and enhance the project's capabilities. We acknowledge the invaluable contributions from our existing contributors, as listed in [contributors.md](./CONTRIBUTORS.md). Whether you are an individual contributor or represent an organization, we invite you to join us in shaping the future of this project. For further information please also see [Microsoft open-source contributing guidelines](https://github.com/microsoft/autogen?tab=readme-ov-file#contributing).
> *Note for contributors and users*</b>: [microsoft/autogen](https://aka.ms/autogen-gh) is the original repository of AutoGen project and it is under active development and maintenance under MIT license. We welcome contributions from developers and organizations worldwide. Our goal is to foster a collaborative and inclusive community where diverse perspectives and expertise can drive innovation and enhance the project's capabilities. We acknowledge the invaluable contributions from our existing contributors, as listed in [contributors.md](./CONTRIBUTORS.md). Whether you are an individual contributor or represent an organization, we invite you to join us in shaping the future of this project. For further information please also see [Microsoft open-source contributing guidelines](https://github.com/microsoft/autogen?tab=readme-ov-file#contributing).
>
> -_Maintainers (Sept 6th, 2024)_
@ -242,8 +242,6 @@ In addition, you can find:
- [Research](https://microsoft.github.io/autogen/docs/Research), [blogposts](https://microsoft.github.io/autogen/blog) around AutoGen, and [Transparency FAQs](https://github.com/microsoft/autogen/blob/main/TRANSPARENCY_FAQS.md)
- [Discord](https://aka.ms/autogen-dc)
- [Contributing guide](https://microsoft.github.io/autogen/docs/Contribute)
- [Roadmap](https://github.com/orgs/microsoft/projects/989/views/3)

View File

@ -2,7 +2,6 @@
`AutoGen for .NET` is the official .NET SDK for [AutoGen](https://github.com/microsoft/autogen). It enables you to create LLM agents and construct multi-agent workflows with ease. It also provides integration with popular platforms like OpenAI, Semantic Kernel, and LM Studio.
### Gettings started
- Find documents and examples on our [document site](https://microsoft.github.io/autogen-for-net/)
- Join our [Discord channel](https://discord.gg/pAbnFJrkgZ) to get help and discuss with the community
- Find documents and examples on our [document site](https://microsoft.github.io/autogen-for-net/)
- Report a bug or request a feature by creating a new issue in our [github repo](https://github.com/microsoft/autogen)
- Consume the nightly build package from one of the [nightly build feeds](https://microsoft.github.io/autogen-for-net/articles/Installation.html#nighly-build)

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:daf14746d10ed67ab9de1f50c241827342e523fdb5bd08af8dc5a0fee5a8d37e
size 52503

View File

@ -0,0 +1,103 @@
---
title: New AutoGen Architecture Preview
authors:
- autogen-team
tags: [AutoGen]
---
# New AutoGen Architecture Preview
<center>
![What are they doing?](img/robots.jpeg)
</center>
One year ago, we launched AutoGen, a programming framework designed to build
agentic AI systems. The release of AutoGen sparked massive interest within the
developer community. As an early release, it provided us with a unique
opportunity to engage deeply with users, gather invaluable feedback, and learn
from a diverse range of use cases and contributions. By listening and engaging
with the community, we gained insights into what people were building or
attempting to build, how they were approaching the creation of agentic systems,
and where they were struggling. This experience was both humbling and
enlightening, revealing significant opportunities for improvement in our initial
design, especially for power users developing production-level applications with
AutoGen.
Through engagements with the community, we learned many lessons:
- Developers value modular and reusable agents. For example, our built-in agents
that could be directly plugged in or easily customized for specific use cases
were particularly popular. At the same time, there was a desire for more
customizability, such as integrating custom agents built using other
programming languages or frameworks.
- Chat-based agent-to-agent communication was an intuitive collaboration
pattern, making it easy for developers to get started and involve humans in
the loop. As developers began to employ agents in a wider range of scenarios,
they sought more flexibility in collaboration patterns. For instance,
developers wanted to build predictable, ordered workflows with agents, and to
integrate them with new user interfaces that are not chat-based.
- Although it was easy for developers to get started with AutoGen, debugging and
scaling agent teams applications proved more challenging.
- There were many opportunities for improving code quality.
These learnings, along with many others from other agentic efforts across
Microsoft, prompted us to take a step back and lay the groundwork for a new
direction. A few months ago, we started dedicating time to distilling these
learnings into a roadmap for the future of AutoGen. This led to the development
of AutoGen 0.4, a complete redesign of the framework from the foundation up.
AutoGen 0.4 embraces the actor model of computing to support distributed, highly
scalable, event-driven agentic systems. This approach offers many advantages,
such as:
- **Composability**. Systems designed in this way are more composable, allowing
developers to bring their own agents implemented in different frameworks or
programming languages and to build more powerful systems using complex agentic
patterns.
- **Flexibility**. It allows for the creation of both deterministic, ordered
workflows and event-driven or decentralized workflows, enabling customers to
bring their own orchestration or integrate with other systems more easily. It
also opens more opportunities for human-in-the-loop scenarios, both active and
reactive.
- **Debugging and Observability**. Event-driven communication moves message delivery
away from agents to a centralized component, making it easier to observe and
debug their activities regardless of agent implementation.
- **Scalability**. An event-based architecture enables distributed and
cloud-deployed agents, which is essential for building scalable AI services
and applications.
Today, we are delighted to share our progress and invite everyone to collaborate
with us and provide feedback to evolve AutoGen and help shape the future of
multi-agent systems.
As the first step, we are opening a [pull request](#) into the main branch with the
current state of development of 0.4. After approximately a week, we plan to
merge this into main and continue development. There's still a lot left to do
before 0.4 is ready for release though, so keep in mind this is a work in
progress.
Starting in AutoGen 0.4, the project will have three main libraries:
- **Core** - the building blocks for an event-driven agentic system.
- **AgentChat** - a task-driven, high-level API built with core, including group
chat, code execution, pre-built agents, and more. This is the most similar API
to AutoGen 0.2 and will be the easiest API to migrate to.
- **Extensions** - implementations of core interfaces and third-party integrations
(e.g., Azure code executor and OpenAI model client).
AutoGen 0.2 is still available, developed and maintained out of the [0.2 branch](https://github.com/microsoft/autogen/tree/0.2).
For everyone looking for a stable version, we recommend continuing to use 0.2
for the time being. It can be installed using:
```sh
pip install autogen-agentchat~=0.2
```
This new package name was used to align with the new packages that will come with 0.4:
`autogen-core`, `autogen-agentchat`, and `autogen-ext`.
Lastly, we will be using [GitHub
Discussion](https://github.com/microsoft/autogen/discussions) as the official
community forum for the new version and, going forward, all discussions related
to the AutoGen project. We look forward to meeting you there.

View File

@ -152,3 +152,7 @@ bboynton97:
title: AI Engineer at AgentOps
url: https://github.com/bboynton97
image_url: https://github.com/bboynton97.png
autogen-team:
name: AutoGen Team
title: The humans behind the agents

View File

@ -131,7 +131,6 @@ The figure below shows an example conversation flow with AutoGen.
- Understand the use cases for [multi-agent conversation](/docs/Use-Cases/agent_chat) and [enhanced LLM inference](/docs/Use-Cases/enhanced_inference)
- Read the [API](/docs/reference/agentchat/conversable_agent/) docs
- Learn about [research](/docs/Research) around AutoGen
- Chat on [Discord](https://aka.ms/autogen-dc)
- Follow on [Twitter](https://twitter.com/pyautogen)
- See our [roadmaps](https://aka.ms/autogen-roadmap)

View File

@ -6,7 +6,7 @@ The project welcomes contributions from developers and organizations worldwide.
- Code review of pull requests.
- Documentation, examples and test cases.
- Readability improvement, e.g., improvement on docstr and comments.
- Community participation in [issues](https://github.com/microsoft/autogen/issues), [discussions](https://github.com/microsoft/autogen/discussions), [discord](https://aka.ms/autogen-dc), and [twitter](https://twitter.com/pyautogen).
- Community participation in [issues](https://github.com/microsoft/autogen/issues), [discussions](https://github.com/microsoft/autogen/discussions), and [twitter](https://twitter.com/pyautogen).
- Tutorials, blog posts, talks that promote the project.
- Sharing application scenarios and/or related research.
@ -31,4 +31,4 @@ To see what we are working on and what we plan to work on, please check our
## Becoming a Reviewer
There is currently no formal reviewer solicitation process. Current reviewers identify reviewers from active contributors. If you are willing to become a reviewer, you are welcome to let us know on discord.
There is currently no formal reviewer solicitation process. Current reviewers identify reviewers from active contributors.

View File

@ -10,7 +10,7 @@
## Pull Requests
- For new PR, decide whether to close without review. If not, find the right reviewers. One source to refer to is the roles on Discord. Another consideration is to ask users who can benefit from the PR to review it.
- For new PR, decide whether to close without review. If not, find the right reviewers. Another consideration is to ask users who can benefit from the PR to review it.
- For old PR, check the blocker: reviewer or PR creator. Try to unblock. Get additional help when needed.
- When requesting changes, make sure you can check back in time because it blocks merging.
@ -28,9 +28,9 @@
## Issues and Discussions
- For new issues, write a reply, apply a label if relevant. Ask on discord when necessary. For roadmap issues, apply the roadmap label and encourage community discussion. Mention relevant experts when necessary.
- For new issues, write a reply, apply a label if relevant. For roadmap issues, apply the roadmap label and encourage community discussion. Mention relevant experts when necessary.
- For old issues, provide an update or close. Ask on discord when necessary. Encourage PR creation when relevant.
- For old issues, provide an update or close. Encourage PR creation when relevant.
- Use “good first issue” for easy fix suitable for first-time contributors.
- Use “task list” for issues that require multiple PRs.
- For discussions, create an issue when relevant. Discuss on discord when appropriate.
- For discussions, create an issue when relevant.

View File

@ -32,8 +32,7 @@ topics:
## Get Help
If you have any questions, you can ask in our [GitHub
Discussions](https://github.com/microsoft/autogen/discussions), or join
our [Discord Server](https://aka.ms/autogen-dc).
Discussions](https://github.com/microsoft/autogen/discussions).
[![](https://img.shields.io/discord/1153072414184452236?logo=discord&style=flat.png)](https://aka.ms/autogen-dc)

View File

@ -145,11 +145,6 @@ module.exports = {
label: "GitHub",
position: "right",
},
{
href: "https://aka.ms/autogen-dc",
label: "Discord",
position: "right",
},
{
href: "https://twitter.com/pyautogen",
label: "Twitter",
@ -177,8 +172,8 @@ module.exports = {
// // href: 'https://stackoverflow.com/questions/tagged/pymarlin',
// // },
{
label: "Discord",
href: "https://aka.ms/autogen-dc",
label: "GitHub Discussion",
href: "https://github.com/microsoft/autogen/discussions",
},
{
label: "Twitter",