Magentic-UI 目标是构建一个 agentic (基于智能体) 的 Web 界面,用来解决复杂的 Web 任务,利用多智能体协作的方式,由一个 Orchestrator(协调器)协调四个专门的智能体:WebSurfer(网页浏览)、Coder(代码编写)、FileSurfer(文件管理)和 UserProxy(用户代理),通过用户控制下的自动化,提供了一个透明、可控的界面,让用户可以参与到智能体执行任务的过程中。

多代理协作机制

Magentic-UI 基于 AutoGen 的 Magentic-One 系统构建,由五大代理组成协作网络:

协调器(Orchestrator):作为核心主导代理,依托大型语言模型(LLM)运行,负责与用户共同制定任务计划,判断何时需要用户反馈,将子任务分配给其他代理执行。

网页冲浪者(WebSurfer):配备可控网页浏览器的 LLM 代理,能根据协调器指令完成点击、输入、滚动页面及多轮访问等操作,实现网页信息获取与交互。

代码生成器(Coder):集成 Docker 代码执行容器的 LLM 代理,支持编写和执行 Python 及 shell 命令,将执行结果返回给协调器。

文件管理师(FileSurfer):借助 Docker 容器与 MarkItDown 文件转换工具的 LLM 代理,可定位系统控制目录下的文件,将其转换为 markdown 格式,并解答相关问题。

用户代理(UserProxy):承担人机交互桥梁角色,负责收集用户反馈与审批信息。

任务处理流程

1、规划阶段:用户输入文本或附加图片提出任务请求后,系统生成自然语言形式的分步计划,用户可通过计划编辑界面进行增删改查操作,能发送后续消息完善计划。

2、执行阶段:协调器依据计划决定由哪个代理或用户完成具体步骤,发送请求并等待响应,每完成一个步骤,系统会向用户展示中间进度,若执行中发现计划不合理(如网站无法访问),经用户许可后可重新规划任务。

3、安全控制:用户可通过界面配置是否对代理操作(如点击按钮)进行审批,关键操作需用户确认方可执行,保障任务执行安全性。

4、学习优化:系统会从过往任务中学习经验,持续提升未来任务的自动化处理能力。

Magentic-UI安装和使用指南

基础依赖:需安装 Docker,Windows 系统用户还需配置 WSL2,macOS 与 Linux 用户可直接使用 Docker。

软件版本:Python 需至少 3.10 版本。

API 配置:需设置 OpenAI API 密钥环境变量 OPENAI_API_KEY,或通过 config.yaml 文件配置自定义客户端(支持 OpenAI 及 Azure OpenAI)。

安装与启动方式

1、PyPI 安装(推荐)

# 创建并激活虚拟环境
python3 -m venv .venv
source .venv/bin/activate

# 安装 Magentic-UI
pip install magentic-ui

# 启动服务(首次运行需等待 Docker 镜像构建)
magentic ui --port 8081

服务启动后,可通过 http://localhost:8081 访问用户界面。

2、源码构建

# 克隆代码仓库
git clone https://github.com/microsoft/magentic-ui.git
cd magentic-ui

# 安装依赖(需先安装 uv 和 node.js)
uv venv --python=3.12 .venv
uv sync --all-extras
source .venv/bin/activate

# 构建前端界面
cd frontend
npm install -g gatsby-cli
yarn install
yarn build
cd ..

# 启动服务
magentic ui --port 8081

开发模式下,可单独启动前端热更新服务:

# 另开终端执行
cd frontend
npm run start
应用场景

生活服务类:如“从泰国塔尼(SLU 店)订购蟹肉馄饨”,系统会分步查找官网、定位在线订餐页面、添加菜品至购物车并完成结算,关键操作需用户审批。

信息查询类:支持查询附近邮局营业时间、微软研究院最新论文、GitHub 仓库特定提交记录等。

复杂任务处理:可处理跨平台操作任务,例如组合网页交互与代码执行完成特定工作流。