论文

GitOfThoughts:可重放、可比较的版本控制推理与智能体记忆

GitOfThoughts: Version-Controlled Reasoning and Agent Memory You Can Replay, Diff, and Merge

上下文与知识记忆Agent记忆

摘要

大型语言模型推理一旦完成就不会留下任何痕迹。当上下文窗口关闭时,思想链的步骤就会消失,修剪后的搜索分支就会消失,并且内存缓冲区无法进行差异、合并或审核。代码、基础设施和实验都是版本控制的。推理则不然。 GitOfThoughts 将代理的推理树存储为 git 存储库。每个评分的想法都会成为一个提交,分数会成为笔记,结果会成为标签,而检索只是对代理自己的历史记录进行 git log 。我们用它来测试一些简单的东西。给代理记忆过去的问题真的会让它更准确吗?我们在两个基准测试、两种模型大小和几个预先注册的重复实验中尝试了五个内存存储(无、一个 markdown 文件、一个矢量数据库、一个图形和 git)。对于新问题,答案是否定的,包括一个有希望的早期结果,但当我们重复它时,它并没有成立。只有当要解决​​的问题与内存中已有的问题几乎相同时,记忆才会有帮助(余弦相似度高于约 0.8);在此之下,它什么也不做。换句话说,模型是在寻找答案而不是学习方法。即使模型大 4.5 倍,仍然无法从工作示例中提取出可重用的方法;它只是在发现近似副本方面变得更好。唯一能可靠地帮助解决新问题的方法是生成多个答案并选择最常见的一个(自我一致性)。所以使用 git 作为内存存储的情况并不是它检索得更好。它提供了可审计性、历史记录以及合并两个代理记忆的能力,而无需牺牲准确性。

GitOfThoughts:可重放、可比较的版本控制推理与智能体记忆:论文配图
图 1:推理树是一个 git 存储库。每个评分的想法都是一个包含作者、时间戳和内容哈希元数据的提交;分数是 git 笔记;验证结果是标签(success_*、failed_*);被修剪的尝试仍然留在历史中而不是消失。获胜路径合并到主路径,无答案的课程被提炼到长期存在的内存分支,检索是对代理自己的历史记录进行 git log(--grep、-S、标签过滤器)。右:所购买的经营性房产。底部:从探索到检索的端到端流程。