Lantide Data
此页已有简体中文译文,但尚待核对最新繁体中文原文的更新。

可治理的 Agent Memory:分层、審批与 catalog 注入

方法論答卷 B:知识不是越自動越好,而是越可見、可審、可关閉越好。操作步驟見 使用者指南 §15


系列位置

完整导读見 系列导读与产品定位

順序 文章 本題
0 系列导读与产品定位 系列导读与产品定位
1 Agent 时代的数据分析工作流 可審閱的交付与執行授权
2 本文 可治理的 Agent Memory
3 Prompt 与 Context 工程 Prompt 与 Context
4 AI Agent 架構 Agent 架構
5 統一查詢层 統一查詢层

一、問題定義:自動 Memory 与无審批 RAG 为何不足

許多 AI 产品把「記住使用者說过的話」当成预设能力:对話结束就写入向量庫,下次檢索相似片段塞回 prompt。对数据分析場景,这会帶來三類風險——不是模型不夠聰明,而是記憶缺乏治理

  1. 不可見:使用者不知道模型「以为」哪些规则成立。
  2. 不可控:錯誤推論或幻觉可能被当成长期事实。
  3. 不可关閉:合规或敏感專案需要明確切断記憶注入。

Lantide Data 的立場是:只有经使用者核准、写入正式知识檔的内容,才进入 Agent 上下文;其餘建議停留在佇列,直到 Apply 或 Dismiss。

部分产品透过「越問越懂 schema/业务规则」做会話内自适应記憶——方便,但跨專案口徑一旦写錯,代价高于「少記一点」。Lantide 选擇 Queued Knowledge + 人工 Apply:口徑須 evidence_quote 可驗、核准后才注入,与 工作流 §三 SQL-first 互補——知识檔沉澱的是已審閱的口徑,不是 Insights 終端的副产品。


二、分层 · 分型 · 審批

2.1 两层知识

层級 範圍 典型内容
User Knowledge 工作区全域 公司術语、全域分析偏好、跨專案规则
Project Knowledge 单一聚焦專案 該次活動定義、欄位语意、專案專属假设

專案知识仅在該專案被 focus 且 Agent Memory Enabled 时注入。

2.2 Rules 与 Info

每份知识檔固定两区(旧版四区会在读取时遷移):

@@PROTECT0@@@@PROTECT1@@@@PROTECT2@@

萃取入佇列时标記 Type:@@PROTECT3@@ 或 @@PROTECT4@@,核准后写入对应区块。

2.3 总开关 Enabled 与 Automatic suggestions

  • **Enabled(总开关)关閉后:**不背景萃取、不注入、不显示佇列紅点;Agent 提案与受控写入一併暫停。Agent 行为等同无記憶庫。
  • **Automatic suggestions 关閉(Enabled 仍开):**不跑对話结束后的背景萃取 LLM/入隊;已核准知识仍注入,手動编辑与佇列審批仍可用;Agent @@PROTECT5@@ 仍可入隊。

詳見 §15.3


三、两段式知识流

@@PROTECT6@@@@PROTECT7@@@@PROTECT8@@

原则: 佇列項目永远不直接进模型;只有写入磁碟知识檔后才注入。


四、Queued Knowledge:審核入口

4.1 萃取规则

EnabledAutomatic suggestions 皆开启、且 LLM 可用时,对話正常结束后背景執行:

  • 仅掃描最近一轮中的 user 讯息(预设最近 8 條)。
  • System instruction(Execute Plan、Resolve Comments、HTML Report 指令等)不参与萃取。
  • 每條建議須含 evidence_quote(使用者原話引述),后端校驗引述必須出现在上述 user 讯息中,否则丟棄。
  • 每轮最多入隊 3 條。
  • 有聚焦專案时,建議偏 project 层并预填專案 ID。

仅关閉 Automatic suggestions 时跳过上述背景流程;不影響已核准知识注入。

4.2 去重与取代

与已核准知识、pending 佇列、同專案知识檔做语意比对;重复则略过。若为更新表述,可 supersedes 取代语意相同的旧 pending 項。Dismiss 后会記录 hash,避免反覆建議同一條。

4.3 Agent 主動提案(@@PROTECT9@@)

分析中 Agent 可呼叫 @@PROTECT10@@ 将可重用口徑/欄位规则送入同一 Queued Knowledge 佇列。与被動萃取相同:核准前不注入

与 Query Step Ledger 的分工:

内容類型 歸属 为何
本对話某步 SQL 的 pitfalls、欄位陷阱(仅本次分析) Ledger / @@PROTECT11@@ 对話内可追溯,不污染长期知识
跨对話可重用口徑、欄位定義、业务规则 @@PROTECT12@@ → Queued 須 evidence + 使用者 Apply

提案須附可驗證的 evidence_quote,禁止把 SQL、快取表名等執行态内容写进知识檔;頻控与校驗細節見 AI Agent 架構 §八

4.4 核准操作

