笔记记了很多却找不到?Khoj 想让你用意思找回它

开源项目猫目发布于 来源:Khoj 官方仓库与文档
给自己的笔记加一个语义检索入口:不记得文件名,也能从问题回到相关材料。

为什么值得关注

用语义检索和资料问答把已有笔记重新连到眼前的问题,减少只会收藏却无法回找的落差。

适合谁:已经用Obsidian或Markdown积累笔记,希望直接回找和重用旧资料的个人知识工作者

这次有哪些亮点

  • Obsidian插件同步笔记库,提供Search和Find Similar Notes入口
  • 自然语言查询可叠加文件、词语与内容日期过滤

使用前需要知道

检索质量依赖资料与模型;自托管与云端服务不同,在线模型仍可能接收相关内容;代码AGPL。

你可能记得自己看过一个观点,甚至记得当时为什么收藏,却完全想不起文件叫啥。搜索“定价”没有结果,因为笔记写的是“客户愿意为什么付钱”。Khoj 想把这样的回找,接回你原来记笔记的地方。

它既有资料检索和问答,也提供 Obsidian 插件。对已经有一套 Markdown 笔记的人,值得看的不是再搬一次家,而是同步现有笔记库之后,直接在 Obsidian 中搜含义、找相关笔记,再打开原文继续写。官方项目

先接上笔记库,搜索入口才有内容

官方 Obsidian 文档给出一条明确路径:从社区插件安装并启用 Khoj,按使用的服务配置 URL 和 API Key。云端应用使用相应账户凭据,自托管则填自己的服务器地址。插件默认定期同步 Obsidian vault,也能在设置里点 Force Sync 立即同步。

这里同步的是笔记资料,不是只把当前一段聊天发给模型。后续搜索依赖已经进入索引的内容;刚改完笔记却搜到旧内容时,先看同步与索引是否更新,比马上换一个聊天模型更接近原因。Obsidian 官方说明

以一个存有产品访谈和读书摘录的笔记库作教学情境:你准备写“为什么用户愿意试用却不注册”。目标不是让 AI 现场补一篇文章,而是从已经记录的访谈中找回有关顾虑、操作障碍和付费意愿的段落。

一句自然语言,也可以加上文件范围

在 Obsidian 的命令面板运行 Khoj: Search,或使用相应搜索图标,就能发起自然语言检索。Khoj 的查询过滤器还能与问题组合,缩小搜寻范围。

假定访谈集中记在“访谈.md”里,可以尝试这样的自拟查询:

为什么用户试用后没有注册 file:"访谈.md"

前半句提供要找的含义,file: 将范围限定到指定文件。它不是检索成功的展示,而是根据官方文件过滤语法写出的中文示意。相比直接让模型“总结所有笔记”,你能把搜索约束到真正相关的一组材料。

官方还提供包含词、排除词及日期过滤。日期条件针对笔记内容里符合 YYYY-MM-DD 格式的日期,不应当作文件修改时间筛选来使用。文件限定和排除词更适合先处理“结果相关但范围不对”的问题。查询过滤规则

正写到一半,也能沿当前笔记找下去

Khoj 的 Obsidian 插件还有 Khoj: Find Similar Notes:以当前笔记为起点,寻找相近笔记。这与 Search 的起点不同,一个从你提出的问题开始,一个从正在编辑的内容开始。

对前面的文章设想,Search 适合找访谈证据;写到“注册步骤带来的负担”时,Find Similar Notes 则提供重新发现旧分析或相关摘录的另一条路。找到材料后,可以回到原笔记补充上下文,而不必先接受模型生成的一段总括。这才是应用层面比单独挑一个向量模型多出来的工作方式。

中文回找,还与搜索模型有关

官方为自托管提供默认搜索模型,也说明多语检索需求可能需要改配置。换聊天模型不必然改变资料搜索;换负责检索的 bi-encoder 模型,则需要重新建立全部文档索引。不要把“能输入中文”理解成自己的中文笔记已经有理想召回效果。搜索与模型配置

Khoj 代码采用 AGPL,云端与自托管是不同的数据处理路线。它能否帮上忙,最终落在一个具体结果上:你提出一个问题,或正在写一篇笔记时,能否找回值得继续打开的旧材料,而不是只得到一段没有原文落点的漂亮回答。

原始资料:Khoj 官方仓库与文档

以上为编辑整理,功能、许可与使用条件以官方说明为准。

返回每日分享