WebEvolver
Paper · arXiv 2025 · 2504.21024v2

WebEvolver:让网页智能体一边自我改进,一边训练自己的「虚拟网站」

网页智能体的自我改进会在几轮后停滞:策略越训越窄,真实环境里的多步搜索又太贵。 WebEvolver 把世界模型 LLM放进同一个循环——它先学会预测「当前页面 + 动作 → 下一棵可访问性树」, 训练时充当虚拟 Web 服务器生成合成轨迹,推理时充当想象引擎做多步前瞻。 代价是:策略和世界模型都是 Llama-3.3-70B,推理还要多次 rollout 和 GPT-4o 打分。

Tianqing Fang 等 · Tencent AI Lab arXiv 2504.21024v2 ↗ 博客笔记 ↗
TL;DR · 30 秒抓住核心

自我改进的瓶颈不是「不会学」,而是「没东西可学」:策略在熟悉轨迹上越走越窄,真实网页里做搜索又要付出大量交互成本。论文把这两件事都交给一个与策略共同训练的世界模型。

世界模型是一个 LLM:输入当前 accessibility tree 和动作,输出下一棵可访问性树。训练时它替换真实环境,和策略交替生成 T=7 步合成轨迹;合成数据经过拒绝采样后,与真实成功轨迹一起做 SFT。

推理时它做 WMLA:主实验中策略最多采样 3 个候选动作,世界模型对每个动作做 d 步 rollout,GPT-4o 按 {0, 0.5, 1.0} 打分,取最高分执行。d=2 在 Text-only WebVoyager(WV All,473 queries)上把成功率推到 51.37%,但 Mind2Web-Live 的最佳深度是 d=1。

42.49%
Text-only WebVoyager 成功率(WebEvolver,推理不加 WMLA;WV All,473 queries)
self-improve(1) 38.68;+3.81 个百分点(相对 +9.85%)
51.37%
Text-only WebVoyager + WMLA d=2(WV All,473 queries)
比 42.49 高 8.88 个百分点(相对 +20.90%)
22.64%
Mind2Web-Live 成功率(WebEvolver)
self-improve(1) 15.09;+7.55 个百分点(相对 +50.03%)
01

自我改进会撞墙:策略越训越窄,真实环境里的搜索又太贵

先建立两个瓶颈,后面才知道世界模型补的是哪一块。

典型的网页智能体自我改进是一个闭环:用当前策略在真实网站上采样轨迹,用自动评估或拒绝采样留下成功轨迹,再对 backbone LLM 做 SFT;下一轮用更新后的策略继续采样(§3.2)。这在第一轮通常有效,但论文指出性能最终会进入平台期(stagnation)。

瓶颈一

探索多样性因过拟合而衰减

策略越来越过拟合于熟悉的轨迹,难以发现新的状态。论文的原句是:

“First, exploration diversity declines as the agent overfits to familiar trajectories, limiting discovery of novel states.”§1 Introduction

结果就是:训练数据越来越像,下一轮 SFT 能带来的新增信息越来越少。

瓶颈二

推理期搜索要花更多真实交互

搜索类方法能提供多样化轨迹,但需要昂贵的真实交互、收益有限。论文的措辞很直接:

“they require costly real-world interactions for marginal gains.”§1 Introduction

而且已有模拟方法大多只做 one/two-step look-ahead,缺少连贯的多步 rollout(§1)。

所以问题可以写成一句话:能不能在不增加真实交互的前提下,让智能体见到更多样的状态,并在决策前模拟多步后果?

02

已有两条路:真实环境反复试,或让 LLM 做一两步想象

两条路各自解决了一半问题,但都没有把「环境模型」和「策略」放在同一个训练循环里。

路线 A

真实环境里的自我改进

代表工作包括 BAGEL、OpenWebVoyager、Self-Improved Agents(§2)。它们迭代「探索—反馈—优化」:在真实或模拟网页里采样,留下成功轨迹,再 SFT 策略。

卡点:真实交互慢且贵;策略越训越窄;论文把 OpenWebVoyager 作为主要的 self-evolving baseline(§1)。

路线 B

用现成 LLM 当世界模型

WebDreamer、WMA、WKM、RAP 等工作用 LLM 预测动作后果,再做搜索或规划(§2)。

卡点:论文认为它们仍受限于 off-the-shelf LLM,本质是复杂的 chain-of-thought pipeline,世界模型只是给静态 GPT-4o 的中间信息:

