10.6 KB · updated 2026-07-06 · md

v0.4.0.zh.md

docs/i18n/release-notes/v0.4.0.zh.md

Tesserae v0.4.0 — 提取反馈回路、研究模式、默认开启的演化

<!-- translations:start -->

English · 한국어 · 日本語 · Русский · Español · Français · Deutsch

<!-- translations:end -->

发布于 2026-05-26 · PyPI · GitHub release · pip install --upgrade tesserae==0.4.0

Tesserae 0.4.0 把知识库变成用户可以纠正、可以增长、且默认可信赖的东西。头条是一个提取反馈回路:用户在 Obsidian 库中所做的纠正被收集为类型化的 FeedbackEvent,聚类成由 LLM 措辞的指导,并反馈进下一次提取,使引擎不再重复同样的错误。与之并行的是研究模式tesserae project research)—— 一个 dzhng 风格的智能体式 计划 → 检索 → 反思 → 综合 回路,铸造类型化的 OpenQuestion / SessionHypothesis 节点,使研究线索跨编译得以留存。两个在 v0.3.0 中需要选择开启的演化阶段 —— 社区摘要文档到代码的 discusses 链接器 —— 现在默认开启,LLM 后端获得一批健壮性修复(自动发现 ~/.claude* 凭据、Claude CLI 未登录时优雅处理)。全部为增量,无破坏性变更。

目录:

  1. 提取反馈回路(特性 E)
  2. MD0 —— 智能体式研究模式(特性 G)
  3. 默认开启的演化 —— 社区 + 洞见链接
  4. LLM 后端健壮性 + 图视图基础工作
  5. 从 v0.3.0 升级
  6. 战略背景

1. 提取反馈回路(特性 E)

是什么

用户与提取器之间的一个闭合纠正回路。当你在 Obsidian 库中编辑节点正文 —— 修正错误类型、删除幻觉事实、改写错乱的洞见 —— Tesserae 的库覆盖层会把该编辑记录为类型化的 FeedbackEvent,存入一个去重的 JSONL 存储。这些事件被聚类,LLM 把每个聚类措辞成一小段提取指导(带有负向过滤器,使噪声不会变成规则),该指导被切片并注入下一次编译的提示中。净效果是:纠正一次后便不再复发,无需在每次重新提取后重新应用。

回路有四个活动部件:

部件角色
FeedbackEvent 模型 + JSONL 存储对每次纠正的持久、去重记录。
库覆盖层适配器在回写 Obsidian 库时收集纠正事件。
指导构建(聚类 + LLM 措辞)把原始纠正转化为可缓存、可复用的指导,带回退与负向过滤器。
指导渲染/解析/切片把指导渲染为 markdown、再解析回来,并把相关部分切入每个提取提示。

使用方法

回路已接入正常的库往返。在 Obsidian 中编辑节点,运行一次 obsidian-sync(或刷新链),纠正便会自动收集。在下一次 tesserae project compile 时,累积的指导即生效。

# 1. 在 Obsidian 库中编辑节点正文(修正类型、清理幻觉)
# 2. 把库同步回去 —— 纠正被收集为 FeedbackEvent
tesserae project obsidian-sync

# 3. 重新编译 —— 聚类后的指导被注入提取
tesserae project compile

何时启用

  • 手工策展库,且厌倦了同一个提取错误在每次编译后重新出现。
  • 你的语料有领域特定措辞,通用提取器一直把它类型搞错 —— 几次纠正就能教会它你的惯例。

位于何处

核心实现:tesserae/feedback/FeedbackEvent 模型、JSONL 存储、指导构建/渲染/解析/切片)以及库覆盖层收集路径。设计规格与 7 任务 TDD 计划与 Codex 一起头脑风暴,于 PR #20 合并。

注意事项

  • 确定性基线提取器仍然只通过 LLM 路径遵循指导;当 LLM 后端关闭时,纠正被记录但尚未重新注入。(在确定性路径上遵循指导被作为后续工作追踪。)
  • 指导被缓存;纠正模式的较大变化可能需要一两次编译才能随着聚类重新形成而充分反映。

2. tesserae project research —— 智能体式研究模式(特性 G)

是什么

一个新的 tesserae project research <query> 子命令,针对已编译图运行一个宽度/深度受限的 计划 → 检索 → 反思 → 综合 回路,并把带引用的 markdown 报告写入 .tesserae/research/<slug>.md。它以 dzhng 深度研究范式为蓝本,但根植于你自己的知识库而非开放网络。

关键在于,回路边走边铸造类型化节点和边,因此后续编译可恢复研究线索:

  • 每个子问题一个 OpenQuestion(带用于跟进的 metadata.parent_question_idderived_from 边),
  • 每个 LLM 生成的假设一个 SessionHypothesis(带指向其所依据证据节点 id 的 references 边),
  • 以及(在接入 WebFetcher 后端时)每个网络结果一个 SourceDocument

