跳到主要内容

用户习以为常的“你确定吗?”确认步骤

· 阅读需 11 分钟
Tian Pan
Software Engineer

确认对话框是 AI agent 工具箱中最廉价的安全层。它由一个字符串、一个按钮和一个回调函数组成。提议增加这一功能的项目经理在散会时,坚信该 agent 现在是安全的。开发它的工程师用一个下午就把它发布上线了。负责审计的合规检查员勾选了通过选项。而那天早上第七次看到它的用户,在眼睛还没读完标题之前,鼠标就已经移到了“确认”按钮上。

不到一周,确认步骤就不再是一个决策点,而变成了一种节奏。Agent 问:“你确定要发送这封邮件吗?”,用户回答“是”,就像别人打喷嚏时随口回一句“保重”一样自然。终有一天,Agent 会提议一个真正错误的动作——错误的收件人、错误的金额、错误的语气——而用户会带着之前确认那六个正确动作时同样的自动化反应去确认它。邮件发出后,团队写下一份事后分析,称之为“用户操作失误”。

这不是用户错误。这是系统误把“点击”的存在当成了“同意”的存在。

习以为常是用户的特性,而非对话框的 Bug

关于确认提示,首先需要理解的是:习以为常(Habituation)并非注意力的缺失,而是一种成功的适应。用户的脑部遇到了一种每次都以相同形式出现的刺激,且没有任何信息能预示该操作是高风险还是常规操作。于是,脑部根据每一个合理的推论规则正确地学习到:这种刺激不包含任何值得处理的信号。

2015 年,杨百翰大学、匹兹堡大学和 Google 进行的一项 fMRI 研究测量了视觉皮层对重复安全警告的反应,并观察到在第二次接触后反应就急剧下降。到第五次时,从神经学角度来看,警告已完全被视而不见。另一项 2014 年的 SOUPS 研究发现,参与者在不到两秒钟的时间内就会点击跳过 SSL 警告——速度快到点击已经变成了一种运动程序,而非认知活动。另一项研究报告称,当确认对话框的文本在实验中途发生变化时,只有 14% 的用户注意到了。

这些数据指出的并不是用户懒惰。而是这种刺激没有给用户理由去保持关注,而用户的注意力理所当然地转移到了其他地方。对话框的设计初衷是为了让发布的工程师感到安全,而不是为了让与之共存的用户保持敏感。

当 AI agent 在每次工具调用前都弹出相同的通用确认(“你想继续吗?”)时,它也在运行这种相同的习惯化循环,只不过是压缩版的。Agent 的动作比人类更快、更频繁。以前 SaaS 应用的用户每周可能看到两次确认对话框,现在他们的 Agent 每天会弹出二十次。对这些对话框注意力的半衰期是以小时计的,而不是以月计。

是摩擦预算,而非摩擦下限

一种失败的心智模型是将确认视为一张可以笼罩在每个不可逆操作上的统一安全网。真正有效的心智模型是将确认视为一种“摩擦预算”——这是一种有限的资源,你在每个会话中只能在极少数决策上使用它,一旦超过限度,用户就会停止处理其中任何一个决策。

摩擦预算的一个特性是:到处乱花等同于根本没花。如果每个操作都有提示,那么每个提示都会得到相同的反射性点击。真正重要的高风险提示被几十个无关紧要的低风险提示伪装掩盖了。试图通过确认所有操作来“保证安全”的 Agent,实际上将用户的信噪比降到了零。现在它在没有任何确认的情况下运行——仅仅保留了确认的表象。

第一步,在进行任何 UX 工作之前,先针对动作本身建立一个风险等级分类器(Stakes Classifier)。不应基于动作类别——“发送邮件”不是风险等级;“发送包含未签署合同的邮件给法律顾问”才是。也不能依赖静态列表——对于你未能预料到的动作,静态列表总是会出错。风险等级分类器应该能针对每次调用进行评估,从以下维度打分:可逆性(用户能否一键撤销,还是需要打电话?)、爆炸半径(这会影响一条记录、一个团队,还是整个客户群?)以及外部性(结果是否脱离了用户的控制——已发送、已发布、已支付?)。

低于阈值的操作完全不需要确认。Agent 直接执行,由审计日志记录发生的情况。高于阈值的操作才会获得确认,而正因为用户不常看到它,它才值得用户关注。一个每天只看到三次确认的用户,且每次确认都与他想要思考的事情相关,那么他的确认操作依然具有意义。

提示必须呈现不可逆性,而不仅仅是宣告它

第二步是停止询问“你确定吗”,开始展示用户正在承诺执行的内容。一个通用的“你确定要发送这封邮件吗?”是一个答案永远为“是”的问题——因为用户刚刚告诉 Agent 去发送它,而 Agent 现在要求用户重新确认他们已经确认过的事情。这个对话框要求用户批准的是一种意图,而不是审查一个产出物。

加载中…
References:Let's stay in touch and Follow me for more thoughts and updates