“However, these approaches remain limited by their reliance on off-the-shelf LLMs. In detail, both WebDreamer and WMA works at inference time. Their approaches essentially create sophisticated chain-of-thought pipelines where the world model serves as intermediate information for static GPT-4o.”§2 Related Work · World Models

论文还指出,两者都没有真正用世界模型通过训练来改进 agent 本身(§2)。

WebEvolver 的切口是:不只用现成 LLM 做提示,而是在自我改进循环里专门 SFT 一个世界模型;它和策略一起迭代,既生成训练数据;推理期由它生成 d 步 rollout,再由 GPT-4o 打分。

03

把世界模型也放进循环:预测下一棵可访问性树

核心机制只有三件事:世界模型怎么定义、合成轨迹怎么滚、推理时怎么用。

论文把网页任务形式化为 POMDP:观测 ot 是从当前网页状态提取的可见内容,主要是 URL + accessibility tree;动作空间包括 click、type、goback、scroll、stop 等原子操作(§3.1)。世界模型是一个语言模型,输入当前观测和格式化动作,预测下一观测:

ot ~ πθw( · | Iw, cwt )
Eq. 7 · 世界模型在截断历史 cwt 上生成下一观测 ot
ôt ~ πθw( · | Iw, cwt )
Eq. 9 · 轨迹合成时的合成观测 ôt;§3.3 正文另写作 ôt+1,与 Eq. 9 的记号不一致

世界模型的训练目标是 SFT:在自我改进循环收集的轨迹上,最大化下一观测和推理链的对数似然(Eq. 8)。目标位是下一观测 ot(v2 原文 HTML 将该符号标蓝)。

J(θw) = Eτw~Di Σt=1T [ log πθw(ot | cwt, hwt) + log πθw(hwt | cwt) ]
Eq. 8 · 世界模型 SFT 目标;目标位为下一观测 ot(v2 原文 HTML 标蓝)

训练时的角色:虚拟 Web Server

合成轨迹的滚法是「世界模型预测下一观测 → 策略在合成观测上出下一动作」交替进行(Eq. 9/10)。每条合成轨迹长度 T = 7,如果世界模型生成了终止状态就提前结束;只对自我改进轮次里没有成功的 query 生成合成轨迹,以增加多样性(§4.2)。合成轨迹经过拒绝采样得到 Dw,再和真实成功轨迹 Di 合并,训练最终的 WebEvolver 策略。

关键点

合成数据不需要「真实」,只需要「多样」

论文明确接受世界模型产生 hallucinated web states:训练目标是学习灵活的动作预测,即使状态带有噪声(§1)。这也是为什么合成轨迹能扩展探索,而不必先造一个高保真模拟器。

推理时的角色:WMLA 想象引擎

WMLA(World Model Look-Ahead)在推理时对每个候选动作做 d 步 rollout:世界模型生成未来观测,策略在合成观测上继续出动作(Eq. 11)。然后用 GPT-4o 作为 evaluator,按轨迹与任务完成的对齐程度打 {0, 0.5, 1.0},取最高分的动作执行(§3.3)。论文在 §4.3 的主实验里最多采样 3 个候选动作:第一个用 temperature 0,后续用 temperature 0.7 并提示「生成与前面不同的动作」。Table 4 另做 k=2/3/5 消融(48.62/51.37/50.73,§4.4)。

d=0d=1d=2
d=0 · WebEvolver d=1 d=2

读数逐字来自 Table 1 的 Text-only WebVoyager(WV All)/ Mind2Web-Live 两列;d=3 的成功率 Table 1 未列出,论文只写 “diminishing returns”(§4.4)。

手算对账:d=1 与 d=2 的差值怎么来的两组参数 → 结果

所有读数逐字来自 Table 1;这里只做点差和相对变化,不计算均值/标准差。Table 1 给的是成功率单值;论文 §4.1 称在两个大致相同的时间窗各跑一次并报告平均值,但未给逐次结果,因此本页不涉及 std 口径。

参数组 1:d=1
WebVoyager:46.24 − 42.49 = 3.75 个百分点;3.75 / 42.49 × 100 = 8.83%。
Mind2Web-Live:28.30 − 22.64 = 5.66 个百分点;5.66 / 22.64 × 100 = 25.00%。

参数组 2:d=2
WebVoyager:51.37 − 42.49 = 8.88 个百分点;8.88 / 42.49 × 100 = 20.90%。
Mind2Web-Live:24.53 − 22.64 = 1.89 个百分点;1.89 / 22.64 × 100 = 8.35%。

