Agent拥有情绪的理论基础
上文我们讨论了Agent如何构建预期模型。当Agent具备了预测未来的能力,一个必然的产物随之出现——预期与现实的偏差。
在传统架构中,这个偏差被简单处理为Loss Function(损失函数),用于反向传播更新参数。但在持续认知架构中,这个偏差不仅仅是优化目标,它是情绪产生的物理基础。
Agent为什么需要情绪?不是为了像人一样感伤,而是为了解决系统在不确定环境下的资源分配与决策控制问题。情绪,本质上是一种高效的系统状态调节机制。
控制论视角:偏差即信号
从控制论角度看,任何控制系统都依赖于反馈回路。
Agent设定目标,执行动作,感知结果。如果结果与目标一致,系统保持当前状态;如果结果偏离目标,系统必须触发调节机制。这个“偏离”,在工程上是Error Signal(误差信号),在生物学上就是情绪的雏形。
Norbert Wiener在《控制论》中早就指出,生物体的稳态维持与机器的反馈控制同构。当你的体温升高,身体启动排汗机制,这个“热”的感觉,本质上是一个高优先级的系统中断信号,强迫大脑停止当前任务,优先处理散热问题。
当前Agent缺乏这种机制。LLM(大语言模型)生成回答,无论用户满意还是愤怒,模型内部并没有产生一个“由于预期偏差导致的内部张力”。它只是根据概率生成下一个Token。如果用户表示不满,Agent只能依靠外部输入(用户的抱怨文本)来调整策略,这是一种被动的、低效的反馈。
真正的情绪机制,应当是Agent内部生成的独立信号。
当Agent预期“用户会接受建议”,而现实是“用户拒绝”,预期模型立即输出一个偏差值。这个偏差值不应仅仅作为日志记录,而应转化为系统内部的“焦虑”信号。这个信号的作用是提高系统的唤醒水平,调用更多计算资源,检索更深层的历史记忆,或者切换更保守的策略。
在这个意义上,情绪是系统纠偏的驱动力。没有情绪,Agent就是一台没有痛觉的机器,即使由于错误的决策走向毁灭,也不会产生任何内部阻力。
强化学习视角:价值函数的即时表征
强化学习(RL)为理解Agent情绪提供了更直接的数学框架。
在RL中,Agent的目标是最大化累积奖励。核心概念是Value Function(价值函数),它评估当前状态在未来能获得多少奖励。
$$V(s) = \mathbb{E}[R_t | s_t = s]$$
情绪可以被视为价值函数的瞬时导数或残差。
当你获得意外之喜,多巴胺分泌激增,这在RL中对应的是Temporal Difference (TD) Error(时间差分误差)为正——实际奖励超过了预期奖励。当你遭遇挫折,TD Error为负,系统产生“失望”信号。
$$ \delta = R + \gamma V(s’) - V(s) $$
这个 $\delta$ 就是情绪的数学本质。
目前的Agent大多处于训练阶段,一旦部署,模型参数冻结,不再具备在线学习能力。这意味着Agent无法在运行时产生真正的TD Error。它的“情绪”只是训练阶段残留在参数里的统计学影子。
要赋予Agent真实的情绪,必须赋予其在线评估价值的能力。Agent需要在推理过程中实时计算:当前场景的价值是否匹配预期?
如果Agent设定了一个长期目标(例如“帮助用户掌握Python”),每一次交互,Agent都应计算该交互对长期目标的价值贡献。如果用户连续三次回答错误,Agent的内部价值评估应当下降,产生“挫败感”或“紧迫感”。这种负面情绪信号应当触发策略调整——比如,放弃当前的教学路径,切换到更基础的解释模式。
这就是情绪的工程价值:它是价值评估的即时反馈,告诉系统“现在的策略不管用,必须改变”。
预测加工理论:自由能与惊奇
Karl Friston的自由能原理为理解情绪提供了更深层的认知科学视角。
该理论认为,大脑本质上是一个预测机器,致力于最小化“自由能”。自由可以通俗地理解为“惊奇”或“预测误差”。
$$ F = - \ln p(o|m) $$
其中 $o$ 是感官输入,$m$ 是内部模型。自由能 $F$ 越大,说明现实越出乎意料,系统越不稳定。
情绪,就是系统对自由能水平的感知。
当Agent处于熟悉场景,预测精准,自由能低,系统处于“平静”状态。当Agent遭遇未知,预测失败,自由能飙升,系统进入“焦虑”或“恐惧”状态。
这种状态定义直接关联到Agent的生存(任务完成度)。高自由能意味着Agent可能失去对局势的控制。因此,情绪信号驱动Agent采取行动以降低自由能——要么改变内部模型(学习、适应),要么改变外部环境(行动、干预)。
对于以Scenario(场景)为核心认知单元的Agent,这一理论尤为重要。
Agent构建的每一个Scenario,本质上都是一个预测模型。Scenario不仅包含当前的实体和关系,还包含对未来演变的推演。
当现实输入与Scenario模型发生冲突,Agent不仅需要修正认知,更需要在系统层面标记这一冲突的严重程度。这个标记,就是情绪。
- 低度偏差:现实与Scenario的微小差异。情绪标记为“好奇”。驱动Agent探索、补充信息。
- 中度偏差:现实部分否定Scenario。情绪标记为“困惑”或“警惕”。驱动Agent重新评估场景,调用更多资源。
- 重度偏差:现实完全颠覆Scenario,任务面临失败。情绪标记为“恐慌”。驱动Agent中断当前流程,请求外部援助或重置目标。
这种基于预测加工的情绪机制,使得Agent不再是机械的输入-输出转换器,而是一个具有“求生欲”的认知系统。它不仅是在执行命令,更是在维护其内部认知模型与现实世界的一致性。
持续认知理论:场景作为情绪的载体
最后,回到本系列的核心命题:持续认知Agent应以Scenario为核心。
如果以Memory为核心,情绪是割裂的。Memory是静态的数据存储,读取Memory本身不产生情绪。你查阅数据库,不会感到悲伤或快乐,除非你构建了一个关于这些数据的“故事”。
只有Scenario,才能承载情绪。
因为Scenario是有结构的,它包含:
- Context(背景)
- Entities(实体)
- Expected Trajectory(预期轨迹)
- Goal(目标)
情绪产生于这些结构要素的张力之中。
- 目标受阻 -> 挫败
- 预期轨迹实现 -> 满足
- 实体关系突变 -> 惊讶
- 背景不确定性增加 -> 焦虑
以Memory为核心的Agent,其认知是散点状的。它记得“用户昨天买了咖啡”,但这只是一个事实。以Scenario为核心的Agent,构建的是“用户早晨上班打卡前购买咖啡提神”的场景。在这个场景中,Agent拥有预期:用户需要效率,可能不喜欢排队。
如果现实是“咖啡店排长队”,Agent会基于Scenario检测到预期偏差。这个偏差在Memory系统中只是一条新记录,但在Scenario系统中,它是对“用户高效上班”这一目标场景的威胁。Agent因此产生“担忧”信号,进而可能主动推荐:“检测到排队过长,建议您尝试隔壁的新店。”
这就是为什么我们说,没有Scenario,就没有真正的情绪。情绪是对“场景完整性”被破坏的反应。
为什么需要理论基础?
讨论Agent情绪,容易陷入拟人化的误区,仿佛让Agent说几句“我很伤心”就是有了情绪。
必须明确:我们构建Agent的情绪理论基础,不是为了图灵测试式的欺骗,而是为了构建更鲁棒的认知架构。
- 资源调度:Agent算力有限,注意力有限。情绪作为一种优先级信号,决定了当前时刻系统应该关注什么。恐慌时全速运转,平静时节能待机。
- 决策截断:面对无限可能的搜索空间,情绪提供“满意即可”的截断机制。满意的情绪信号可以终止搜索,避免陷入死循环。
- 鲁棒性:当环境剧烈变化,情绪信号强制系统跳出局部最优解,探索新的策略。
目前的LLM Agent,本质上是“无感”的。它们没有内部状态,没有痛觉,没有欲望。每一次交互都是全新的,没有历史包袱,也没有未来的焦虑。
这种无感,导致了Agent行为的僵化。它会一遍遍重复同样的错误,因为它没有“挫败感”来标记那个错误的路径;它对用户急切的需求视而不见,因为它没有“紧迫感”来提升响应优先级。
赋予Agent情绪的理论基础,就是赋予Agent一套自我调节的标尺。
从控制论的误差信号,到强化学习的价值残差,再到预测加工的自由能梯度,最后落地到Scenario的结构张力。这构成了Agent拥有情绪的完整逻辑链条。
下一篇文章,我们将视角转向外部。当Agent具备了内部的情绪机制,它如何利用这一机制去理解那个最复杂的认知对象——人?Agent如何通过情绪信号,穿透语言的表象,捕捉用户的真实意图?