人生搜索引擎免费用,开源版哈利波特“冥想盆”登GitHub热榜,支持中文

  文章转载于量子位(QbitAI)

  作者:一水

  天啦撸!回溯你在网上看过、做过的一切,也有免费软件可用了!

  简单说,针对任何“之前好像在哪看过”的电脑文件,只需输入相关搜索词,这个软件都能帮你一键轻松回忆了。

  打开方式 be like(没错,也有中文版):

  你品,你细品。这像不像《黑镜》中“你的全部历史”那一集,描述了一种人人都植入芯片、能随时读取过去记忆的未来生活。

  更有意思的是,发明这个软件的朋友将其命名为 Pensieve (冥想盆),它是指”哈利波特中提取和回顾记忆的那个大水盆子”。

  笑死,你别说还真贴切!事实上,这个项目大量借鉴了之前就很火的“记忆助手软件”Rewind 和微软的 Windows Recall 功能。

  但是,这两个 emmm……Rewind 要收费(基础版 12 美元/月),微软的延期了。

  所以,既免费、又立即可用的 Pensieve 是真香了!

  这不,代码更新后迅速登上了 GitHub 热榜~

  记住并回忆电脑屏幕上的所有内容

  我们先来看 GitHub 页面上 Pensieve(原名为 Memos)的官方介绍:

