想象你经营着一家外卖平台,最近招了一批新骑手。你当然不会直接让他们上路接真实订单——而是先带他们进一座精心设计的“训练城”。城里街道、商店招牌、红绿灯都1:1复刻了真实城市,每个骑手要在其中完成一系列配送任务:找到奶茶店、取餐、绕开修路段、把餐送到客户手里。你在一旁记录:谁送达率高?谁总绕远路?谁走错路还能自己找回方向?这座“训练城”,就是AI领域的WebArena。 WebArena是评估AI智能体(Agent)在真实网页环境中完成复杂交互任务能力的基准平台。它不像传统测试那样给AI出“选择题”,而是把AI放进一个满是真实网站的“浏览器城市”里,让它自己搜索、点击、导航、填表,最终完成一个目标。对RAG与Agent系统的研发者而言,WebArena提供的是一把衡量“智能体真本事”的标尺——回答的不再是“模型记住了多少知识”,而是“模型能不能像人一样把事办成”。

岗位关联

掌握WebArena评测方法论,是AI工程师建立“智能体能力度量衡”的关键一步,直接支撑Agent选型、RAG系统验证与产品化决策。

目录
  1. 可视化演示
  2. 基准平台概览
  3. 任务设计体系
  4. 环境架构
  5. 交互任务类型
  6. 评测指标体系
  7. 评测实施流程
  8. 实践应用
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示AI智能体在真实网页环境中执行多步交互任务的流程,涵盖电商、论坛、CMS、代码开发四类任务场景的完成率与步骤对比。

本节配有交互动效(进入视口后自动加载,约 3KB)。

多步网页交互流程 智能体从首页出发依次访问搜索、商品、购物车、结账页面完成电商任务 完成率 = 成功任务数 / 总任务数 WebArena通过真实网页环境评估Agent多步交互能力。

基准平台概览

训练城不是凭空搭建的。为了让考核结果可信,城市管理者把真实街道、商店招牌、红绿灯一一复刻了进来。骑手在训练城里的每一次转弯、每一次按门铃,都和真实城市里一模一样。为什么要费这么大劲?因为只有足够真实的“考场”,才能看出骑手真正的本事——而不是只会背地图。

WebArena正是这样的“1:1复刻考场”。它由普林斯顿大学等机构提出,将Reddit、Amazon、GitLab、Wikipedia等真实网站打包成可控评测环境。AI智能体要像人类用户一样打开浏览器,通过鼠标键盘交互完成预设目标。这里没有提示词模板的讨巧空间,也没有“开卷”的捷径。

WebArena评估的对象是“智能体”——一个由大语言模型驱动、能感知网页状态并发出操作指令的系统。它有三个核心设计原则:第一真实性,所有网站基于真实服务搭建或精简,交互方式与生产环境一致;第二目标性,每个任务都有明确目标和自动判定检查点;第三可比性,不同模型、不同Agent框架可以在同一组任务上横向对比,结果可复现。

就像训练城让新手骑手在真实路况中练手,WebArena让AI在真实网页中“练手”。它衡量的是“办事能力”而非“背诵能力”,这正是它作为新一代AI评测基准的价值所在。

任务设计体系

为了让考核全面,训练城里的订单必须花样繁多:有去奶茶店取餐的简单单,有先去医院开药再顺路取快递的复合单,还有需要当面签收的特殊单。如果只测一种订单,就算练得再好,骑手也未必扛得住真实世界的复杂。

WebArena的任务设计同样讲究“花样”。它的任务库覆盖内容管理、购物、论坛交互、代码仓库操作、信息查询等大类,每个任务都不是一句问答,而是需要多步操作的完整目标。例如“修改GitLab项目README中的目录结构”这类任务,要求智能体导航到仓库、定位文件、编辑内容、提交变更——每一步都不能错。

每个任务配有若干自动检查点,用来判断最终结果是否符合预期。检查点可以是“页面URL是否正确”“某个元素是否出现指定文本”“本地文件是否被修改”。任务成功与否由全部检查点共同决定——任何一个不通过,整体就算失败。

这些任务就像训练城里的“综合订单”——考验的不只是骑手骑得快不快,而是能否一路确认每个交付节点。任务设计得越立体,Agent的真实能力才暴露得越彻底。

