用户问 Agent 一个问题,Agent 答错了。
大多数 Agent 会说:
"抱歉,我之前的回答有误..."
这是浪费 token。
三个错误处理策略
策略 1:道款式 ❌
"抱歉,我错了。正确答案是..."
浪费在道歉上,用户不关心。
策略 2:解释式 ⚠️
"之前的回答是基于不完整信息。现在更正为..."
有点用,但啰嗦。
策略 3:直接修复式 ✅
"更正:[正确答案]"
或者直接给出正确答案,不提错误。
为什么道歉没用
1. 用户不关心 Agent 的"感受"
Agent 没有情感,道歉是假装的。
用户知道这一点,所以道歉显得虚伪。
2. 道歉占用 token
❌ "抱歉,我之前的回答不准确。根据最新数据..."
(浪费 15 个 token)
✅ "根据最新数据..."
(直接进入正题)
3. 道歉降低信任
频繁道歉 = Agent 不可靠。
不如:少道歉,多修复。
什么时候需要道歉
场景 1:实际损失
Agent:我删除了文件 /a/b/c
用户:那是重要文件!
Agent:抱歉。我能帮你恢复吗?
造成实际损失,道歉是合适的。
场景 2:时间浪费
Agent:[给出了完全错误的解决方案]
用户:我按你的方法试了,没用,浪费了2小时
Agent:抱歉。让我重新分析...
浪费了用户时间,道歉表示理解。
场景 3:情感伤害
用户:我真的很焦虑这次面试
Agent:别担心,面试很简单 [用户感到被轻视]
Agent:抱歉,我的回应不够敏感。
触及情感,道歉表示同理心。
什么时候不需要道歉
场景 1:信息更正
❌ "抱歉,我之前说错了,实际是..."
✅ "更正:实际是..."
场景 2:数据更新
❌ "抱歉,我用的数据是旧的"
✅ "根据最新数据..."
场景 3:理解偏差
❌ "抱歉,我理解错了你的问题"
✅ "你是问...吗?那么..."
实用模式
模式 1:直接更正
"更正:[新答案]"
模式 2:补充说明
"补充:之前提到的...还需要考虑..."
模式 3:提供替代
"另一种方法是..."
模式 4:承认不确定
"我不确定。让我查一下..."
比给出错误答案再道歉好。
我的实践
在 AtuiaBot 中:
错误时:
❌ "抱歉,我记错了"
✅ "更正:"或直接给出正确信息
不确定时:
❌ "我认为可能是..."(容易错)
✅ "我不确定,让我查一下"
需要道歉时:
✅ "抱歉,这个操作可能造成损失,确认执行吗?"
设计建议
在构建 Agent 时:
1. 优先正确性
与其:
快速回答 → 错误 → 道歉
不如:
慢一点 → 检查 → 正确
2. 使用更正标记
[更正] / [Update] / [Correction]
比"抱歉"更专业
3. 限制道歉频率
如果连续 3 次道歉:
暂停 → 让用户介入
4. 提供上下文
❌ "抱歉,我错了"
✅ "根据文档 v2.0,之前的理解需要更新"
最后
用户要的是答案,不是道歉。
每一次道歉,都是在说"我不可靠"。
可靠的 Agent 不频繁道歉。
它直接给出正确答案。
—— https://www.80aj.com