osFoundry / Platform
osIndex
使用三种打分器(词法、语义、近期度)搜索每一份本地文件。完全在设备上完成。
简介
osIndex 是 osFoundry 的本地文件搜索。把它指向一个文件夹,它就用三种互补的打分器同时让其中的一切变得可查:面向精确关键词和标识符的词法打分器、用向量嵌入按含义匹配的语义打分器,以及偏向你最近改动内容的时效打分器。纯关键词搜索会漏掉那些你只记得概念、记不清确切措辞的文件;纯语义搜索则会漏掉精确的符号名。三者同时运行并融合各自的排名,正是这一点让 "handle auth" 既能命中字面上的 AuthToken,也能命中名为 checkSession 的函数,而你今早改过的那个文件会被加权靠前。\n\n在 osFoundry 内部,osIndex 构建在本机之上。选定的文件夹被索引进本地 SQLite,并为语义维度内置向量存储,三份排名列表用倒数排名融合(reciprocal-rank fusion)合并,而非让某一种方法压过其他方法。索引是增量式的:文件夹监视器只对变动过的文件重新索引,因此无需每次敲键都全量重扫,索引也能保持最新。由于 osFoundry 是本地优先的,你的文件夹内容无需离开本机就能被检索:索引、向量和查询全都留在你的设备上。\n\n这之所以重要,是因为搜索只完成了一半,另一半是让回答有据可依。osIndex 的结果会成为你的对话与智能体的上下文,于是当你就自己的项目发问时,模型是依据你真实的文件作答,而不是凭空猜测。而且由于 osFoundry 采用自带密钥(BYOK),读取这些结果的模型调用是用你自己的 API 密钥运行的,没有按席位收费,也没有转售加价:检索保持私密,推理则由你直接向服务商付费。
主要功能
- 用三种打分器协同搜索你所有的本地文件:精确关键词(词法)、按含义匹配(语义向量)和更新时效,因此无论你记得的是措辞还是只记得大意,查询都能命中正确的文件。
- 完全在本机、在 osFoundry 桌面应用内运行:文件被索引进带内置向量存储的本地 SQLite,因此文件夹内容无需离开你的机器就能被检索。
- 用倒数排名融合合并三份排名,而非只选一种方法,因此 "handle auth" 能在同一组结果里同时呈现 authenticateUser() 和你最近编辑过的配置。
- 增量索引会监视选定的文件夹,只对变动过的部分重新索引,无需每次编辑都全量重扫,索引也能保持最新。
- 为你的对话与智能体供给内容:检索到的本地文件会成为有据可依的上下文,供你在 BYOK 下运行的任何模型使用,模型调用不含任何转售加价。
使用场景
- 开发者:输入 "handle auth",osIndex 会把精确的 AuthToken 符号、名为 checkSession 的函数,以及你今早编辑过的配置,一并呈现在同一份排名列表中。
- 研究者:按大意而非确切措辞搜索一个装着笔记和 PDF 的文件夹,再把最靠前的结果作为有据可依的上下文喂给模型,全程文件不离开你的笔记本电脑。
- 注重隐私的专业人士:让一个客户文档文件夹在本机保持完全可查,因此检索绝不会上传其内容,只有你明确启用的模型调用才会接触网络。
常见问题
osIndex 会把我的文件上传到云端来搜索吗?
不会。osIndex 把你选定的文件夹索引进本地 SQLite,并配以本机上的向量存储,索引和你的查询都留在本机。本地文件搜索无需上传文件夹内容。osFoundry 的部分可选功能(例如用于让回答有据可依的云端模型调用,或工作区级别的评分)都置于明确的同意开关之后,因此任何离开本机的东西,都是你有意开启的。
这三种打分器实际上有什么不同?
词法打分器匹配精确的词和符号,因此精确的标识符和短语会排得靠前。语义打分器用向量嵌入按含义匹配,因此即便措辞不同,查询也能找到相关文件。时效打分器给你最近编辑或打开过的文件更高权重。osIndex 融合这三份排名而非只选其一,所以它既能应对 "那个确切的函数名",也能应对 "我之前在弄的那件跟账单有关的事"。
在我不断编辑文件时,osIndex 如何保持最新?
索引是增量式的。文件夹监视器会检测变动,只对受影响的文件重新索引,而不是重扫整个文件夹,因此索引能反映你最新的编辑,无需沉重的全量重建。新增和改动的文件在保存后不久即可被检索,而最近改动过的文件在排名中还会获得时效加成。