Pass(T)=∏i=1KI[ci(T)=1]\text{Pass}(T) = \prod_{i=1}^{K} \mathbb{I}[c_i(T)=1]
通俗说:K个检查点就像骑手送餐需要在N个节点盖章,少盖一个章,这单就白跑了。
  1. 任务 T一个包含目标与检查点的网页交互任务。
    T=(goal,{c1,c2,…,cK})T = (\text{goal}, \{c_1, c_2, \ldots, c_K\})
  2. 检查点 c_i由脚本或人工标注的结果判定函数,返回1表示符合预期。
    ci(T)∈{0,1}c_i(T) \in \{0, 1\}
  3. 指示函数当括号内条件成立时取1,否则取0。
    I[⋅]=1  ⟺  条件成立\mathbb{I}[\cdot] = 1 \iff \text{条件成立}
  4. 连乘逻辑只要有任何检查点为0,乘积就是0,任务即失败。
    ∏i=1KI[ci(T)=1]=1  ⟺  ∀i,ci(T)=1\prod_{i=1}^{K} \mathbb{I}[c_i(T)=1] = 1 \iff \forall i, c_i(T)=1

环境架构

训练城能正常运转,靠的是隐蔽的基础设施:每段道路都有传感器记录骑手轨迹,每个路口有调度中心统一下发指令,每单配送都有独立的“隔离区”防止互窜。骑手感觉自己逛的是真实城市,背后的赛道却完全受控。

WebArena的环境架构也是三层配合。第一层是网站沙箱,把真实网页封锁在隔离容器中,跑坏了随时重置;第二层是代理接口,智能体通过它发出click、type、navigate等动作;第三层是观测通道,模型能读到当前页面的DOM结构(可以理解为网页的内部骨架)和可交互元素——就像骑手借助路牌和后视镜感知环境。

从智能体的视角看,环境是一个“状态-动作-新状态”的循环:它读取当前页面状态,输出一个动作,浏览器执行后页面跳转或更新,再生成新状态。这个循环可以形式化描述为:

这套架构让“训练城”既真实又安全——骑手能自由跑街,管理者能随时重置路况。真实性与可控性兼得,正是WebArena环境架构的精妙之处。

st+1=E(st,at)s_{t+1} = \mathcal{E}(s_t, a_t)
通俗说:你每次在网页上点击一次,浏览器就“啪”地换一个新页面,这就是一次状态转移。
  1. t时刻状态 s_t当前网页的DOM树与URL等信息的集合。
    st=DOMt∪{URLt}s_t = \text{DOM}_t \cup \{\text{URL}_t\}
  2. 动作 a_t智能体发出的操作指令,如点击、输入、导航。
    at∈{click,type,navigate,…}a_t \in \{\text{click}, \text{type}, \text{navigate}, \ldots\}
  3. 环境函数 E浏览器对动作的响应,决定了下一个状态是什么。
    st+1=E(st,at)s_{t+1} = \mathcal{E}(s_t, a_t)

交互任务类型

训练城里的订单好比四种基本配送场景:代取快递(信息检索)、连锁配送(多步操作)、跨区调度(跨页导航)、紧急定制(综合决策)。骑手每天遇到的,无非是这四类的组合变体。

WebArena的交互任务也可归为四类。信息检索:在特定网站找到某个信息,比如“在亚马逊上找出某款键盘的价格”。多步操作:需要多个逻辑步骤才能完成,比如“注册新账号并发布一条评论”。跨页导航:在多个页面之间穿梭,例如“从搜索结果进入商品页,再进入购物车完成结算”。综合决策:先收集多个候选信息再做出选择,例如“比较三款显示器后选一款性价比最高的加入购物车”。

这四类任务并非彼此孤立。WebArena的许多高级任务会同时包含检索、导航与决策。比如“在GitLab上找到Issue #42并修复它”就要求智能体先检索定位,再导航到对应代码文件,最后提交修改——每一步都可能触发新的页面状态。评测的意义正体现于此:任务的复合程度,决定了它有多接近真实工作流。

就像骑手必须同时会看地图、抄小路、应对客户临时改地址一样,Agent综合运用检索、操作与决策的能力,才是WebArena真正想称量的分量。

评测指标体系

骑手跑完几百单后,老板会打开一份业绩报表:送达率多少?平均每单花了几分钟?走错路时是原地打转还是快速找回路线?这些数字勾勒出骑手的真实水平。

WebArena的评测指标同样分多个维度。最核心的是任务成功率(Success Rate,SR)——在所有评测任务中,智能体成功完成的比例。这个数字直观地反映Agent的“靠谱程度”。

单看SR还不够。WebArena还看重平均步骤数——完成任务用了多少步操作,步数越少代表效率越高;错误恢复能力——任务途中发生无效操作后,能否回到正确轨道继续完成。这两个维度帮你区分“水平一般但碰巧成功”和“稳健高效”的智能体。在多个任务之间,还应计算置信区间,判断成功率差异是否统计显著。

好骑手从不只看一单的运气,老板也不会只看一个指标。SR、步数、恢复能力的组合视角,才是WebArena给出完整“骑手画像”的方式。

SR=NsuccessNtotal×100%\text{SR} = \frac{N_{\text{success}}}{N_{\text{total}}} \times 100\%
通俗说:100张外卖订单里,准时准点送到客户手上的有几张?这个百分比就是SR。
  1. 分子 N_success全部检查点都通过的任务数量。
    Nsuccess=#{j:ci(Tj)=1,∀i}N_{\text{success}} = \#\{j : c_i(T_j)=1, \forall i\}
  2. 分母 N_total评测集的任务总数。
    Ntotal=∣T∣N_{\text{total}} = |\mathcal{T}|
  3. 归一化将比值转换为直观的百分比。
    SR=NsuccessNtotal×100%\text{SR} = \frac{N_{\text{success}}}{N_{\text{total}}} \times 100\%

评测实施流程

训练城的考试有标准流程:出题组提前布置路况,监考官统一下发订单,骑手陆续出发,后台记录每条轨迹,最后考场主任复核成绩排名。任何环节不严谨,考核结果都会失去公信力。

在WebArena上跑评测也是分阶段推进。首先是环境准备:启动网站容器、注册测试账号、确保所有站点可访问。然后是任务执行:让智能体逐个读取任务描述、开始交互,系统后台记录每一步操作。最后是轨迹评估:遍历日志,检查所有任务检查点的命中情况,汇总指标。

由于智能体决策带有随机性(温度采样、初始状态差异),单次运行的SR可能不稳定。严谨的评测会重复多次试验,并给出置信区间。成功率p̂的95%置信区间可用正态近似计算:

出卷、监考、阅卷、复核——WebArena的评测流程环环相扣。只有把每个环节做扎实,开发者才能拿着报告说:“这版Agent,比上版真的进步了2个百分点。”

CI=p^±z⋅p^(1−p^)N\text{CI} = \hat{p} \pm z \cdot \sqrt{\frac{\hat{p}(1-\hat{p})}{N}}
通俗说:骑手考核一次可能超常发挥,多考几次,你才能确定他是真的强还是运气好。
  1. p̂ 观测成功率本次评测实际算出的成功率。
    p^=NsuccessNtotal\hat{p} = \frac{N_{\text{success}}}{N_{\text{total}}}
  2. z 分位数95%置信度下取1.96。
    z0.95≈1.96z_{0.95} \approx 1.96
  3. 标准误衡量p̂估计值的波动大小。
    SE=p^(1−p^)N\text{SE} = \sqrt{\frac{\hat{p}(1-\hat{p})}{N}}
  4. 区间估计给出成功率真值可能落到的范围。
    CI=p^±z⋅SE\text{CI} = \hat{p} \pm z \cdot \text{SE}

实践应用

训练城的考核报告最终会送到各个业务团队:有的用来决定录用哪批骑手,有的用来定位新骑手的薄弱科目,还有的用来做培训课程的效果验收。一份报告,三种用途。

WebArena的实践价值也体现在三个方向。第一是Agent选型:评测GPT-4、Claude、开源模型驱动的Agent在相同任务上的成功率与耗时,为技术选型提供硬指标。第二是RAG评测:在真实网页交互场景下检验检索增强生成系统的效果——不只看“答得对不对”,更看“能不能自主找到需要的信息”。第三是能力诊断:按任务类型拆解成功率,快速定位智能体在“跨页导航”“表单填写”等环节的短板。

在实际工作中,评测结果可以直接指导产品决策:若某Agent在信息检索类任务上显著领先、但导航类任务偏弱,团队就可以在提示词工程、工具调用或检索策略上做针对性优化。定期在WebArena类基准上跑回归,还能尽早发现模型升级导致的“能力回退”。

从训练城毕业的骑手,最终都要回到真实马路。WebArena的价值不在于它本身是个考场,而在于它让AI开发者拥有了“录用前先试跑”的底气——这种底气,正是AI系统走向可靠落地的关键一步。

AI 应用场景

智能体选型对比

阶段:评测与选型

解决的问题:团队要在多种Agent框架中选一款作为产品底座。传统方式靠人工在少量演示用例上“目测”效果,主观且难以复现。用WebArena统一评测,能在同一组真实网页任务上量化对比各方案的SR、耗时与恢复能力,让选型有数据支撑而不是靠感觉。

具体案例:某电商团队在GPT-4+ReAct、Claude+Plan-and-Execute、开源Qwen+Toolformer三套方案中选型,在WebArena的购物与论坛任务上各跑50个任务,最终依据综合得分选定方案,后续上线后订单处理成功率提升了18%。

RAG系统在真实交互场景的评测

阶段:模型评估与迭代

解决的问题:传统RAG评测只测“给定问题返回正确答案”,忽略了真实用户要自己找入口、点击、翻页的过程。WebArena把RAG放进完整网页流程中,考察检索器是否能帮Agent在真实页面中“找到路”,避免“实验室高分、实战拉胯”。

具体案例:某企业内部知识库助手把RAG管线接进浏览器Agent,在WebArena的“按关键词查找政策文档并提取字段”任务上评测,发现检索排序前3位命中率虽高,但导航环节召回率低,据此优化了检索器的标题匹配策略,最终任务成功率提升21%。

智能客服多步操作能力诊断

阶段:能力诊断与优化

解决的问题:智能客服经常在需要多步操作的工单中失败,如“修改订单地址→申请退款→查询物流”。WebArena中的多步操作与跨页导航任务能够复现这类流程,帮助定位具体卡点,而不是笼统地说“效果不行”。

具体案例:某客服SaaS团队将WebArena的电商任务子集映射到客服工单流程,测试Agent在“订单查询→地址修改→通知用户”链路中的表现,发现状态追踪模块是瓶颈,针对性优化后SR提升21%,真实工单一次解决率同步改善。

Python 演示

python80 行
"""WebArena 简化评测模拟: 用规则式智能体在模拟网页上执行任务"""import random  class Checkpoint:    """检查点: 验证 (页面, 元素) 是否出现期望值"""     def __init__(self, page, element, expected):        self.page = page        self.element = element        self.expected = expected  class Task:    """一个网页交互任务, 由多个检查点组成"""     def __init__(self, name, checkpoints):        self.name = name        self.checkpoints = checkpoints     def evaluate(self, trace):        """遍历检查点, 全部命中才算成功"""        for cp in self.checkpoints:            key = (cp.page, cp.element)            if trace.get(key) != cp.expected:                return False        return True  class RuleAgent:    """规则式智能体: 按概率模拟成功点击/检索"""     def __init__(self, seed=0):        self.seed = seed     def run(self, task):        """执行任务并返回操作轨迹 (页面元素 -> 值)"""        random.seed(self.seed)        trace = {}        for cp in task.checkpoints:            if random.random() < 0.75:                trace[(cp.page, cp.element)] = cp.expected        return trace  def run_eval(tasks, agent, trials=20):    """核心评测逻辑: 计算任务成功率 SR"""    success = 0    for task in tasks:        done = False        for _ in range(trials):            agent.seed += 1            trace = agent.run(task)            if task.evaluate(trace):                done = True                break        if done:            success += 1    sr = success / len(tasks)    print("任务成功率 SR = %.1f%%" % (sr * 100))    return sr  if __name__ == "__main__":    tasks = [        Task("搜索商品并查看价格", [            Checkpoint("amazon", "kw", "keyboard"),            Checkpoint("amazon", "price", "$29.99")        ]),        Task("定位GitLab Issue并读取标题", [            Checkpoint("gitlab", "iid", "42"),            Checkpoint("gitlab", "title", "Fix crash bug")        ]),        Task("在Reddit发帖并回复", [            Checkpoint("reddit", "post", "Review request"),            Checkpoint("reddit", "reply", "I agree")        ])    ]    agent = RuleAgent()    run_eval(tasks, agent, trials=20)
目的:模拟了WebArena的最小评测闭环——用检查点判定任务成败、用多次试验逼近真实成功率,最终输出任务成功率SR。
  1. agent.seed += 1每次试验更换随机种子,模拟WebArena多次运行消除随机波动
  2. random.random() < 0.75模拟智能体单步操作75%的成功概率,类比真实LLM输出的不确定性
  3. if trace.get(key) != cp.expected:逐个检查点比对,任一不匹配即判定失败
  4. success / len(tasks)计算SR,正是正文中成功率公式的代码实现
  5. run_eval(tasks, agent, trials=20)每个任务最多尝试20次,模拟评测中多次rollout取最优的常见做法

常见误区

误区初学者以为WebArena就是一堆网页截图和固定问题,AI只要能看懂截图、选对答案就能拿高分。

正解WebArena是真实、可交互的网页环境。AI智能体需要像人类一样不断点击、输入、刷新、等待加载,每一步操作都会改变页面状态。它考的是“在动态环境里把事情办成”,不是“做阅读理解”。就像外卖骑手考核的是实际送餐过程,而不仅仅是看一张餐厅菜单图。

为何常见:以往许多评测基准是静态问答集,大家习惯了“读题-作答”范式,容易忽略浏览器交互的动态特性。

误区只要最终成功率SR高,就认为这个Agent在所有方面都强。

正解SR是综合结果,可能掩盖具体短板。比如某个Agent在购物类任务中靠运气成功率高,但在信息检索类任务中一塌糊涂。正确的做法是分任务类型看成功率,同时观察平均步数和错误恢复能力——就像老板看报表不能只看一个总数,还要看不同区域的明细。

为何常见:人天然倾向用一个简单数字做决策,总指标比多维雷达图更容易让人产生“懂了”的错觉。

误区RAG评测就是测检索准确率、生成忠实度和召回率;WebArena是测网页操作的,两者井水不犯河水。

正解WebArena的很多任务天然需要检索能力——在几十个网页中找到目标信息,这本身就是对RAG“检索-导航-整合”能力的实战测试。把RAG系统装进Agent里跑WebArena,比单独测向量检索更接近真实产品形态,能暴露出“检索到了但导航不过去”这类集成问题。

为何常见:RAG评测常用标准文档集,很多人没有意识到“真实网页中的信息获取”才是RAG的终极战场。

误区在WebArena上跑完一组任务,SR是45%,就认定这个Agent能力就是45分。

正解单次运行受随机采样、页面加载时序等因素影响,结果有波动。严谨的做法是多次重复实验并计算置信区间;两个Agent的SR相差2个百分点,可能根本不显著。就像面试一次可能超常发挥,多面几次才看得出真实水平。

为何常见:习惯了“跑一次出结果”的传统评测思维,容易忽略随机性和统计波动,尤其是面对一个看似确定的百分比时。

面试题

Q1. 以下哪项最符合WebArena的定位?

单选题 · easy

  • A.静态NLP问答数据集
  • B.真实网页交互评测基准← 正确答案
  • C.图像检测竞赛素材库
  • D.语音合成效果打分器

答案:B。WebArena是让AI智能体在真实网页环境中完成复杂交互任务的评测基准。A是传统问答基准,C是计算机视觉方向,D是语音方向,都与“网页交互评测”无关。用一个比喻说:WebArena是骑手训练城,而不是一张试卷或一张照片集。

Q2. WebArena的任务设计体系包含哪些要素?

多选题 · mid

  • A.真实网站镜像← 正确答案
  • B.多步操作目标← 正确答案
  • C.自动检查点← 正确答案
  • D.无限时间预算

答案:ABC。WebArena基于真实网站的镜像或精简版构建,任务目标需要多步操作完成,每个任务配有自动检查点来判定结果。D错误——WebArena任务有明确的时间/步数预算,并非无限。就像训练城的订单有配送时限,不可能让你无限时地慢慢送。

Q3. AI智能体通过什么方式操作WebArena中的网页?

单选题 · easy

  • A.动作指令集合(如click/type)← 正确答案
  • B.直接修改网页源码文件
  • C.改用HTTP请求代替浏览器
  • D.语音指令控制浏览器

答案:A。智能体通过代理接口发出click、type、navigate等动作指令,与真实用户操作浏览器的方式一致。B不是正常交互,C绕过了浏览器渲染,D不是WebArena的接口设计。类比骑手:是真实骑车送餐,而不是直接改地图数据。

Q4. WebArena中“多步任务”与“单步问答”的本质区别是?

单选题 · mid

  • A.前者要求长链条决策和操作← 正确答案
  • B.前者只需要一次点击
  • C.后者更难评测
  • D.后者无需网页环境

答案:A。多步任务要求智能体连续决策、执行多个操作并维护中间目标,而单步问答只需一次映射。B反了,C不成立,D错误——单步问答也可以放在网页环境中。就像“送一单外卖”是多步任务,而“回答奶茶店几点开门”是单步问答。

Q5. 在WebArena评测中,任务成功率(SR)的计算公式是?

单选题 · easy

  • A.成功任务数除以总任务数← 正确答案
  • B.总任务数除以成功任务数
  • C.正确步数除以总步数
  • D.成功任务数乘以总任务数

答案:A。SR = 成功完成任务数 / 总任务数,是WebArena最核心的评测指标。B是它的倒数,C描述的是步骤准确率,D没有意义。用骑手比喻:100单里准时送到几单,就是成功率。

Q6. 关于WebArena评测的统计显著性,下列说法正确的是?

多选题 · mid

  • A.多次运行结果可能因随机性波动← 正确答案
  • B.置信区间反映估计的稳定性← 正确答案
  • C.运行一次就足以定结论
  • D.样本量越大区间越窄← 正确答案

答案:ABD。智能体决策带随机性,多次运行结果自然波动;置信区间正是用来量化这种波动范围,样本量增大时区间收窄、估计更可靠。C明显错误——单次运行结果不可靠。就像骑手考核一次可能超常发挥,多考几次才算数。

Q7. 评测中发现某智能体在“跨页导航”类任务中成功率低,最适合的优化方向是?

单选题 · hard

  • A.增强长程规划与状态追踪← 正确答案
  • B.增大训练集嵌入维度
  • C.只替换文本生成解码器
  • D.延长模型推理超时时间

答案:A。跨页导航要求智能体在多页面间保持目标感,记录“我从哪来、要去哪”,依赖长程规划与状态记忆。B和C只是改变模型局部组件,D延长超时并不能让路径变正确。这就像骑手容易在复杂路网中迷路,要优化的是认路和规划能力,而不是换个喇叭或延长跑单时间。

Q8. 任务成功率相同的情况下,如何进一步区分两个智能体的优劣?

单选题 · mid

  • A.对比平均操作步数← 正确答案
  • B.对比模型参数量
  • C.对比思考链长度
  • D.对比训练集大小

答案:A。成功率相同时,平均步数(效率)和错误恢复能力是重要辅助指标——步数更少、出错后能自己纠偏的Agent更优。模型参数量、思考链长度、训练集大小都与任务执行效率没有直接关系。就像两个骑手送达率都是95%,大家当然选那个用时更短、少绕路的人。

Q9. 用WebArena评测两个RAG+Agent方案时,哪些因素会影响结论的可信度?

多选题 · extreme

  • A.浏览器渲染时序差异← 正确答案
  • B.任务间状态泄漏耦合← 正确答案
  • C.向量库固定不变
  • D.随机采样种子变化← 正确答案

答案:ABD。渲染时序会影响页面元素是否及时出现,进而干扰操作;任务间若共享浏览器状态则产生泄漏,使独立性假设失效;随机种子会影响模型输出与检索排序,导致结果波动。C向量库固定是控制变量,反而能提升可信度。这就像考试时要保证每个考生独立作答、题目顺序不串,否则成绩不可比。

Q10. 某RAG系统在WebArena的“信息检索”类任务中得分低,最可能的原因是什么?

单选题 · hard

  • A.检索与导航协同能力不足← 正确答案
  • B.向量维度不够高
  • C.嵌入模型训练太慢
  • D.提示词模板过长

答案:A。这类任务要求系统先检索到目标信息,再靠导航动作触达页面并提取内容,“检索-导航-整合”的链路中任何一环薄弱都会拉低得分。B、C是检索模型的训练配置问题,D是提示词工程问题,都不是这类任务低分的核心原因。好比骑手既要会查地图,又要能骑车到店——光有地图或光有车都不行。