Agent proposedChat extraction 共用同一佇列。入隊后可在两處審批:

  • 对話串流知识提案卡片User / Project / Dismiss(不暫停 ReAct,与 @@PROTECT13@@ 不同);卡片依佇列狀态持久化,重載对話后仍同步;有聚焦專案时 Project 预设写入該專案。
  • Queued Knowledge 分页Apply to UserApply to ProjectPick project 項須手動选專案)或 Dismiss;批次 Process all 会跳过仍須手動选專案的項目。

列表仅显示 pending 項,并区分來源;套用后自列表移除属预期。聊天卡片与 Agent Memory 透过佇列变更事件双向刷新;成功套用时 toast 标明 User 或 Project 落点。

操作介面見 §15.5


五、知识檔契約

5.1 條目结構

  • 以 Markdown 頂格 bullet 为主;可有一层缩排子條(目录模式)。
  • 葉條目:实际规则/事实正文;仅作分组标題的父行不計入 Library status 的 Rules/Info 計数。
  • Save 上限 8,000 字元(与注入预算 6,000 / 20,000 不同)。

5.2 Library status

编辑器右側显示 Rules/Info 葉條目数、字元数/注入上限、Last updated、Mode(flat / catalog)。統計以磁碟已儲存内容为准;未 Save 时提示 Counts update after Save


六、Apply 与 Reorganize

6.1 Apply

核准后合併至对应 @@PROTECT14@@ 或 @@PROTECT15@@,新條目常以单行頂格 bullet 写入,待下次 Reorganize 整理。UserProject 落点不同,勿在錯誤分页查找。已 Dismiss 或已 processed 的佇列項再次 Apply 时不会重复写檔(重复操作安全);前端以 Already dismissed / Already saved 提示,而非假成功。

6.2 手動 Reorganize

目前左側选定的 User 或 Project 檔觸发 LLM:去重、濃缩贅字、依字数決定是否收成「短目录标題 + 缩排子條」。

檔案 Reorganize 目录閾值 注入 Mode 閾值
User 2,500 字 未达:flat 全文;达:catalog
Project 5,000 字 同上
  • 重组前备份 @@PROTECT16@@;结構不合法不覆写。
  • 未 Save 时 Reorganize 按鈕禁用。
  • 进行中:编辑区蒙版 + 狀态文字,最长約 300 秒;可切換其他知识檔并行重组;关閉对話框不取消背景请求。

詳見 §15.6

6.3 Pre-inject Reorganize

已达 catalog 字数但檔内仍全頂格(无父+子结構)时,新对話首次向 Agent 发送讯息前,系統可能自動 Reorganize 一次(介面提示「Reorganizing Agent Memory before injection…」)。同一 conversation 每檔最多试一次;失敗不阻断聊天,新开对話可再试。编辑器有未儲存变更时请先 Save,避免自動重组覆写磁碟。


七、flat → catalog → expand

知识檔較短时,模型一次看見全部 Rules/Info;超过字数门檻后,注入变成「目录标籤列表」,模型需用 @@PROTECT17@@ 按需展开——類似「先給索引,再查詳情」,避免长期知识撐爆 context。

7.1 注入模式

Mode 條件 注入内容
flat User < 2,500 字且 Project < 5,000 字 Rules + Info 全文(在字元预算内)
catalog 达上述閾值 目录索引:頂格父标籤为 lookup key;有子條的父行不帶子條正文

超过注入预算(User 6,000、Project 20,000 字元)时附加截断提示。

7.2 expand_knowledge_catalog

catalog 模式下,system prompt 会提示 Agent 以精確父标籤呼叫 @@PROTECT18@@ 批次載入完整條目(含缩排子條)。工具实作与狀态限制見 AI Agent 架構 §八。

7.3 project_id 语意

  • 注入时使用的 @@PROTECT19@@ 以 session 聚焦專案为准。
  • 萃取入佇列时优先使用对話 context 的聚焦專案,再 fallback session,以減少 Pick project。

八、与答卷 A(Agent 时代的数据分析工作流)的关系

维度 Agent 时代的数据分析工作流 交付物 可治理的 Agent Memory 記憶
生命周期 Plan / Report 版本化、Execute 锁定 跨对話累積、可 Reorganize
協作載体 文件 + 批註 知识檔 + 佇列
进入模型 活躍分页内容、批註 Optimizer 仅核准后 Rules/Info

两者正交:好的交付流程不等于自動記憶;記憶也不应取代 Plan 上的明確假设。


九、反模式

反模式 Lantide Data 做法
对話结束自動写入向量庫 先入 Queued,人工 Apply
无引述的「业务规则」 必須 evidence_quote 对得上 user 原話
佇列項直接进 prompt 仅核准后檔案注入
无法关閉記憶 Enabled 总开关;仅停背景萃取用 Automatic suggestions
知识檔无限膨脹无结構 catalog + expand + Reorganize
模型从对話自動「学会」口徑并 silent 注入 evidence_quote + 佇列審批(§四)

十、结语

Agent Memory 在 Lantide Data 里是治理系統,不是聊天記录的副产品:可見、可審、可关閉,口徑須经 evidence 与 Apply 才进模型。

这与工作流的 SQL-first 互補——Plan 承載单次分析的假设,知识檔承載跨專案口徑。下一篇 Prompt 与 Context 工程 說明核准后的知识如何与 Context Summary、State Prompt 一起组裝进模型。