近日,微软发布了AI Agent AutoGen全新版本。此次发布的是0.4版本,全面重新设计的库,在代码稳定性、鲁棒性、通用性和可扩展性方面更好,可以开发前沿高级AI Agent应用。
由于开发者的快速增长,带来了API效率低下以及调试和干预功能有限等难题。同时开发者对AI Agent自动化行为的可观测性、控制能力、多层级Agent之间的协作也有了更高的需求。为了解决这些问题,微软发布了AutoGen 0.4版本。
AutoGen 0.4版本的亮点介绍:
1、异步消息传递
Agent之间的通信采用了异步消息机制,不需要等待其他Agent的响应就可以继续自动执行任务。这种全新模式非常适合事件驱动的应用程序,Agent可以响应特定事件或条件触发的动作。同时也保留了传统的请求/响应模式,一个Agent发送请求并等待另一个Agent的回应。
2、模块化和可扩展性
用户可以轻松地使用自定义Agent、工具、内存和模型等,将不同的功能模块组合起来,构建出满足特定业务场景的Agent系统。例如,可以通过注册不同的Agent类型和工具,来实现特定的自动化功能。
3、可观测性和调试
内置的指标跟踪、消息追踪和调试工具,能够对Agent交互和工作流程进行监控和控制。可以清楚记录Agent工作流程中的每个步骤,包括大模型调用、工具使用、中间输出、内存状态和提示模板等。
4、可扩展性和分布式
用户可以设计复杂的、分布式的Agent网络,可以在组织边界之间无缝运行。通过分布式架构,可以将不同的Agent部署在不同的服务器或云平台上,实现资源的合理分配和高效利用。
5、内置和社区扩展
扩展模块通过高级模型客户端、Agent、多Agent团队和Agent型工作流程工具增强了框架的功能。社区支持允许开源开发者管理自己的扩展,可以基于框架开发出更多具有特定功能的Agent或工具,并分享给其他开发者使用。
6、跨语言支持
AutoGen现在允许不同编程语言编写的Agent之间进行互操作。例如,Python编写的Agent可以与.NET编写的Agent协同工作。这项功能极大地拓宽了AutoGen的应用范围,并消除了由于编程语言差异造成的障碍。
除了以上新增功能外,微软对AutoGen的基础架构也进行了重塑,包括核心、Agent聊天和扩展。
- 核心:事件驱动Agent系统的基石;
- Agent聊天:基于核心层构建的任务驱动的高级API,具有群聊、代码执行、预构建Agent等功能;
- 扩展:核心接口实现了和第三方集成,例如,Azure代码执行器和OpenAI模型等。
此外,在UI方面也进行了大量更新:通过UI进行交互式反馈,添加用户Agent以实现在团队运行期间实时的用户输入和指导;消息流可视化,通过直观的UI界面理解Agent通信,该界面映射消息路径和依赖关系;可视化拖拽界面,使用拖放组件到位置并配置它们的关系和属性的界面,可视觉化设计Agent。