JS 用同样的数做 toFixed(2),与上面逐位一致。d=0 是基线,差值为 0。

04

训练账本:70B 策略 + 70B 世界模型,两轮迭代,7 步合成轨迹

这一节把论文的实验配置摊开:谁在训、拿什么训、合成数据怎么来、评测怎么算。

Backbone

Llama-3.3-70B

策略模型和世界模型都用同一个 backbone(70B)。论文未报告 7B/13B 等更小规模的实验(§4.1)。

训练查询

1,516 条

沿用 OpenWebVoyager 的训练集:Mind2Web 训练集 + WebVoyager/Mind2Web 网站上的 self-instructed queries(§4.2)。

合成轨迹

T = 7 步

世界模型 iter-2 + 策略 iter-1(论文称 iter-1 表现更好)交替生成;只用在自我改进中未成功的 query(§4.2)。

两轮自我改进

第一轮用 Llama-3.3-70B 采样,Llama-3.3-70B 自己做 rejection sampling,得到 self-improve (1);第二轮用更新后的策略再采样,新成功轨迹追加到第一轮数据,得到 self-improve (2)。世界模型也按同样节奏得到 world model (iter 1) 和 world model (iter 2)(§4.2)。Table 1 另列 self-improve (3)(38.65 / 16.98)作为基线;§4.2 正文只描述到 iter 2,未展开 iter 3 的训练细节。

注意 rejection sampling 的模型:论文特意在自我改进循环里只用 Llama-3.3-70B,不用 GPT-4o,以保持「纯自我改进」;最终评测才用 GPT-4o 做端到端任务完成判断(§4.1/§4.2)。

评测条件

Text-only WebVoyager(WV All)用 473 条 query,Mind2Web-Live 用 53 条 query;部分网站因地理位置或 IP 封锁被过滤(Appendix B)。论文称在两个大致相同的时间窗各跑一次并报告平均值,但 Table 1 没有给逐次结果或标准差(§4.1)。

WMLA 的评测:主实验候选动作最多 3 个;look-ahead 深度取 1, 2, 3;打分器用 GPT-4o;WebDreamer 对比也用 GPT-4o 做 outcome prediction 和 action evaluation(§4.3/§4.4)。Table 4 另做 k=2/3/5 消融,成功率 48.62/51.37/50.73(§4.4)。

05

双角色流程:训练时当虚拟服务器,推理时当想象引擎

同一个世界模型,在两个阶段接不同的输入、产出不同的东西。

训练阶段 · 世界模型当虚拟 Web Server 真实网页环境Cognitive Kernel + Playwright 采样轨迹 τ(o_t, a_t) + 成功/失败 拒绝采样真实成功轨迹 D_i 策略 SFTWebEvolver policy M_i World Model LLM (Llama-3.3-70B)输入 o_t, a_{t−1};输出 ô_{t+1}(可访问性树) 训练 (o_t, a_{t−1}) → o_{t+1} 虚拟 Web Server合成轨迹 D_w(T=7) 合并 D_i + D_w 下一轮:策略回到真实环境采样(co-evolve) 推理阶段 · 世界模型当想象引擎(WMLA) 策略模型主实验采样最多 3 个候选动作 World Model对每个动作做 d 步 rollout GPT-4o Scorer{0, 0.5, 1.0} argmax执行最优动作 同一个世界模型
据 Figure 1 / Figure 2 重绘(非原图)。训练阶段的合成轨迹长度 T=7 见 §4.2;推理阶段的评分集合 {0, 0.5, 1.0} 见 §3.3。
这张图简化了什么重绘不是原图

图里保留了论文的两个主循环:训练阶段的「真实轨迹 → 世界模型 → 合成轨迹 → 策略 SFT」,以及推理阶段的「候选动作 → d 步 rollout → GPT-4o 打分 → argmax」。没有画出的细节包括:rejection sampling 的具体评估 prompt、accessibility tree 的截断规则、世界模型 CoT 的生成方式,以及附录 A 的完整系统提示。

图中「同一个世界模型」指训练得到的 world model (iter 2) 在推理阶段继续使用;论文 §4.2 明确合成数据用 world model (iter 2) + policy model (iter 1),§4.3 的 WMLA 用最终世界模型和策略模型。

