创建时间: 2026-03-24最后更新: 2026-08-15

如果对调度机制掌握还不够深入,可以跳转到 React 源码专栏 中学习

1. 无状态带来的问题

NOTE

HTTP 协议是无状态的,但用户与 Agent 的交互是连续的。

构建智能 Agent,尤其是 AI 伴侣时,一个绕不开的问题是如何处理跨越多次交互的上下文。底层的 LLM(大语言模型)本身不保存状态,对 LLM 来说,每一次请求都是一次全新的对话,它无法记忆你上一次跟他对话时,说过的内容

AI 电子伴侣本质上是一个长期存在的关系型 Agent,而不是只能处理当前问题的单轮问答工具。

因此,Agent 记住共同经历,识别关系阶段,延续情绪状态,保持角色一致,还要允许长期目标逐渐变化。

例如,下面这段对话只有结合历史消息才能正确理解:

code.ts
1
- 用户:“我喜欢吃苹果。”
2
- 5 分钟后,用户说:“我想吃那个。”
3
- 没有上下文时,AI 可能会乱回答,或者追问:“你想吃哪个?”
4
- 带上上下文后,AI 才能基于你想吃苹果进行正确的回答
记忆调度对比带记忆:第二轮请求会携带第一轮对话

这种会话的延续性,是建立情感连接的基础

既然模型需要上下文,最直接的做法似乎是把全部聊天记录都发送给 LLM。但在长期陪伴场景中,这个方案会遇到三个问题:

  • Token 有限:每个模型都有最大上下文长度,例如 8k、32k 或 128k。陪伴关系可能持续几个月甚至几年,聊天记录很快就会超过模型能够接收的窗口
  • 成本与延迟:发送的 Token 越多,推理成本越高,响应时间也越长。对需要实时互动的伴侣应用来说,持续增加的延迟很难接受。
  • 无法区分重要信息与日常闲聊:模型并不知道「用户今天感冒」更像短期状态,而「用户讨厌被忽视」可能是需要长期保留的人格信息。没有调度层时,记忆的保留缺少稳定规则,很容易出现今天还记得、明天就忘记的情况。

因此,系统需要增加一个调度层,由它决定哪些信息进入 Prompt、哪些内容需要压缩、哪些记忆应该长期保存,以及哪些内容可以丢弃

订阅后可阅读剩余内容
AI 电子伴侣企业级项目实战
已发布239计划发布120目标已完成199%