跳到正文
PersonOS Docs
理解框架记忆怎样被使用

记忆怎样被使用

从问题理解、多路召回和记忆链组装,到精排、答案核对与深度检索,说明每一步处理什么不确定性。

机制与设计约 12 分钟

一个记忆问题通常包含几项需要同时满足的条件:问的是谁、哪个时期、哪一件事,以及用户希望知道当前状态还是变化过程。PersonOS 的检索设计把这些判断分开处理。它先找到可能相关的原子入口,再取回情节或记忆链材料,生成回答并核对;材料不足时,继续到更具体的情节和原始证据中查找。

下面沿用虚构例子:小林先计划在青禾图书馆学习摄影,后来改到松桥活动室,又在另一段谈话里调整了学习时间。用户问:“摄影学习后来改到哪里了,为什么?”只找到最早的地点会给出过期答案;只命中一句“换地方了”又无法说明原因。检索需要把相关变化组织到一起,并保留无法确认的部分。

交互示意 · 虚构示例从检索命中到有依据的回答

逐步观察:找到一条相似内容之后,还要做哪些判断。

理解问题明确所问对象
发现候选按多种线索查找
补齐上下文读取情节与变化
核对回答检查引用与缺口
问题

“摄影学习后来改到哪里了,为什么?”

问题关注计划地点的变更与原因。检索需要找到变更前后的关系,不能只寻找出现“摄影”的内容。

理解问题明确所问对象
发现候选按多种线索查找
补齐上下文读取情节与变化
核对回答检查引用与缺口
语义相关4 月 2 日 · 青禾图书馆
同一事项4 月 9 日 · 改到松桥活动室
仅主题相近另一人的摄影展

相似度用于找候选。领域、主体和事项关系帮助缩小范围;“另一人的摄影展”即使相似,也不能替代小林的学习安排。

理解问题明确所问对象
发现候选按多种线索查找
补齐上下文读取情节与变化
核对回答检查引用与缺口
原计划青禾图书馆
明确变更松桥活动室
补读情节

“图书馆临时闭馆”解释了本次地点调整的原因,时间安排没有变化。

检索命中较早陈述后,通过链补回后续消息,再根据完整情节解释地点变化。

理解问题明确所问对象
发现候选按多种线索查找
补齐上下文读取情节与变化
核对回答检查引用与缺口
候选回答

计划地点改为松桥活动室,因为青禾图书馆临时闭馆。

依据:4 月 9 日的明确变更消息。
回答检查地点和原因与材料一致,引用能够支持结论。

若只有 4 月 2 日的计划,回答只能说明当时安排;若问题问“是否实际去过”,现有材料不足,需要继续查找或明确说明未知。

1 / 4

理解问题,同时保留原来的问题#

问题理解首先补全必要的指代和时间。“后来那里还开放吗”需要从近期对话确定“那里”指什么;“上周”需要结合提问时刻转换成日期范围。改写应尽量只做这些必要补全,保留原始问题,避免把“是否考虑过换课程”改成“换课程后怎么样”,后者已经预设事情发生。

参考流程还识别问题主体,提出少量检索扩展词,并估计答案可能落在哪些生活领域。例如“学摄影的安排”可能对应“摄影课程”“练习时间”等入口。这些词用于寻找表达不同但含义相关的材料,不能作为答案中的新事实。主体不明时应保留不明,而不是把所有内容默认归给用户。

近期对话与画像可以辅助补全省略,但作用有限。画像中的兴趣不能证明某次活动发生,常用地点也不能替代本次问题的地点。如果问题预处理失败,参考流程可以退回原始问题继续检索。这会降低指代理解的质量,却比生成一个没有依据的新问题更容易检查。

推测的领域和明确的筛选条件

问题中的显式时间范围、主体要求与模型猜测的领域不是同一类约束。参考快检索会把猜测的领域用于一条收敛路径,同时保留较宽的语义路径,避免误判领域后把答案彻底排除。深入查找时可以按需要施加或放宽范围。日期筛选应明确依据何种时间;记录时间不能自动充当事件发生时间。

用两种方向寻找原子入口#

第一条召回路径偏向覆盖面:把原问题的必要改写和扩展表达分别转成查询表示,在原子索引中寻找相近内容。一条原子只要与其中一个表达充分相关,就有机会进入候选。这能缓解措辞差异,例如用户说“上课的地方”,材料写的是“学习地点”。

另一条路径在推测的生活领域内寻找候选。它帮助减少歧义,例如“安排”可能涉及学习、工作或家庭事务。两条路径分别产生排序,再通过排名融合组合结果。排名融合比较各路径中的名次,避免把数值范围不同的分数直接相加;多个方向都支持的材料通常更容易排到前面。

候选池还需要控制单一情节占据过多位置。一段很长的谈话可能产生许多相近原子,如果这些原子全部挤进前排,其他日期的变化就可能没有机会出现。按情节限制候选数量,有助于保留来源的多样性。这个限制牺牲了一部分局部细节,换取更多不同材料进入后续阅读。

相似度在这里回答“像不像用户正在找的内容”,并不回答“内容有多可信”。重复出现的旧说法可能比一条新的纠正更容易被命中,错误归属的原子也可能在语义上十分接近。相关性排序、证据质量和现实有效性需要分别判断,不能共用一个分数表达。

从命中的原子回到完整材料#

原子命中后,系统回到它所属的情节,或查看它关联的记忆链。多个原子指向同一情节时,只需取一次相应材料;多个命中指向同一变化链时,可以使用已整理的链叙述。这样能够把“小林原先去哪里”和“后来换到哪里”放到同一段可读材料中。

跨情节叙述可以在写入时增量整理,查询时读取已有结果;也可以在读取时围绕当前问题组装。前者减少重复整理,后者能适应问题的关注点,但增加当前查询的处理步骤。两种方式都需要处理覆盖范围与失败回退。链叙述缺失或组装失败时,可以退回原情节;交给后续环节的材料仍需携带主题、时间、叙述与对应来源。

持久保存的链叙述与一次请求内组装的材料单元,都属于派生视图,不应新增事实身份。引用应对应实际读入并支持叙述的情节;成员登记只能说明处理范围,不能单独证明这些内容都进入了输入或摘要。旧材料被截断、某次整理失败、成员后来被删除,都可能使视图不完整,因此输入范围和引用覆盖需要分别核对。

候选池之外仍有相关命中时,系统可以附带范围提示,告诉后续作答与核对环节“还有相关材料未展示”。这对枚举问题尤其重要。用户问全部学习地点时,当前材料出现两个地点不意味着总共只有两个;同一个地点被三段材料重复提及,也不能直接算成三次经历。

精排选择最能回答问题的材料#

初次召回解决覆盖问题,精排进一步判断候选与完整问题的关系。问“为什么换地点”时,提到闭馆原因的材料应优先于只提到摄影课程的材料。精排不会核验事件真假,也不会替代主体和时间检查,它只帮助安排后续阅读顺序。

精排可以对完整情节表示打分,也可以先对命中的原子打分,再把分数汇总到对应材料。较短的原子有利于突出具体问题,完整情节则携带更多条件。参考实现保留这两种取舍,不能把其中一种写成普遍必需的算法。无论使用哪种表示,生成回答时仍需回到情节或链叙述阅读。

精排需要受时间预算约束。超时或不可用时,可以保留原来的融合顺序继续处理,而不是丢掉已召回的材料。这种降级保住了可用性,却不等于质量没有变化;评估时应区分没有材料、材料顺序较差和答案没有正确使用材料。

回答必须处理归属、时间和状态#

作答阶段使用带主题与时间的情节叙述作为主要材料,原子负责定位,不直接充当标准答案。这个分工让模型能够看到否定、改口、计划与结果之间的关系。例如“原计划周三,后来决定改到周六”如果只截出一个日期,容易丢掉用户真正询问的变化。

同一事项有不同说法时,需要检查明确的纠正与时间关系。参考流程在日常状态更新中,按情节时间理解较后的说明,并呈现必要的演变。这适合“小林后来改到活动室”的记录,但不是判断所有现实冲突的通用规则。较晚导入的旧邮件、第三方转述或不同条件下的偏好,都不能只凭写入顺序覆盖先前内容。

PMO 的有效时间、记录时间、归属和冲突关系,为更严格的解释提供约束。回答“现在在哪里”应寻找对当前时期成立的材料;回答“当时为什么改变”应回到当时的理由。若证据只能支持“用户当时表示准备更换”,回答就应保留计划状态。材料没有说明原因时,可以回答新地点,同时明确换地点的原因尚无依据。

跨材料的一步推导有时有用,例如计划开课日期与提问日期,可以支持“按现有安排,尚未到开课时间”;它们不能单独证明课程实际是否已经开始。推导仍需能写出依据与条件。不能从“反复查询课程”推导“已经报名”,也不能把对某种安排的兴趣扩写成授权。记忆回答提供材料支持的内容,是否行动仍由后续治理和行动边界决定。

把答案写错与材料不足分开处理#

答案核对在草稿生成之后进行,读取与作答相同的一组材料。它检查核心结论是否有依据,日期、数字与归属是否正确,是否漏掉问题要求的项目,以及是否使用了已被明确更新的状态。核对看到同一套来源编号与范围,修正意见才能准确指向草稿实际使用的内容。

如果材料已经写明“松桥活动室”,草稿却回答“青禾图书馆”,这是答案使用材料出错,重新检索未必有帮助。参考流程会把具体问题交回作答阶段重写,再次核对。若材料只记录“换了地点”,没有新地点名称,则属于材料不足,反复润色同一份草稿无法补上缺口。

这一区分决定下一步成本。材料足够时,局部修正通常比扩大全库搜索更直接;材料不足时,需要换查询、打开其他情节或回看原文。核对也不能因为一句话较短就判它不完整:用户只问地点,准确给出地点即可。核对模型本身仍可能判断错误,因此它增加一道检查,不构成事实正确性的保证。

深入检索沿着已经发现的线索继续#

深入检索处理的是具体缺口。它先判断缺的是主体、时间、变化链还是枚举中的某个项目,再从已经读过的材料提取下一步关键词。例如最早情节提到“场地通知”,可以据此继续寻找通知相关记录,而不是不断重复“摄影学习”这个宽泛问题。

深入查找可以在几种粒度之间移动:搜索原子入口,浏览某个时期的情节目录,打开完整情节,以及阅读逐条原始证据。若索引始终没有命中,还可以用材料中的独特词直接查找原文。提取器可能漏掉一个名称,但原文仍然存在;此时绕过派生索引有机会找回遗漏的信息。

原文关键词搜索也有局限。多个词需要同时出现时,词越多越容易漏掉相关材料,因此具体名称通常比一串泛词更有用。查到一句话后,还应阅读它所在的对话,而不是把命中的半句直接作为结论。情节叙述与原文不一致时,应回到原文重新检查,不能因为叙述更流畅就优先相信它。

列表和计数问题还需要检查重复与遗漏。同一次课程在三次谈话中出现,仍只算一次发生;准备参加但尚未确认完成的课程,也不应计入已参加次数。检索可以追加一次范围检查,但在材料覆盖有限时,应说明查阅范围,而不是把已找到的项目包装成完整人生记录。

深入查找必须有停止条件。连续尝试没有新线索,或达到本次查找预算时,应回答已经有依据的部分,并指出尚缺的信息。深入检索失败不证明事情没有发生,也不证明原始库不存在相关材料。可核对的说法是“在本次查阅范围内没有找到足以确认的记录”,并说明缺少哪一项依据。

检索过程中是否可以补充记忆

某些参考流程允许在明确开启时,为已阅读的情节补充遗漏索引或叙述,帮助后续检索。这个动作应独立于普通阅读,并受写入范围、来源引用和数量限制。它不能把本次生成的答案当作新证据,也不能因为发现了合理推测就升级成长期事实。是否支持这种写回,以及如何审核,属于具体实现的选择。

把检索材料组织成任务上下文#

应用背景可以帮助问题理解选择较相关的扩展词、深入检索决定优先查看的线索,以及回答安排详略。学习回顾可以更关注练习与反馈,项目回顾可以更关注决定与期限。这些关注点都不能改写原始问题、代替来源或扩大访问权限。

写入时使用的活动分类,不能单独证明检索已按该分类进行严格过滤。标签和领域也是组织工具:一个标签写着“已完成”,仍需核对正文中的完成证据;缺少某个标签,也不能证明相关事情从未发生。框架要求把任务意图、候选筛选、证据边界和最终行动权限分别表达。

在框架设计中,ContextPack 将材料进一步裁剪成当前任务可消费的短上下文:问题范围、相关事实与来源、时间边界、未确认项和使用限制应一同保留。它可以减少无关历史占用上下文,但不能为了简短删掉决定答案是否成立的条件。ContextPack 是可重建的派生物,任务结束、来源变化或授权改变时需要检查其有效性。

只交付材料:减少生成步骤的另一种选择

当下游助手已经负责组织答案时,可以只完成召回、材料组装与排序,把材料直接交付。这种路径省去生成式文本改写、作答与答案核对,减少串行步骤。它适合问题已经清楚、下游能够自行处理引用和不确定性的场合。

这条路径仍可能使用向量表示与精排模型,因此“没有生成式文本作答”不能写成“没有模型调用”。它也不会自动补全所有指代或解释相对时间。空材料就应保持为空,不能为了让交付看起来完整,拼出一句仿佛经过核验的回答。本页将其作为设计取舍说明,不定义公开参数或软件包能力。

意图假设怎样影响检索#

用户反复查看摄影课程,可能是在比较,也可能只是替朋友查资料。推测的意图可以帮助选择检索线索,但应保留为待确认假设,连同依据、反证和适用期限。它不能代替用户已经表达的目标,也不能扩大行动权限。用户否认后,应撤销或更新假设。具体约束见记忆的使用边界。

设计要求与版本实现的对照,见评估与实现边界。

框架文档 · 更新于 2026 年 10 月 26 日

搜索框架文档

输入关键词,搜索所有文档。

全文搜索 · 内容只在当前浏览器中检索
文档目录

记忆框架