跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

WebArena:真实网页环境下的自主智能体构建与评估

综述由AI生成WebArena 是卡内基梅隆大学提出的真实网页环境基准,旨在评估基于自然语言指令的自主智能体。它通过 Docker 封装独立网站(电商、社交、开发平台、CMS)及工具,提供可复现的实验环境。包含 812 个长序列任务,强调功能正确性而非动作序列匹配。实验显示当前顶尖模型成功率远低于人类,揭示了复杂规划能力的差距。项目开源,支持本地部署与自定义 Agent 开发。

樱花落尽发布于 2026/4/5更新于 2026/5/2228 浏览
WebArena:真实网页环境下的自主智能体构建与评估

WebArena:真实网页环境下的自主智能体构建与评估

WebArena 是卡内基梅隆大学在 ICLR 2024 上发表的论文成果,提出并实现了一个高度逼真、可复现的网页环境,专门用于开发和评估基于自然语言指令的自主智能体(Autonomous Agents)。本文详细介绍该论文的核心内容。

解决什么问题?

随着大语言模型(如 GPT-4)的快速发展,研究者们开始探索让 AI 智能体通过自然语言指令完成日常任务。然而,现有的智能体评估环境存在几个严重问题:

  1. 过于简化、不真实:很多环境功能受限,使用静态缓存页面,无法反映真实网页的复杂交互。
  2. 任务复杂度低:现有任务往往只需要几步操作,缺乏长序列、需要规划和探索的任务。
  3. 评估方式不合理:很多环境只比较预测动作序列与参考序列的文本相似度,忽略了功能正确性。
  4. 不可复现:依赖真实网站会导致 CAPTCHA、内容变动等问题,难以公平比较。

这些问题导致智能体在模拟环境里表现不错,但一到真实世界就'翻车'。论文的目标就是构建一个既高度真实又完全可复现的网页环境。

如何解决?—— WebArena 的核心设计

WebArena 的核心是一个独立、可自托管的网页环境,使用 Docker 容器封装,所有网站都是开源实现 + 从真实网站采样数据填充,完全脱离真实互联网。

1. 包含的网站与工具

论文根据作者们真实浏览器历史分析,选出了互联网上最常见的四大类网站,并各实现了一个功能完整的实例:

  • 电商平台:OneStopShop(类似 Amazon/eBay),支持浏览、搜索、购物车、下单等完整流程。
  • 社交论坛:类似 Reddit,支持发帖、评论、子版块等。
  • 协作开发平台:基于真实 GitLab 开源代码搭建,支持仓库、Issue、Merge Request 等。
  • 内容管理系统(CMS):类似在线商店后台,支持商品管理、订单查看等。

此外,还加入了人类常用辅助工具(作为独立网站):地图、计算器、便签本以及知识资源(英文 Wikipedia、各网站的用户手册)。

2. 观察空间(Observation Space)

为了尽可能贴近人类浏览体验,观察包括当前 URL 和所有打开的标签页,以及当前焦点标签页的内容。可选择三种表示方式:原始 HTML DOM 树、截图、可访问性树(Accessibility Tree,推荐)。支持多标签页操作,是首个明确支持多标签的网页智能体环境。

3. 动作空间(Action Space)

设计了一套仿键盘 + 鼠标的复合动作,包括元素操作(click、hover、type、press 键、scroll)、标签页操作(new_tab、tab_focus、tab_close)和导航操作(go_back、go_forward、goto URL)。元素选择支持坐标或元素 ID(在可访问性树或 DOM 中自动标注的唯一编号)。

4. 基准任务集(Benchmark)

论文发布了 812 个测试任务,来自 241 个模板。任务特点为高层次自然语言指令、长序列需要规划。分为信息查找、站点导航、内容与配置操作三大类。还有一部分不可完成任务,考察智能体是否会胡编。

5. 评估方式:强调功能正确性

这是 WebArena 最亮眼的设计之一:

  • 信息查找类:提供参考答案,使用 exact_match、must_include 或 GPT-4 做 fuzzy_match 评估语义等价。
  • 导航与操作类:编写程序直接检查执行轨迹中的中间状态(数据库、最终页面内容、URL 等),验证是否真正达到了目标。

这种评估方式更可靠、容错,也更贴近真实需求。

实验结果:当前顶尖模型还差得很远

