{"id":973047,"date":"2023-10-06T15:16:20","date_gmt":"2023-10-06T22:16:20","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?post_type=msr-project&#038;p=973047"},"modified":"2025-05-12T10:08:09","modified_gmt":"2025-05-12T17:08:09","slug":"autogen","status":"publish","type":"msr-project","link":"https:\/\/www.microsoft.com\/en-us\/research\/project\/autogen\/","title":{"rendered":"AutoGen"},"content":{"rendered":"<section class=\"mb-3 moray-highlight\">\n\t<div class=\"card-img-overlay mx-lg-0\">\n\t\t<div class=\"card-background  has-background- card-background--full-bleed\">\n\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"720\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720.jpg\" class=\"attachment-full size-full\" alt=\"AutoGen header graphic showing relationship between User, Commander, Writer, and Safeguard\" style=\"\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720.jpg 1920w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-300x113.jpg 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-1024x384.jpg 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-768x288.jpg 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-1536x576.jpg 1536w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-1600x600.jpg 1600w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/AutoGen_header_1920x720-240x90.jpg 240w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/>\t\t<\/div>\n\t\t<!-- Foreground -->\n\t\t<div class=\"card-foreground d-flex mt-md-n5 my-lg-5 px-g px-lg-0\">\n\t\t\t<!-- Container -->\n\t\t\t<div class=\"container d-flex mt-md-n5 my-lg-5 \">\n\t\t\t\t<!-- Card wrapper -->\n\t\t\t\t<div class=\"w-100 w-lg-col-5\">\n\t\t\t\t\t<!-- Card -->\n\t\t\t\t\t<div class=\"card material-md-card py-5 px-md-5\">\n\t\t\t\t\t\t<div class=\"card-body \">\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\n<h1 class=\"wp-block-heading\" id=\"autogen\">AutoGen<\/h1>\n\n\n\n<p>Open-Source Framework for Agentic AI<br><\/p>\n\n\n\n<p class=\"has-text-align-left\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/aka.ms\/autogen\">aka.ms\/autogen<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n\n\n\n<p class=\"has-text-align-left\"><a href=\"mailto:autogen@microsoft.com\">autogen@microsoft.com<\/a><\/p>\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/section>\n\n\n\n\n\n<p>AutoGen is an open-source programming framework for building AI agents and facilitating cooperation among multiple agents to solve tasks. AutoGen aims to provide an easy-to-use and flexible framework for accelerating development and research on agentic AI.<\/p>\n\n\n\n<p>Over the past year, our work on AutoGen has highlighted the transformative potential of agentic AI in addressing real-world challenges through agents and multi-agent applications. Building on this progress, we are excited to announce AutoGen v0.4\u2014a significant milestone shaped by learning and valuable feedback from our community of users and developers. This update represents a complete redesign of the AutoGen library, aimed at improving code quality, robustness, generality, and the scalability of agentic workflows.<br><br>The initial release of AutoGen generated widespread interest in agentic technologies. At the same time, users faced challenges scaling applications due to limited support for dynamic workflows and debugging tools. Feedback highlighted the need for stronger observability, more flexible collaboration patterns, and for reusable components. AutoGen v0.4 addresses these issues with its asynchronous, event-driven architecture. AutoGen v0.4 adopts a more robust, asynchronous, and event-driven architecture, enabling a broader range of agentic scenarios with stronger observability, more flexible collaboration patterns, and for reusable components.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"679\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-1024x679.png\" alt=\"Block diagram for AutoGen.\" class=\"wp-image-1116423\" style=\"width:620px;height:auto\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-1024x679.png 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-300x199.png 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-768x510.png 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-1536x1019.png 1536w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-2048x1359.png 2048w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2023\/10\/image-3-240x159.png 240w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"key-features\">Key Features<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Asynchronous messaging<\/strong>: Agents communicate through asynchronous messages, supporting both event-driven and request\/response interaction patterns.<\/li>\n\n\n\n<li><strong>Modular and extensible<\/strong>: Users can easily customize systems with pluggable components, including custom agents, tools, memory, and models. They can also build proactive and long-running agents.<\/li>\n\n\n\n<li><strong>Observability and debugging<\/strong>: Built-in tools provide tracking, tracing, and debugging agent interactions and workflows, with support for OpenTelemetry for industry-standard observability.<\/li>\n\n\n\n<li><strong>Scalable and distributed<\/strong>: Users can design complex, distributed agent networks that operate seamlessly&nbsp;across organizational boundaries.<\/li>\n\n\n\n<li><strong>Built-in and community extensions<\/strong>: The extensions module enhances the framework\u2019s<a target=\"_blank\" rel=\"noreferrer noopener\">&nbsp;<\/a>functionality with advanced model clients, agents, multi-agent teams, and tools for agentic workflows. Support for community extensions allows open-source developers to manage their own extensions.<\/li>\n\n\n\n<li><strong>Cross-language support<\/strong>: This update enables interoperability between agents built in different programming languages, with current support for Python and .NET and additional languages in development.<\/li>\n\n\n\n<li><strong>Full type support<\/strong>: Interfaces now enforce type checks at build time, ensuring robust and cohesive code quality.<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/github.com\/microsoft\/autogen\">GitHub<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/aka.ms\/autogen-discord\">Discord<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/x.com\/pyautogen\">Twitter<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.linkedin.com\/company\/105812540\">LinkedIn<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link wp-element-button\" href=\"http:\/\/aka.ms\/autogen\">Docs<\/a><\/div>\n<\/div>\n\n\n\n\n\n<p><\/p>\n\n\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Open-Source Framework for Agentic AI aka.ms\/autogen (opens in new tab) autogen@microsoft.com AutoGen is an open-source programming framework for building AI agents and facilitating cooperation among multiple agents to solve tasks. AutoGen aims to provide an easy-to-use and flexible framework for accelerating development and research on agentic AI. Over the past year, our work on AutoGen [&hellip;]<\/p>\n","protected":false},"featured_media":973452,"template":"","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","footnotes":""},"research-area":[13556],"msr-locale":[268875],"msr-impact-theme":[264846],"msr-pillar":[],"class_list":["post-973047","msr-project","type-msr-project","status-publish","has-post-thumbnail","hentry","msr-research-area-artificial-intelligence","msr-locale-en_us","msr-archive-status-active"],"msr_project_start":"","related-publications":[947970,962712,991641,1075911,1108629,1145938],"related-downloads":[],"related-videos":[1003980,1003998,1013838,1040133,1132227],"related-groups":[392600,781564],"related-events":[],"related-opportunities":[],"related-posts":[969759,994098,1010406,1043418,1045134,1045743,1063530,1116288,1138863],"related-articles":[],"tab-content":[],"slides":[],"related-researchers":[{"type":"user_nicename","display_name":"Jacob Alber","user_id":36747,"people_section":"Microsoft FTEs","alias":"jaalber"},{"type":"user_nicename","display_name":"Saleema Amershi","user_id":33505,"people_section":"Microsoft FTEs","alias":"samershi"},{"type":"user_nicename","display_name":"Ahmed Awadallah","user_id":31979,"people_section":"Microsoft FTEs","alias":"hassanam"},{"type":"user_nicename","display_name":"Gagan Bansal","user_id":41707,"people_section":"Microsoft FTEs","alias":"gaganbansal"},{"type":"user_nicename","display_name":"Victor Dibia","user_id":41311,"people_section":"Microsoft FTEs","alias":"victordibia"},{"type":"user_nicename","display_name":"Adam Fourney","user_id":30820,"people_section":"Microsoft FTEs","alias":"adamfo"},{"type":"user_nicename","display_name":"Rafah Hosn","user_id":36783,"people_section":"Microsoft FTEs","alias":"raaboulh"},{"type":"guest","display_name":"Li Jiang","user_id":1056078,"people_section":"Microsoft FTEs","alias":""},{"type":"user_nicename","display_name":"Hussein Mozannar","user_id":43671,"people_section":"Microsoft FTEs","alias":"hmozannar"},{"type":"user_nicename","display_name":"Maya Murad","user_id":43879,"people_section":"Microsoft FTEs","alias":"mayamurad"},{"type":"user_nicename","display_name":"Friederike Niedtner","user_id":39919,"people_section":"Microsoft FTEs","alias":"fniedtner"},{"type":"user_nicename","display_name":"Eduardo Salinas","user_id":38371,"people_section":"Microsoft FTEs","alias":"edus"},{"type":"guest","display_name":"Ryan Sweet","user_id":1116285,"people_section":"Microsoft FTEs","alias":""},{"type":"user_nicename","display_name":"Cheng Tan","user_id":37953,"people_section":"Microsoft FTEs","alias":"chetan"},{"type":"guest","display_name":"Robert West","user_id":693648,"people_section":"Microsoft FTEs","alias":""},{"type":"guest","display_name":"XiaoYun Zhang","user_id":1056090,"people_section":"Microsoft FTEs","alias":""},{"type":"guest","display_name":"Will Epperson","user_id":1116600,"people_section":"Interns","alias":""},{"type":"guest","display_name":"Grace Proebsting","user_id":1116603,"people_section":"Interns","alias":""},{"type":"guest","display_name":"Omar Shaikh","user_id":1116606,"people_section":"Interns","alias":""},{"type":"guest","display_name":"Yiran Wu","user_id":1116639,"people_section":"Interns","alias":""},{"type":"guest","display_name":"Jieyu Zhang","user_id":1116609,"people_section":"Interns","alias":""},{"type":"user_nicename","display_name":"Rajan Chari","user_id":36765,"people_section":"Prior Members","alias":"ranaras"},{"type":"user_nicename","display_name":"Piali Choudhury","user_id":33259,"people_section":"Prior Members","alias":"pialic"},{"type":"guest","display_name":"Julia Kiseleva","user_id":1116471,"people_section":"Prior Members","alias":""},{"type":"guest","display_name":"Robin Moeur","user_id":1116633,"people_section":"Prior Members","alias":""},{"type":"guest","display_name":"Chi Wang","user_id":1116459,"people_section":"Prior Members","alias":""}],"msr_research_lab":[199565,992148],"msr_impact_theme":["Computing foundations"],"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/973047","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/msr-project"}],"version-history":[{"count":33,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/973047\/revisions"}],"predecessor-version":[{"id":1155334,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/973047\/revisions\/1155334"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media\/973452"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=973047"}],"wp:term":[{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=973047"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=973047"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=973047"},{"taxonomy":"msr-pillar","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-pillar?post=973047"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}