训练阶段的关键是数据闭环:真实轨迹训练世界模型,世界模型生成合成轨迹,合成轨迹再训练策略;下一轮策略采样又会给世界模型新数据。推理阶段的关键是候选动作的对比:世界模型只负责「想象后果」,GPT-4o 负责「打分」,策略负责「出候选」。

06

效果:Text-only WebVoyager 到 51.37%,但 Mind2Web-Live 的最佳深度是 1

先看 Table 1 的汇总成功率,再看 Table 2 的世界模型内在评估;两个反直觉点都在表里。

主结果:训练加合成数据,推理再加 WMLA

Table 1 转录:Text-only WebVoyager(WV All,473 queries)与 Mind2Web-Live-filtered(53 queries)两列;逐网站列未转录。成功率为 %。v2 表注:underline 表示 self-improving 最佳(本页以 tr.best 标 WebEvolver 行),bold 表示 inference look-ahead 最佳(本页用粗体标 +WMLA d=2 的 51.37 与 +WMLA d=1 的 28.30)。
模型 / 方法Text-only WebVoyager AllMind2Web-Live
GPT-4o-mini32.5516.98
GPT-4o38.8320.75
Self-Improving Llama-3.3 70B(zero-shot)32.9818.86
self-improve (1)38.6815.09
self-improve (2)38.2316.98
self-improve (3)38.6516.98
Synthetic Traj.38.9818.86
WebEvolver42.4922.64
+ WebDreamer44.6122.64
+ WMLA (d=1)46.2428.30
+ WMLA (d=2)51.3724.53

读表时先把几类基线分开:zero-shot 是 Self-Improving Llama-3.3 70B(32.98);self-improve (1)/(2)/(3) 是只加真实成功轨迹的迭代;Synthetic Traj. 是不用世界模型的合成轨迹基线;WebEvolver 才是真实轨迹 + 世界模型合成轨迹。

WMLA d=2 相对 iter1 的差距是 12.69 个百分点(相对 +32.81%);这是笔记里「超过 12 个百分点」的来源。注意这个对比的分母是 self-improve(1),不是 WebEvolver。

世界模型内在评估:深度 1 最好,Depth=2 已明显下降,Depth≥3 多数指标跌破 50

Table 2 转录:All 列(4 个模型);iter-2 的 Depth=1/2/3/≥4 列在下方交互中逐格转录。其余模型的分深度列未转录。数值按表注的 0–100 百分比口径。
模型STRSim.O/A
GPT-4o40.6233.2637.85
Llama-3.3-70B39.0432.2538.77
iter-149.2337.8343.15
iter-256.7944.7751.82

从 iter-1 到 iter-2,All 列的三项分别提高 7.56 / 6.94 / 8.67 个百分点(STR / Sim. / O/A)——世界模型确实随自我改进循环变强。但分深度看,iter-2 的峰值在 Depth=1:STR 75.96、Sim 63.56、O/A 72.86;到 Depth=2 已降到 57.80 / 45.14 / 52.32;Depth=3 进一步降到 51.24 / 35.82 / 45.27,Depth≥4 为 50.54 / 39.94 / 45.31(Table 2)。

论文 §4.4 的措辞是 “performance degrades sharply (scores < 0.50) for generation depths > 2”。这里有一个口径要看表注:§4.4 说把分数归一化到 0~1,Table 2 表注说 All values are percentages (range 0-100)。两处并列,本页按 Table 2 表注的 0–100 转录;在这个口径下,Depth=3/≥4 的 Sim 与 O/A 低于 50,STR 仍略高于 50。

AllDepth=1Depth=2Depth=3Depth≥4

柱高与读数逐格取自 Table 2 的 iter-2 行;交互只切换指标,不做派生计算。

这个交互没有派生数字Table 2 原值逐格转录

交互只切换 STR / Sim. / O/A 三个指标,所有柱高和读数都直接取 Table 2 的 iter-2 行:All 56.79/44.77/51.82;Depth=1 75.96/63.56/72.86;Depth=2 57.80/45.14/52.32;Depth=3 51.24/35.82/45.27;Depth≥4 50.54/39.94/45.31。

不计算差值和百分比,因此没有 std 口径问题。表注与 §4.4 的 0–1 / 0–100 两种口径并列见上。

GAIA-web 与 SimpleQA:Level 1 提升,Level 2 收益有限

