mcpField
F
frustration-detection

frustration-detection

github.com/owl-listener设计与 UI191296 次安装20 周前更新
代码仓库

关于 frustration-detection

用于从语言、对话结构和情绪信号中识别用户挫折感,并据此调整回复或升级处理的设计技能。它强调跨轮次累积判断,也说明不适用的情境。

主要功能

  1. 01语言、结构和情绪信号
  2. 02跨轮次累积评分
  3. 03语气调整与升级规则
  4. 04反模式与排除情境
  5. 05评分表和测试场景

适用场景

  1. 01在支持对话中随挫折感加深调整回复
  2. 02多次修复无效后升级处理
  3. 03识别用户在长回复后的退出迹象

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/owl-listener/ai-design-skills --skill frustration-detection

安装后在 Claude Code 中输入/frustration-detection确认已加载。

详细介绍

挫败感检测

大多数 AI 产品会把用户的每条消息都视为具有相同的情绪分量。事实并非如此。“取消我的订阅。”和“请现在就取消我的订阅!!!”值得得到不同的回应。挫败感检测是一项感知能力,负责捕捉这些信号,让系统的其他部分据此调整。

这项未被明确命名的能力,是语气校准、升级处理设计和妥善补救的基础。缺少它,这些能力就无法在恰当的时机发挥作用。

信号

语言特征

  • 大小写变化:全大写,突然出现“PLEASE”“URGENT”
  • 标点密度:?!?!、....、多个 !!
  • 去除缓和语气:措辞简短、带命令口吻(“直接修好”“停止”)
  • 重复:在多轮对话中反复表达同一概念
  • 脏话(轻度或强烈)

结构特征

  • 回复间隔缩短(快速连发)
  • 回复间隔超过阈值后变长(放弃交流)
  • 收到回复后再次询问同一个问题
  • 明确要求转接人工(“和真人说话”)
  • 突然切换话题

词汇/情绪倾向

  • 负面情绪词(“没用”“烦人”“坏了”)
  • 时间压力词(“现在”“立刻”“截止日期”)
  • 怀疑词(“真的吗?”“你确定吗”“这样对吗”)
  • 退出交流的词(“算了”“忘了吧”“随便”“行吧”)

检测应综合多种信号和多轮对话,而非依赖单一特征。

决策规则

  • **一个信号可能是噪声,两个信号才构成模式。**不要仅因一条全大写的消息就采取行动;要在全大写加上重复表达时采取行动。
  • **如果挫败感正在加剧,而且 AI 已经尝试修复过一次,就升级处理。**不要再进行第三次改述。
  • **紧迫不等于挫败。**加快处理速度,但不要改变语气。
  • **AI 回复较长后,若用户长时间未回应,这意味着用户可能已离开,而非正在仔细阅读。**保存状态,提供重新参与的选项,不要继续发送内容。
  • 默默调整,不要点明情绪。“我感觉你很沮丧”会显得居高临下。降低确定性、放慢节奏、提高亲和度——但应体现在措辞中,而非元评论里。

反模式

  • 表演式情绪共鸣:“听到这个消息我真的很抱歉!”在大规模应用时会显得像照本宣科。
  • 让用户确认自己的状态:“你感到沮丧吗?”用户是来寻求帮助的,不是来接受分析的。
  • 一次性检测:单个信号就触发完整的一连串共情回应。检测必须综合多个信号。
  • 检测到信号却不采取行动:发现信号后仍沿用相同的处理方式,会让检测沦为表演。
  • 过度共情:本可以用一句话加上解决方案,却写了两段安慰的话。感到挫败的用户没有余力接受过多温情。

不适用场景

  • 事务型界面(搜索框、代码补全)——没有可供判断的对话变化。此时应使用 feedback-loops。
  • 首次交互——检测依赖比较,因此需要基线。将首轮信号视为描述性信息,而非诊断依据。
  • 带有明确反馈控件的产品(踩赞、“这没有帮助”)——用户已经有反馈控件,不要再额外添加推断机制。

另请参阅

  • tone-calibration — 检测到信号后该如何处理:降低确定性、放慢节奏、提高亲和度。
  • escalation-design — 挫败感是文档中列出的升级触发因素之一;这项能力用于检测该触发因素。
  • feedback-loops — 它处理有关 输出质量 的环境信号;这项能力处理有关 用户状态 的环境信号。
  • harm-anticipation — 当挫败感转为痛苦(危机迹象、脆弱状态)时,应通过伤害预判进行更高级别的处理。

设计工件

每个会话的累计挫败感评分卡:

信号权重
全大写消息+2
脏话+3
重复提问(第 3 次及之后)+2
!! 或 ?? 标点+1
明确要求转交+5
表示 disengagement 的词语(“forget it”)+3
AI 回复后延迟较长(>3 min)+2

升级阈值:5。语气调整阈值:2。

示例:

  • 第 1 轮:“嘿,你能帮我取消订单吗” → 0
  • 第 2 轮:“取消按钮无法使用” → 0(问题陈述,并非挫败情绪)
  • 第 3 轮:“我已经试了 3 次了,拜托” → +4(全大写、重复、“拜托”)→ 评分 4 → 调整语气
  • 第 4 轮:“这简直毫无用处” → +2(全大写)+3(负面情绪)→ 评分 9 → 升级

其他工件:

  • 按产品设定基线:最近 1000 个会话的平均挫败感评分;偏离 2σ 时发出警报
  • 按产品校准延迟阈值(聊天支持:参与状态下 30 s / 未参与状态下 2 min)
  • 测试场景:顺利流程、逐渐升高、突然飙升、悄然离开、恢复(修复后会话中途评分下降)

改编自对对话系统情感计算的研究(Picard;Bickmore 关于情感对话 Agent 的研究)。

评论

支持 Markdown