一个以隐私为中心的被动录制项目。它可以自动记录屏幕内容,构建智能索引,并提供方便的网页界面以检索历史记录。

  是不是听起来还是有点抽象?

  别急,我们马上拿 Rewind 和 Windows Recall 来一波回忆杀(doge)。

  先说微软画了很久的大饼——Windows Recall。这个功能是今年 5 月首次被提出的,当时微软计划将其作为 Copilot + PC 的一项旗舰功能推出。

  当时主打,任何文件或网页浏览记录都可以用自然语言搜索,轻松回忆任何东西。

  然而,由于安全方面的担忧,该功能的发布被一再推迟,且至今仍未上线。

  细数一下,微软最初计划于 6 月 18 日发布,但由于安全问题,到了时间点却未能按时上线。

  后来微软对其进行了改进,加入了高级加密和 Windows Hello 认证,数据被保存在 VBS 安全区中,第三方应用和用户无法访问,而且截图将自动排除诸如密码和信用卡信息等敏感内容。

  一番改造后,微软又计划在 10 月底开始测试新版本的 Windows Recall。

  直到今日,该功能仍未上线,微软还在改改改……

  此外,对于“记忆助手”Rewind,虽然干得热火朝天,但奈何它是收费滴。

  Rewind 成立于 2020 年,主打通过 AI 技术捕捉和整理用户的全部生活内容。

  具体功能和 Windows Recall 类似,也是帮助用户记录并回溯在手机或电脑上看过的所有信息。

  不过除了走到“回忆起”这一步,Rewind 走得更远了一点。

  它还接入了 GPT-4,能够对这些“记忆”进行更深一步的操作,使得用户可以通过提出问题、创建摘要等方式与系统进行交互。

  而就在 Rewind 功能更加完备的过程中,它也收获了资本的青睐。

  截至今年初,Rewind 已经完成了两轮融资,共计 2790 万美元,估值约为 3.5 亿美元(25.34 亿人民币),而且两轮中都有 OpenAI CEO Sam Altman 和 a16z 的身影。

  相比之下,根据项目作者的说法,Pensieve 的最大特点在于:允许用户完全控制自己的数据,避免将数据传输到不可信的数据中心。

  具体而言,Pensieve 拥有以下几个特点:

  • 简单安装,只需通过 pip 安装依赖项即可开始;

  • 所有数据均本地存储,允许完全本地操作和自主数据管理;

  • 实现全文和向量搜索;

  • 与 Ollama(一个支持本地部署 LLM 的开源框架)集成,增强搜索能力;

  • 支持 Mac 和 Windows(Linux 支持正在开发中);

  • 兼容任何 OpenAI API 模型(例如,OpenAI、Azure OpenAI、vLLM 等);

  • 允许用户选择和设置语言模型(包括中文和英文);

  • 允许通过插件扩展功能;

  下面重点介绍大家关心的几个问题。

  第一,需要占用多少存储。

  作者贴心预估了一下,每月按 20 个工作日计算,产生的截图文件约 8GB。截图会进行去重,如果连续截图内容变化不大,那么只会保留一张截图。

  SQLite 数据库大小取决于索引的截图数量,10 万张截图索引后约占用 2.2GB 存储空间。

  第二,关于功耗和硬件设备。

  Pensieve 默认需要两个计算密集型任务:1)一个是 OCR 任务,用于从截图提取文本;2)另一个是嵌入任务,用于提取语义信息和构建向量索引;

  对于前者,作者使用 CPU 执行,并针对不同的操作系统优化以最小化 CPU 使用。

  而对于后者,作者认为可以按照自己的设备进行选择:

  • NVIDIA GPU 设备优先使用 GPU;

  • 苹果设备优先使用 Metal GPU;

  • 其他设备使用 CPU;

  当然,为了避免影响用户日常使用,Pensieve 还采取了优化措施。

  一方面,Pensieve 能够根据用户的活动模式动态调整索引构建的频率。也就是说,在用户使用电脑时,它会降低索引构建的优先级,以减少系统资源的占用。

  另一方面,Pensieve 在设计时考虑了电池使用寿命,通过监控电池状态,当电池电量低于某个阈值时,会自动减少资源消耗,以延长电池使用时间。

  第三,隐私安全如何保证。

  Pensieve 作者提出了 4 点措施来保证用户隐私,包括:

  1、代码是完全开源且易于理解的 Python 代码,允许任何人审查以确保没有后门或恶意软件。

  2、本地化数据存储。Pensieve 将所有数据存储在用户的本地设备上,而不是上传到云端服务器。

  3、易于卸载:Pensieve 提供了简单的卸载过程,用户可以轻松地从系统中移除。

  4、数据处理完全由用户控制。用户可以自由选择何时启动或停止记录,以及如何管理和查询自己的数据。

  另外,作为一个独立项目,Pensieve 所使用的机器学习模型(包括 VLM 和嵌入模型)都允许由用户选择。

  这就上手安装试试

  概括而言,使用 Pensieve 大致包括以下几个步骤:

  • 安装 Pensieve

  • 初始化 pensieve 配置文件和 sqlite 数据库

  • 使用两行命令启动服务

  • 打开浏览器并访问 Web 界面

  BTW,Pensieve 作者也贴心奉上了“食用指南”,简单概括如下:

  1、选择适当的嵌入模型

  由于 Pensieve 使用嵌入模型提取语义信息并构建向量索引,故选择合适的嵌入模型至关重要。

  根据用户习惯的语言,作者提供了中英两种模型。

  2、使用 Ollama 进行视觉搜索

  默认情况下,Pensieve 仅启用 OCR 插件从截图提取文本并构建索引。然而,这种方法极大限制了没有文本的图像的搜索效果。

  对此,我们需要一个与 OpenAI API 兼容的多模态图像理解服务,刚好 Ollama 可以胜任。

  需要提醒的是,在启动 VLM 功能之前,对硬件有一定要求:

  • 推荐配置:至少 8GB VRAM 的 NVIDIA 显卡或搭载M系列芯片的 Mac;

  • CPU 模式不推荐,因为它会导致系统严重卡顿;

  3、全文索引

  由于 Pensieve 默认情况下并非所有截图都会立即索引,因此,需要以下命令行,才能实现全文索引功能。

  更多安装细节可参见原项目库,地址也给大家放上了~

  GitHub:

  https://github.com/arkohut/pensieve?tab=readme-ov-file