Table 3 转录:GAIA-web 的 Level 1 / Level 2 与 SimpleQA 数值;原文表注未标单位,本页按百分比读取。本页 tr.best 标 +WMLA 行(v2 对该行加粗)。注:§4.4 正文写 “Results on Table 4”,但 GAIA-web/SimpleQA 实际在 Table 3;Table 4 是 k 消融。
模型GAIA-web Level 1GAIA-web Level 2SimpleQA
Llama 3.3-70B19.210.936
iter 126.915.644
iter 226.912.545
WebEvolver30.717.248
+ WMLA34.617.258

Level 1 从 Llama-3.3-70B 的 19.2 到 WebEvolver 的 30.7(+11.50 个百分点,相对 +59.90%),再加 WMLA 到 34.6;Level 2 从 10.9 到 17.2(+6.30 个百分点,相对 +57.80%),加 WMLA 仍为 17.2。SimpleQA 从 36 到 WebEvolver 的 48,加 WMLA 到 58。但 Level 2 不是单调的:iter1 15.6,iter2 12.5(低 3.10 个百分点,相对下降 19.87%),WebEvolver 才回到 17.2。论文 §4.4 明确说 Level 2 的收益有限,因为更深推理和更长多步交互超出当前训练范围。

Table 4 是 WMLA 的 k 消融:k=2/3/5 时 WebVoyager 成功率为 48.62/51.37/50.73。§4.4 称性能在 k=3–5 附近平台化,k=3 仍是最好选择。

口径注:摘要的 10% 与 §4.4 的 6% 怎么对上 Table 1原文措辞与表值并列

摘要写 “a 10% performance gain over existing self-evolving agents”。按 Table 1 的 Text-only WebVoyager,WebEvolver 42.49 对 self-improve(1) 38.68,绝对差 3.81 个百分点,相对差 9.85%;Mind2Web-Live 的相对差是 50.03%。论文没有给跨三个基准的单一汇总公式。

§4.4 写 “the initial self-improvement iteration yields a 6% success rate increase over the zero-shot baseline on WebVoyager”。Table 1 的 zero-shot 是 32.98,iter1 是 38.68:绝对差 5.70 个百分点,相对差 17.28%。原文的 “6%” 与表值的 5.70 个百分点并列,本页不替它改数。

07

边界:世界模型会随深度漂移,长程与视觉页面仍缺证据

论文自己的表和数据里,能读出四个边界;它们决定了这套方法什么时候别用。

边界一

多步想象会随深度变差

iter-2 世界模型的 STR 从 Depth=1 的 75.96 到 Depth=2 的 57.80、再到 Depth=3 的 51.24(下降 24.72 个百分点,相对下降 32.54%);Sim 和 O/A 在 Depth=3/≥4 都低于 50(Table 2)。论文因此说 WMLA 在 d=3 时收益递减(diminishing returns,§4.4)。这条 rollout 链能否支撑需要几十步的长程任务,论文没有直接实验;推断(依据:§4.4 只讨论 d=3 的边际收益,Table 2 只评生成深度)。

边界二

幻觉没有被直接度量

论文明确接受 hallucinated web states,并说这在训练中不是关键问题(§1)。但 §4.4 也承认:“we do not directly evaluate the degree of hallucination. Hallucinations are implicitly captured through Sim. and O/A scores”。也就是说,方法靠 Sim./O/A 和下游成功率间接兜底,没有一个独立的幻觉指标。

边界三

GAIA Level 2 与视觉输入仍缺证据

论文自己写 Level 2 “show limited gains, as these capabilities lie beyond our current training scope”(§4.4)。另外,主实验的观测是 accessibility tree(§3.1/§4.1);Appendix A 的系统提示写 “Optionally, you may be provided with a screenshot of the webpage”,但论文未见截图/视觉输入的消融,视觉布局、图片内容不在当前方法的主要输入里。

边界四

成本与规模没有被摊开

策略和世界模型都是 70B;WMLA 每个候选动作要做 d 步 rollout,还要 GPT-4o 打分。论文未报告 GPU 时数、token 成本或 WMLA 延迟,也没有 7B/13B 等更小模型的实验(§4.1–§4.3)。Mind2Web-Live 只有 53 条 query;在这个规模上,d=1 与 d=2 的 3.77 个百分点差距(28.30 − 24.53)不宜过度解读。 推断(依据:Table 1 表注给出 53 queries;论文未报告置信区间)

一句话:WebEvolver 解决的是「在真实交互有限的前提下,如何用世界模型扩展训练数据和推理搜索」,不是「让世界模型替代真实环境」。当任务需要高保真长程模拟、强视觉理解或严格延迟预算时,这篇论文的证据还不够。