三种机制相互配合:注入补充模型当下需要知道的信息,压缩移除不再需要逐字保留的内容,卸载让被移除的内容只需一次文件读取即可找回。
组装上下文
每次模型调用前,智能体会把三层内容拼成单次 API 输入。下图展示这次调用所包含的结构:模型 API 输入
系统提示
基础系统提示
技能指令(来自 Toolkit)
on_system_prompt 中间件转换
摘要(已压缩历史,若存在)
上下文(最近未压缩消息)
- 系统提示:以创建智能体时传入的
system_prompt为起点,拼接技能指令(每个技能的名称与描述,来自 toolkit),再依次执行所有on_system_prompt中间件钩子。 - 摘要:较早消息被压缩后的摘要;只有发生过压缩之后才存在。
- 上下文:最近的、尚未压缩的消息(用户输入、智能体回复、工具调用、工具结果)。注入的运行时状态提示也位于这一层。
延伸阅读
感知环境
注入时间、任务与上下文用量,让智能体保持方向感。
压缩上下文
将上下文长度维护在预设的长度内。
卸载上下文
持久化被移除的内容,供智能体按需回查。
工作区
内置的卸载实现,以及智能体的工作环境。