AI Agent 无疑是今年最火爆的概念,从科技巨头的战略布局到创业公司的创新产品,AI 智能体正在重塑我们与机器交互的方式。无论是自动化任务、个性化服务,还是复杂问题的协同解决,AI Agent 都展现出了前所未有的潜力。
而在众多备受瞩目的框架中,微软 Autogen 凭借其灵活的多智能体协作能力,迅速成为开发者与企业的关注焦点。它不仅能高效整合多个 AI Agent,还能根据任务需求动态调整工作流程,让智能协作变得更简单、更强大。
在这篇博客中,我们将深入探索 Autogen 的核心特性、应用场景,以及它如何为下一代 AI 应用铺平道路。
AutoGen
AutoGen是一种框架,用于使用多个代理来开发大型语言模型(LLM) 应用程序,这些代理相互对话以解决任务。 使用AutoGen 生成的代理可以在采用LLM、人工输入和工具组合的各种模式下运行。 AutoGen 代理的一个重要工具类型是代码执行程序。 它们使代理能够编写和执行代码以执行复杂的任务。

AutoGen Studio
AutoGen Studio 是微软研发的一款功能强大的低代码界面工具,旨在简化多智能体应用的构建流程。 它基于AutoGen 框架之上,该框架是一个用于定义、配置和组合AI 代理以驱动多智能体应用的开源Python 框架。

安装 AutoGen Studio
不多赘述,参考微软的文档,没啥好说的。
模拟软件开发团队
下面让我们使用 AutoGenStudio 来模拟一个软件开发团队。当这个团队接受到开发任务的时候,每个队员可以各施其职,配合着完成任务。
首先让我们在 AutoGenStudio 里面定义一个 team。定义的时候需要指定使用的模型,推出条件。以及 prompt。
这个 team 的定义本质上也是一个 Agent,它的任务是根据上下文选择团队成员(其他 Agent)去执行对应的任务。

Lily 前端开发工程师
首先我们创建一个 Agent 来模拟前端开发工程师。他的任务是开发前端代码,比如编写 html,css 等等。
这里我们同样需要指定使用的模型以及 System Message。System Message 是在描述这个 Agent 的能力与职责。
Jim 后端开发工程师
我们使用同样的方式定义一个后端开发工程师的 Agent。不同的是这次它能够使用 Tool,来执行一些 python 代码。

UserProxyAgent
UserProxyAgent 是个特殊的 Agent,它不与 LLM 进行交互,它的职责是跟真实的人类进行交互。当某些情况需要人类介入的时候,会以一个输入的方式等待人类给出明确的信息。

在完成所有定义后,我们的软件开发团队结构如下:

设计一个登录界面
当我们定义好这个team后,就可以给安排任务了。下面我们就给他们安排一个活:设计一个网页的登录页面。
要求如下:
设计一个登录界面,包含一个用户名名输入框,密码输入框,一个登录按钮。但是不需要调用任何后端API。因为我只想看看前端的效果。前端的代码请全部包含在一个页面里,不要把 css,javascript 等分开。一旦前端完成代码后,请把结果交给后端开发工程师,后端开发请使用 fastapi 建立一个服务,用户通过这个服务在浏览器里直接对前端设计的页面进行预览。
任务输入进去后可以看到各个 Agent 开始工作了,先是前端设计了页面,输出了 html,css 文件。最后后端工程师使用 python 直接生成了一个 web service 承载了这页面。我们访问能直接输入这个刚刚设计的登录框。


这个讨论的过程大家可以见以下视频:
【AutogenStudio 构建你的私人开发团队】
https://www.bilibili.com/video/BV1Qzo1YAEk7/?share_source=copy_web&vd_source=3f96a750277e9e3babf014a139c50726