论文用 GPT-4、PaLM-2 等模型做了基线实验,最佳配置端到端成功率只有 14.41%,而人类在相同任务上的成功率是 78.24%。这说明当前大模型在复杂、长序列的真实网页任务上仍有巨大差距。

总结与意义

WebArena 的贡献在于提供了一个真实感极强的网页环境,完全可复现、自托管,发布了高质量、长序列、功能正确性评估的基准任务。项目已完全开源:代码、环境复现脚本、任务、视频演示都在 https://webarena.dev/。

WebArena Benchmark 使用指南(基于官方 GitHub 仓库)

WebArena 是 ICLR 2024 论文的开源实现,一个独立、自托管的网页环境,用于测试自主 Agent 在真实网页任务上的性能。仓库地址:https://github.com/web-arena-x/webarena。

它包含 812 个长序列任务,强调功能正确性评估。截至 2025 年底,最强单 Agent 已达 64.2%。Leaderboard:https://docs.google.com/spreadsheets/d/1M801lEpBbKSNwP-vDBkC_pF7LdyGU1f_ufZb_NWNBZQ/edit?usp=sharing(手动提交结果)。

使用门槛:需要 Docker/Python 经验,高配机器。不能用官网 demo 跑正式实验,必须本地自建环境确保可复现。

1. 前提条件(Prerequisites)
  • Python 3.10+
  • Conda(推荐)
  • Docker(环境托管)
  • OpenAI API Key(基线 Agent 用,export OPENAI_API_KEY=sk-...)
  • 高内存/CPU(推荐 AWS AMI 预装镜像,避免手动建站)
2. 安装依赖(Installation)
conda create -n webarena python=3.10 conda activate webarena pip install -r requirements.txt playwright install# 安装浏览器(Chromium 等) pip install -e .# 可编辑安装# 可选:开发模式 pip install -e ".[dev]" mypy --install-types --non-interactive browser_env agents evaluation_harness pip install pre-commit pre-commit install
3. 搭建环境(Environment Setup)

环境用 Docker 运行多个网站(OneStopShop 电商、Reddit、GitLab、CMS、地图、Wikipedia 等)。

  • 详见 /environment_docker/README.md。
  • 推荐:用 AWS AMI(预装所有网站,快速启动)。
  • 启动后,配置网站 URL(替换为你的域名/端口):
export SHOPPING="<your_shopping>:7770"
export SHOPPING_ADMIN="<your_cms>:7780/admin"
export REDDIT="<your_reddit>:9999"
export GITLAB="<your_gitlab>:8023"
export MAP="<your_map>:3000"
export WIKIPEDIA="<your_wiki>:8888/wikipedia_en_all_maxi_2022-05/A/User:The_other_Kiwix_guy/Landing"
export HOMEPAGE="<your_home>:4399"
  • 重置环境:用脚本恢复初始状态。
  • 获取自动登录 Cookie:
mkdir -p ./.auth
python browser_env/auto_login.py
4. 生成任务配置(Generate Config Files)
python scripts/generate_test_data.py

输出 812 个 .json 到 /config_files/(每个任务的高层意图 + 验证器)。

5. 快速测试(Quick Start)

用 minimal_example.py 体验 Gym-like 接口:

from browser_env import ScriptBrowserEnv, create_id_based_action
import random

env = ScriptBrowserEnv(
    headless=False, # headless=True 后台运行
    observation_type="accessibility_tree", # 或 "html" / "screenshot"
    current_viewport_only=True,
    viewport_size={"width":1280,"height":720},
)

config_file = "config_files/0.json" # 示例任务
obs, info = env.reset(options={"config_file": config_file})

# 示例动作:ID-based click(推荐,精确无歧义)
id_ = random.randint(0,1000)
action = create_id_based_action(f"click [{id_}]")
obs, _, terminated, _, info = env.step(action)

观察:URL + 多标签页 + 内容(Accessibility Tree 最优)。动作:click/hover/type/new_tab 等。

6. 运行基线 Agent & 评估(Run Baselines & Evaluate)

用 run.py 跑 few-shot/CoT Agent(GPT-4o 等):