所有后端经由 Protocol 注入,因此回路在测试下完全确定,除非你接入抓取器,否则绝不触网。

使用方法

tesserae project research "我们的检索栈如何对候选排序?"
# → 写入 .tesserae/research/...md,并铸造下一次编译可恢复的
#   OpenQuestion / SessionHypothesis 节点

网络检索在 v1 中被有意搁置:--no-web 是一个前向兼容的空操作,直到 WebFetcher 后端发布。

何时启用

  • 你想要对自己图的带引用综合,而不是单节点查找或扁平的 ask 回答。
  • 你想让研究问题与假设作为图节点留存,使未来会话在其上构建而不是重新发问。

位于何处

核心实现:tesserae/research/(复用 LLMJsonClientLLMWikiMCPServer.search_nodesResearchGraphBuilderstable_id)。CLI 接线:tesserae/cli.py 中的 research 子解析器。十二个测试覆盖 计划/检索/反思/综合、图接线、max_iters 上限以及 规划器/综合 失败回退。于 PR #18 合并。

注意事项

  • v1 只在本地图上综合;网络层是一个前向兼容的空操作,直到抓取器后端落地。
  • 原子磁盘写入使用来自 batch._write_manifest 的 PID + 随机临时后缀模式,因此并发研究运行不会冲突。

3. 默认开启的演化 —— 社区 + 洞见链接

两个在 v0.3.0 中需要选择开启的阶段现在默认开启,因此开箱即用的图无需额外标志便更丰富:

  • 社区摘要(PR #14)—— Louvain 社区检测加 LLM 摘要现在在默认编译中运行,而不再被标志门控。图默认带有簇级概览。
  • 文档到代码的 discusses 链接器(PR #13)—— v0.3.0 的特性 H 洞见-符号链接器(TESSERAE_INSIGHT_SYMBOL_LINK)在 v0.4.0 中默认开启,因此会话发现会被链接到它们提及的代码符号,无需你设置环境变量。(若你的语料大多是文档而代码讨论很少,仍可显式关闭。)

其意图是:第一次编译就产出一个已带社区概览与文档到代码边的图,契合"可直接交给智能体的自我改进基础"的使命,而不是要求用户去发现并切换每个阶段。


4. LLM 后端健壮性 + 图视图基础工作

对 LLM 后端的一批可靠性修复,外加即将到来的图视图的规格:

  • 自动发现 ~/.claude* 凭据(PR #19)—— 默认 LLM 路径现在跨 ~/.claude* 目录查找 Claude 凭据并填充默认后端的环境,使多账户机器上的首次设置不那么繁琐。
  • 优雅的"Claude CLI 未登录"(PR #17)—— 当 Claude CLI 已安装但未认证时,Tesserae 以可执行的消息干净降级,而不是在编译中途崩溃。
  • PostToolUse sync-code hook(PR #15)—— 补充 v0.3.0 的 SessionStart sync-code hook,使代码图在会话内工具编辑后也刷新。
  • 图视图 v1 规格 —— 把 HypePaper 编码与节点抽屉移植到 Tesserae 站点的设计与 Codex 一起头脑风暴,作为规格 + 计划落地,为随后的可视化图工作做准备。

从 v0.3.0 升级

pip install --upgrade tesserae==0.4.0

这就是整个升级 —— v0.4.0 是无破坏性变更的增量。需要注意的一个行为变更是社区摘要与文档到代码的 discusses 链接器现在默认运行;若你此前依赖它们关闭,请显式关闭。

应加入肌肉记忆的新 CLI 子命令:

tesserae project research "<问题>"   # 对你的图进行智能体式 计划→检索→反思→综合

现在默认开启的行为(此前为选择开启):

  • 社区摘要(Louvain + LLM)。
  • 文档到代码的 discusses 边(v0.3.0 的 TESSERAE_INSIGHT_SYMBOL_LINK 阶段)。

其余一切 —— graph_ppr、混合 search_nodessync-code、实时 SessionStart hook、embedding_statusfresh_insights、衰减评分、supersedes、schema-drift、斜杠命令、维基 / Obsidian 投影 —— 自 v0.3.0 起保持不变。


战略背景

v0.3.0 把散文决策连接到实现它们的代码符号。v0.4.0 是知识库开始自我纠正并自我增长的版本:提取反馈回路闭合了"用户修过一次"与"提取器学会了它"之间的间隙,而研究模式让智能体用自己的类型化问题与假设增长图,而不仅仅摄取已存在的东西。把社区摘要与 discusses 链接器默认开启,从产品侧是同一主题 —— 引擎应当把丰富的基础交给智能体,而不让用户去寻找标志。

这是一座桥梁版本。v0.3.0 证明了类型化的文档到代码图;v0.5.0 把整体变成一个带按需上下文编译器的持续运行引擎。v0.4.0 是*自我改进*支柱获得第一个真实界面(反馈纠正、智能体式研究线索)之处,先于使这一切持续运行的 v0.5.0 骨架。

另见: