6.1 Harness中的记忆系统工程设计
记忆系统是智能体长期学习和适应的基础。关于记忆的认知模型、三层架构理论(工作、短期和长期记忆),以及非参数记忆与参数记忆的根本区别,请参阅《智能体 AI 权威指南》第三章。同时,更多关于记忆系统在上下文工程中的应用,请参阅《上下文工程权威指南》第四章。
💡 理论参考:
《智能体 AI 权威指南》第三章(3.1-3.3)介绍了多层记忆的认知模型和工程映射
《上下文工程权威指南》第四章讨论了上下文管理与记忆的关系
本节重点讨论 Harness 框架中的记忆实现,特别是 autoDream 系统 和 记忆整合管道 的工程细节。
6.1.1 Harness记忆架构概览
Harness采用了一个经过验证的三层架构,但针对多任务、多工作流的场景做了特殊优化:
图 6-1:Harness 三层记忆架构
各层特性:
工作记忆:完全委托给LLM上下文管理,Harness无需干预
短期记忆:轻量化的会话缓存(JSON格式),存储过去10个会话的摘要
长期记忆:组合式存储,分为三个子系统
6.1.2 autoDream系统:记忆整合管道
autoDream是Harness的自动记忆整合系统,负责将会话数据定期整合到长期记忆。它的设计借鉴了Claude Code的思想,但针对多工作流、多用户的场景进行了扩展。
整合触发的三门机制
autoDream不是持续运行,而是在满足 至少一个 触发条件时才激活:
四阶段整合管道
一旦触发,autoDream执行标准化的四阶段流程:
6.1.3 短期记忆与缓存策略
短期记忆的目的是快速恢复最近会话的上下文,无需每次都从长期记忆检索。
6.1.4 向量索引与语义检索
对于大规模的长期记忆,必须使用向量索引来支持高效的语义搜索。
向量库选型对比
Hnswlib
Apache 2.0
<1M 向量
稳定内存索引、C++ 优化、无运维成本
Qdrant
AGPL v3/商业
1M-10M 向量
v1.7+、高性能 Rust、K8s 部署成熟
pgvector
PostgreSQL 许可
<5M 向量
v0.5+、HNSW 算法、深度 SQL 集成
Weaviate
BSL 1.1/商业
10M+ 向量
v1.6+、多模态支持、GraphQL API
选型建议:简单应用使用 Hnswlib,中等规模选 Qdrant,已有 PostgreSQL 基础设施选 pgvector,大规模企业级选 Weaviate。
6.1.5 与 Claude Code 7 层架构的对比
Harness 的三层架构与 Claude Code 的七层递进式架构体现了不同的优化目标:
触发精度
三门机制(时间、计数、显式)
七层防御,每层阈值独立
压缩策略
统一的 autoDream 管道
渐进式微压缩 → 完整压缩,差异巨大
存储媒介
集中式(MEMORY.md + embedding_index)
分散式(工具结果冻结 + 会话笔记 + 梦想合并)
成本结构
整合时一次性成本较高
前五层几乎无成本,第四层才产生明显费用
跨会话恢复
向量搜索 + 结构化查询
预构建摘要注入,零查询成本
设计启示:Claude Code 的"冻结工具结果"策略(第 1-2 层)及"会话摘要预注入"(第 3 层)可直接借鉴至 Harness。特别是对于高频、短周期工作流,避免每次都触发完整 autoDream 管道能显著降低成本。
6.1.6 本小节小结
Harness的记忆系统通过以下机制支持长期学习:
三门触发机制:通过时间、会话计数或显式触发来激活整合
四阶段管道:Orient→Gather→Consolidate→Prune的标准化流程
去重与去噪:自动清理冗余和过期信息
多模态存储:结构化(MEMORY.md)、向量(embedding_index)、日志(session_logs)
快速检索:向量索引支持语义搜索,JSON缓存支持秒级访问
关于记忆的认知基础和理论模型,请参阅《智能体 AI 权威指南》和《上下文工程权威指南》。
最后更新于