python run.py \
  --instruction_path agent/prompts/jsons/p_cot_id_actree_2s.json \
  --test_start_idx 0 \
  --test_end_idx 812 # 全 benchmark \
  --model gpt-4o # 或 gpt-3.5-turbo \
  --result_dir ./results
  • 输出:HTML 轨迹(./results/0.html),自动评估成功率。
  • 并行跑:/parallel_run.sh。
  • 评估:/evaluation_harness 检查功能正确性(r_info / r_prog),支持离线验证。
  • 结果上传 Leaderboard 分享。
7. 实现自己的 Agent
  • 提示工程:在 /agent/prompts/raw 定义 JSON(intro/examples/template/meta_data)。
  • Prompt Constructor:继承 /agent/prompts/prompt_constructor.py,实现 construct(建输入)和 _extract_action(解析输出)。
  • 示例:CoT/ReAct 风格,支持 ID-based 动作。
  • 集成其他 LLM:/llms/。
8. 关键目录
目录/文件作用
/agentAgent 提示 & 实现
/browser_env浏览器环境 & 自动登录
/config_files任务 JSON
/environment_dockerDocker 搭建
/evaluation_harness评估工具
/resources人类轨迹/执行记录
run.py主运行脚本
minimal_example.py快速 demo
9. 常见问题 & 更新(2025)
  • bug 修复:v0.2.0 修复标注错误;2025 更新 mypy 类型检查、地图后端内存。
  • 扩展:新 benchmark(终端/编码任务,12/2024);ZenoML 集成(/scripts/webarena-zeno.ipynb)。
  • 问题:Docker 镜像大,用 AMI;CVE-2025-4022 已修补。
  • 社区:GitHub Issues;X 上活跃讨论新 SOTA。

资源:

  • 官网:https://webarena.dev/(视频/任务示例)
  • 论文/轨迹:仓库 /resources
  • 跑完分享结果到 Leaderboard,推动研究!

目录

  1. WebArena:真实网页环境下的自主智能体构建与评估
  2. 解决什么问题?
  3. 如何解决?—— WebArena 的核心设计
  4. 1. 包含的网站与工具
  5. 2. 观察空间(Observation Space)
  6. 3. 动作空间(Action Space)
  7. 4. 基准任务集(Benchmark)
  8. 5. 评估方式:强调功能正确性
  9. 实验结果:当前顶尖模型还差得很远
  10. 总结与意义
  11. WebArena Benchmark 使用指南(基于官方 GitHub 仓库)
  12. 1. 前提条件(Prerequisites)
  13. 2. 安装依赖(Installation)
  14. 3. 搭建环境(Environment Setup)
  15. 4. 生成任务配置(Generate Config Files)
  16. 5. 快速测试(Quick Start)
  17. 示例动作:ID-based click(推荐,精确无歧义)
  18. 6. 运行基线 Agent & 评估(Run Baselines & Evaluate)
  19. 7. 实现自己的 Agent
  20. 8. 关键目录
  21. 9. 常见问题 & 更新(2025)
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 大模型低显存推理优化:Offload 技术详解
  • 基于昇腾 Atlas 部署 llama.cpp 实战
  • 飞书机器人对接 Claude Code 实现手机端 AI 编程辅助
  • Ubuntu 22.04 安装 ROS2 Humble 官方完整版指南
  • Qwen3-VL 图文融合能力:统一理解与部署实战
  • EasyDSS 无人机 RTMP 高清推流与转码技术应用解析
  • 算法与数据结构:并查集(Union-Find)
  • 基于 Vue3 的大文件分片加密与断点续传实现方案
  • Web 自动化测试入门:从概念到百度搜索实战
  • 基于 Ocelot 与 Nacos 的 WebAPI 网关鉴权实现
  • Linux 系统字体管理与安装详细教程
  • 解决 Codex 在 WSL 环境下登录报 Token exchange failed 403 问题
  • 斯坦福 2025 AI Index Report 核心洞察:从技术突破到系统扩散
  • FinalShell Windows 远程连接 Linux 服务器使用指南
  • 鸿蒙 Share Kit 碰一碰分享功能开发指南
  • Spring Boot与MySQL接口结合Redis和Caffeine多级缓存实践
  • ms-swift 框架大模型推理实践完全指南
  • Llama-3 接入 verl 框架的强化学习训练实践
  • 有哪些免费好用的AI写小说软件?盘点2026年AI写作10大辅助工具
  • ClawX:OpenClaw 可视化桌面客户端,零配置玩转 AI 智能体

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online