Pyforge-memory – 为AI智能体提供有效的三级记忆存储
Pyforge-memory是一种专为AI智能体设计的三级记忆系统,通过逐字记录、关键词记忆和压缩摘要三层结构,有效减少上下文窗口占用,防止智能体身份提示被截断,保持对话连贯性和相关性。
Pyforge-memory是由Forged Logic开发的开源Python库,专门解决AI智能体在长时间对话中的上下文窗口溢出问题。传统记忆工具会将所有对话原始记录直接塞入上下文,导致在约50次交互后,智能体的身份提示被静默截断,退化为通用助手行为。Pyforge-memory采用三级记忆架构,大幅压缩上下文占用,让每个字符都发挥最大价值。
三级记忆包括:逐字层(Verbatim)保留最近N次原始对话,约400字符,确保对话流畅;关键词层(Keyword)根据当前消息中的关键词搜索记忆条目,约300字符,提供相关召回;摘要层(Digest)压缩旧对话的滚动摘要,约300字符,维持连续性。总上下文从约3000字符降至约1000字符。
该库具备多项实用功能:毒化检测可识别并阻止通用AI脚本输出污染记忆;所有配置均可自定义,包括禁用词、停用词和记忆限制;采用JSONL文件存储,无需数据库或API密钥,可在任何环境运行;知识目录支持跨文本文件进行关键词搜索,为领域上下文提供支撑;框架无关,兼容Ollama、OpenAI、Claude等主流LLM API。
安装简单,只需执行pip install pyforge-memory。使用时,先导入MemoryEngine,设置memory_dir和knowledge_dir路径,定义LLM调用函数,然后调用engine.build_context传入用户消息、系统提示和查询函数,构建上下文后发送给LLM,最后保存对话。工作流程如下:用户消息到达后,提取关键词,获取逐字层(经过毒化过滤和近似重复检测),再搜索记忆和知识文件中的关键词匹配并排序,若记忆条目超过10则自动生成摘要,最终组装成系统提示+逐字层+关键词层+摘要层+用户消息的完整上下文。
毒化检测可通过设置forbidden_terms自定义,例如禁用“我是一个AI助手”等短语;使用engine.is_poisoned()检查文本。知识库只需将文本文件放入knowledge目录即可自动索引。作者强调,三级设计缺一不可:仅逐字层会丢失旧对话上下文,仅关键词层会丢失当前对话流畅性,仅摘要层过于压缩且丢失细节,三者结合提供时效性、相关性和压缩性。
Pyforge-memory采用MIT许可证,代码托管于GitHub。对于构建需要长时间记忆的AI智能体的开发者而言,这是一个实用且高效的解决方案。