百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

这AI浏览器代理太强!AI帮你自动完成复杂网页操作,微软开源新神器

ztj100 2025-07-03 20:57 66 浏览 0 评论

大家好,我是每日给大家推荐优秀开源项目的小G。


今天要给大家介绍的这个项目,可能会彻底改变你使用浏览器的方式。想象一下,当你需要在复杂的网站上填写表单、筛选航班信息、定制食物订单,或者从各种网站收集数据生成图表时,不用再一步步手动操作,而是直接告诉AI"帮我完成这个任务",然后AI就能像真人一样操作浏览器,完成所有复杂的网页交互。

这就是今天要介绍的Magentic-UI——一个由微软开源的革命性人机协作浏览器代理系统!

项目介绍

Magentic-UI是微软推出的一个研究原型,它提供了一个以人为中心的界面,背后由多智能体系统驱动,能够自动浏览和执行网页操作生成和执行代码,以及生成和分析文件

项目核心特色

与其他浏览器自动化工具不同,Magentic-UI最大的亮点在于其透明且可控的交互界面,让用户能够高效地参与到人机协作循环中。

核心功能详解

协作规划(Co-Planning)

通过聊天和计划编辑器协作创建和批准分步计划,让你和AI共同制定任务执行策略。

协作执行(Co-Tasking)

在任务执行过程中,你可以随时通过浏览器或聊天打断并引导执行过程。Magentic-UI也会在需要时主动寻求澄清和帮助。

操作防护(Action Guards)

对于敏感操作,系统会要求用户明确批准后才执行,确保安全性。

计划学习与检索

从以往的运行中学习,改进未来的任务自动化,并将成功的计划保存在计划库中。可以自动或手动检索保存的计划用于未来类似任务。

并行任务执行

支持同时运行多个任务,通过会话状态指示器让你知道什么时候需要输入或任务已完成。

系统架构

Magentic-UI的底层系统由一个专业化的智能体团队组成,改编自AutoGen的Magentic-One系统:

协调者(Orchestrator)

  • 由大语言模型驱动的主导智能体
  • 负责与用户协作规划
  • 决定何时寻求用户反馈
  • 将子任务委派给其他智能体

网页浏览者(WebSurfer)

  • 配备可控制网页浏览器的LLM智能体
  • 能够点击、输入、滚动、访问页面
  • 支持标签管理、选择选项、文件上传、多模态查询

编码者(Coder)

  • 配备Docker代码执行容器的LLM智能体
  • 可以编写和执行Python和shell命令

文件处理者(FileSurfer)

  • 配备Docker代码执行容器和文件转换工具
  • 可以定位文件、转换文件为markdown格式、回答文件相关问题

用户代理(UserProxy)

  • 代表与Magentic-UI交互的用户
  • 协调者可以将工作委派给用户而不是其他智能体

快速开始

环境要求

  1. 1Docker:Magentic-UI正常运行需要Docker。Windows或Mac用户可以使用Docker Desktop
  2. WSL2(Windows用户):Windows运行需要WSL2环境
  3. OpenAI API密钥:通过设置环境变量OPENAI_API_KEY提供
  4. Python 3.10+:至少需要Python 3.10

PyPI安装

推荐使用虚拟环境避免包冲突:

python3 -m venv .venv
source .venv/bin/activate
pip install magentic-ui
# export OPENAI_API_KEY=<YOUR API KEY>
magentic ui --port 8081

如果使用uv进行依赖管理:

uv venv --python=3.12 .venv
. .venv/bin/activate
uv pip install magentic-ui

运行Magentic-UI

确保Docker正在运行,然后执行:

magentic ui --port 8081

注意:首次运行会需要较长时间构建Docker镜像,后续运行会快很多。

启动后,访问 http://localhost:8081 即可使用界面。

支持其他模型

如需使用Azure模型或Ollama:

# Azure支持
pip install 'magentic-ui[azure]' 
# Ollama支持
pip install 'magentic-ui[ollama]'

自定义客户端配置

你可以通过UI设置(右上角图标)配置不同的模型,或创建config.yaml文件:

OpenAI配置示例:

# config.yaml
model_config:&client
provider:autogen_ext.models.openai.OpenAIChatCompletionClient
config:
    model:gpt-4o
    api_key:<YOURAPIKEY>
    max_retries:10

orchestrator_client:*client
coder_client:*client
web_surfer_client:*client
file_surfer_client:*client
action_guard_client: *client

Azure OpenAI配置示例:

# config.yaml
model_config:&client
provider:AzureOpenAIChatCompletionClient
config:
    model:gpt-4o
    azure_endpoint:"<YOUR ENDPOINT>"
    azure_deployment:"<YOUR DEPLOYMENT>"
    api_version:"2024-10-21"
    azure_ad_token_provider:
      provider:autogen_ext.auth.azure.AzureTokenProvider
      config:
        provider_kind:DefaultAzureCredential
        scopes:
          -https://cognitiveservices.azure.com/.default
    max_retries:10

orchestrator_client:*client
coder_client:*client
web_surfer_client:*client
file_surfer_client:*client
action_guard_client: *client

从源码构建

如果你想从源码构建或参与开发:

1. 克隆仓库:

git clone https://github.com/microsoft/magentic-ui.git
cd magentic-ui

2. 安装依赖:

uv venv --python=3.12 .venv
uv sync --all-extras
source .venv/bin/activate

3. 构建前端:

# 安装Node.js
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
nvm install node

# 构建前端
cd frontend
npm install -g gatsby-cli
npm install --global yarn
yarn install
yarn build

4. 运行:

magentic ui --port 8081

使用场景

特别适合以下任务:

  • 需要在网页上执行操作的任务(填写表单、定制订单等)
  • 需要深度导航未被搜索引擎索引的网站(筛选航班、从个人网站找链接等)
  • 需要网页导航和代码执行的任务(从在线数据生成图表等)

更多免费AI功能 云片AI:https://y-p.cc/?f=tt

本文完,记得随手点个赞、收藏和转发三连,大家感兴趣的可以关注下,后续我再研究点新东西分享给大家~

关注私信发送DeepSeek即可领取完整版资料

相关推荐

Linux集群自动化监控系统Zabbix集群搭建到实战

自动化监控系统...

systemd是什么如何使用_systemd/system

systemd是什么如何使用简介Systemd是一个在现代Linux发行版中广泛使用的系统和服务管理器。它负责启动系统并管理系统中运行的服务和进程。使用管理服务systemd可以用来启动、停止、...

Linux服务器日常巡检脚本分享_linux服务器监控脚本

Linux系统日常巡检脚本,巡检内容包含了,磁盘,...

7,MySQL管理员用户管理_mysql 管理员用户

一、首次设置密码1.初始化时设置(推荐)mysqld--initialize--user=mysql--datadir=/data/3306/data--basedir=/usr/local...

Python数据库编程教程:第 1 章 数据库基础与 Python 连接入门

1.1数据库的核心概念在开始Python数据库编程之前,我们需要先理解几个核心概念。数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它就像一个电子化的文件柜,能让我们高效...

Linux自定义开机自启动服务脚本_linux添加开机自启动脚本

设置WGCloud开机自动启动服务init.d目录下新建脚本在/etc/rc.d/init.d新建启动脚本wgcloudstart.sh,内容如下...

linux系统启动流程和服务管理,带你进去系统的世界

Linux启动流程Rhel6启动过程:开机自检bios-->MBR引导-->GRUB菜单-->加载内核-->init进程初始化Rhel7启动过程:开机自检BIOS-->M...

CentOS7系统如何修改主机名_centos更改主机名称

请关注本头条号,每天坚持更新原创干货技术文章。如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习1.前言本文将讲解CentOS7系统如何修改主机名。...

前端工程师需要熟悉的Linux服务器(SSH 终端操作)指令

在Linux服务器管理中,SSH(SecureShell)是远程操作的核心工具。以下是SSH终端操作的常用命令和技巧,涵盖连接、文件操作、系统管理等场景:一、SSH连接服务器1.基本连接...

Linux开机自启服务完全指南:3步搞定系统服务管理器配置

为什么需要配置开机自启?想象一下:电商服务器重启后,MySQL和Nginx没自动启动,整个网站瘫痪!这就是为什么开机自启是Linux运维的必备技能。自启服务能确保核心程序在系统启动时自动运行,避免人工...

Kubernetes 高可用(HA)集群部署指南

Kubernetes高可用(HA)集群部署指南本指南涵盖从概念理解、架构选择,到kubeadm高可用部署、生产优化、监控备份和运维的全流程,适用于希望搭建稳定、生产级Kubernetes集群...

Linux项目开发,你必须了解Systemd服务!

1.Systemd简介...

Linux系统systemd服务管理工具使用技巧

简介:在Linux系统里,systemd就像是所有进程的“源头”,它可是系统中PID值为1的进程哟。systemd其实是一堆工具的组合,它的作用可不止是启动操作系统这么简单,像后台服务...

Red Hat Enterprise Linux 10 安装 Kubernetes (K8s) 集群及高级管理

一、前言...

Linux下NetworkManager和network的和平共处

简介我们在使用CentoOS系统时偶尔会遇到配置都正确但network启动不了的问题,这问题经常是由NetworkManager引起的,关闭NetworkManage并取消开机启动network就能正...

取消回复欢迎 发表评论: