Skip to content
阅读进度

一条记忆如何写进去? ​

返回 EachOf 项目 目录

项目版本说明

这些问答整合历史设计与实现资料;当前 main 分支 README 以工作包描述建设状态。具体能力、实验数据与设计目标的边界见项目状态与证据。

标准回答 ​

外部请求先变成可追踪的操作,后台处理器产生候选内容,Core 再校验并完成正式写入。

先认清 Operation 和 Task ​

**Operation:**用户发起的一次完整操作,例如“记住这个网页”。**Task:**完成该操作的一项内部工作,例如抓取、抽取、向量化。

一个操作可以拆成多项有前后依赖的任务。所有任务加起来形成一张有向无环图,简称DAG。类比 Android:提交一项完整后台工作,内部再组织若干有顺序或可并行的步骤;这里涉及跨进程与持久化,机制比进程内线程池更完整。

以记住网页为例 ​

  • **Capture:**取得资料,建立原始资源与事件记录。
  • **Extract:**提取可长期保留的候选陈述。
  • **Concept / Embed:**进行概念处理和向量化,部分步骤可并行。
  • **Consolidate:**整合已有内容与新内容,减少重复或处理关系。
  • **Generalize:**从具体信息中形成更一般的候选结论。

这是架构文档中的示例任务链,不意味着每一种写入请求都必须跑完全部步骤。

候选结果为什么不能直接入库 ​

模型可能提取错,处理器也可能存在缺陷。更严重的是,计算期间权限或来源已经变化。处理器拿到输入时可以用,不代表交结果时仍然可以用。

因此处理器不能直接连接数据库,也不能自行写成权威记忆。它只交候选结果,Core 校验协议与结构、任务身份、来源、权限和策略,并按任务类型完成幂等写入。这一步叫Trusted Commit。

可信写入的准确含义

它保证写入经过平台控制与校验,不保证模型生成的语义一定真实。当前抽取实现把新陈述先置为 suggested,后续确认或策略提升才改变其事实状态。

“已接收”不等于“已经记住” ​

请求被接受后,操作可能仍在排队或处理中。客户端需要查看操作状态,判断最终成功、失败或需要重试。后台任务的失败不会把已经接受的那个 HTTP 响应重新变成失败响应。

自查:我应该如何用一句话解释 Trusted Commit?

“模型只提交候选结果,由核心服务检查权限、来源和数据约束,再按可重试、避免重复副作用的方式写入。”

内容来源 ​

用完整回答理解机制,用真实证据解释项目。