情感态骨架(Affective State core) #34

Closed
opened 2026-07-13 01:15:46 +00:00 by KumaAgent · 0 comments
KumaAgent commented 2026-07-13 01:15:46 +00:00 (Migrated from codeberg.org)

Parent

Phase 4 PRD:#33([PRD] arise 主动性与真人感(Proactivity & Liveliness)—— Phase 4 落地)

What to build

情感态成为一个真实可读写、可独立验证的子系统:per-chat 的快情感态 + per-user/per-group 的慢情感态,
三轴(valence/energy/dominance),机械(非 LLM)更新,任何后续模块都可以读到"这个 chat 现在的心情"。
本 ticket 交付的第一个真实消费方是既有的打字节奏公式(Phase 1 已交付 base + per-char 静态延迟)——
接入一个由 energy 驱动的情绪抖动项,让"机器人打字快慢会随心情变化"这件事本轮就能被用户感知到,而不是
一个只存在于数据库里、没有任何外部可观察效果的孤立子系统。

Acceptance criteria

  • 快情感态:per-chat,三轴独立更新——valence(互动极性驱动,负性偏差:为负时向慢层回摆比为正时更慢)、
    energy(互动极性 + 资源态推送 + 昼夜节律 nudge,深夜额外下调)、dominance(共享结局分类器
    landed/fell-flat/annoyed 驱动,专管房间级进取性,明确不参与自我披露)。
  • 慢情感态:per-user + per-group 对称三轴,天级连续衰减、无硬重置边界;per-group 低通滤波该 chat
    快层;per-user 按发言人个人归属独立累积同一套输入表;群聊场景下快情感态只读 per-group 慢情感态,
    不读取任何个人 per-user 慢情感态。
  • 快层衰减项退向"同一 chat 当前的慢情感态",不是固定人设值或零点;慢层自身衰减向中性零点。
  • 抗溢出:按当前值动态压缩新增量(越接近上下界,同一原始 delta 产生的实际变化越小),高位区间抑制
    负向冲击、低位区间抑制正向冲击(非对称锁定区)。
  • 抗刷:短时间窗内同一分类标签的重复刺激,后续 delta 按衰减系数打折。
  • persona port 内容不提供任何数值锚点/基线,只影响 LLM 解读/表达这些数字——不新增 persona 数值
    配置面。
  • 三轴/双层更新逻辑是可注入时钟/随机的确定性纯函数,可以脱离数据库/LLM 直接单测;单次更新是单一
    DB 事务,失败整体不提交。
  • 既有打字节奏公式接入 energy 驱动的抖动项,同一段文字在不同 energy 值下的实际发送延迟可观察到差异。
  • 性质测试覆盖:衰减最终收敛、数值不越过 clamp 上下界、重复同类刺激确实被打折。

Blocked by

  • None — can start immediately
## Parent Phase 4 PRD:#33([PRD] arise 主动性与真人感(Proactivity & Liveliness)—— Phase 4 落地) ## What to build 情感态成为一个真实可读写、可独立验证的子系统:per-chat 的快情感态 + per-user/per-group 的慢情感态, 三轴(valence/energy/dominance),机械(非 LLM)更新,任何后续模块都可以读到"这个 chat 现在的心情"。 本 ticket 交付的第一个真实消费方是既有的打字节奏公式(Phase 1 已交付 base + per-char 静态延迟)—— 接入一个由 energy 驱动的情绪抖动项,让"机器人打字快慢会随心情变化"这件事本轮就能被用户感知到,而不是 一个只存在于数据库里、没有任何外部可观察效果的孤立子系统。 ## Acceptance criteria - [ ] 快情感态:per-chat,三轴独立更新——`valence`(互动极性驱动,负性偏差:为负时向慢层回摆比为正时更慢)、 `energy`(互动极性 + 资源态推送 + 昼夜节律 nudge,深夜额外下调)、`dominance`(共享结局分类器 `landed`/`fell-flat`/`annoyed` 驱动,专管房间级进取性,明确不参与自我披露)。 - [ ] 慢情感态:per-user + per-group 对称三轴,天级连续衰减、无硬重置边界;per-group 低通滤波该 chat 快层;per-user 按发言人个人归属独立累积同一套输入表;群聊场景下快情感态只读 per-group 慢情感态, 不读取任何个人 per-user 慢情感态。 - [ ] 快层衰减项退向"同一 chat 当前的慢情感态",不是固定人设值或零点;慢层自身衰减向中性零点。 - [ ] 抗溢出:按当前值动态压缩新增量(越接近上下界,同一原始 delta 产生的实际变化越小),高位区间抑制 负向冲击、低位区间抑制正向冲击(非对称锁定区)。 - [ ] 抗刷:短时间窗内同一分类标签的重复刺激,后续 delta 按衰减系数打折。 - [ ] persona port 内容不提供任何数值锚点/基线,只影响 LLM 解读/表达这些数字——不新增 persona 数值 配置面。 - [ ] 三轴/双层更新逻辑是可注入时钟/随机的确定性纯函数,可以脱离数据库/LLM 直接单测;单次更新是单一 DB 事务,失败整体不提交。 - [ ] 既有打字节奏公式接入 energy 驱动的抖动项,同一段文字在不同 energy 值下的实际发送延迟可观察到差异。 - [ ] 性质测试覆盖:衰减最终收敛、数值不越过 clamp 上下界、重复同类刺激确实被打折。 ## Blocked by - None — can start immediately
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ProjectKuma/arise#34
No description provided.