raphaelsty/knowledge

Online library for AI

它是什么

Knowledge 是一个个人图书馆网站,收集AI、科学和软件领域有影响力的人物觉得有趣的内容。这是一个包含450多位贡献者的“有观点的阅读列表”——包括Geoffrey Hinton、Yoshua Bengio、Yann LeCun和Andrej Karpathy等研究人员,以及Sam Altman和François Chollet等建设者。标语是:无广告,无算法,只有他们读的内容。

核心理念

每位贡献者都有自己的页面,看起来像一个精选书架:他们的推文、GitHub星标、他们写的论文、他们出现的视频。你浏览某人的页面就像翻阅朋友的书签文件夹。点击任何卡片上的心形图标,文档就会被保存到你的个人图书馆——可索引、可搜索。上周的演讲这周仍然值得看;两个月前的论文仍然能教给你想学的东西。

搜索

输入查询,ColBERT(一种语义搜索模型)会搜索每份文档的实际内容,而不仅仅是标题。它根据词语匹配程度对结果进行排序。你可以搜索一个图书馆、同时搜索多个图书馆,或者搜索整个约440,000篇文档的共享语料库。

API / MCP服务器

该网站在/mcp暴露了一个MCP服务器(一种让AI代理与服务交互的方式),包含十五个工具:

  • 搜索与发现(7个工具):查询单个图书馆、跨图书馆搜索、按描述查找图书馆、查找相似文档、获取最新文档、获取时间顺序信息流、查找图书馆之间共享的文档。
  • 目录(5个工具):列出所有图书馆、列出图书馆的来源、列出标签、获取一个图书馆的元数据、按URL获取一篇文档。
  • 已认证(3个工具,需要你在个人资料页面生成的持有者令牌):查看你保存的文档、查看你的活动时间线、保存文档。

你可以将这个MCP服务器接入Claude、Cursor或任何支持MCP的代理。

工作原理

一个流水线全天运行,持续循环遍历每个人的来源:GitHub星标、X帖子、Hacker News提交、arXiv论文、Hugging Face点赞、Reddit、Stack Overflow、维基百科引用、YouTube频道、Zotero图书馆,以及任何你可以通过RSS或站点地图指向的博客。每篇文档都会被清理、打标签并写入Postgres。一个单独的索引守护进程会拾取新行并用ColBERT嵌入它们,这样搜索就能保持最新,而不会阻塞主流水线。

当你输入查询时,API会从本地磁盘上的next-plaid索引提供排序结果。然后你的浏览器会使用在WebAssembly(WASM)中运行的未量化ColBERT进行第二遍处理,在你的设备上重新排序结果——项目将其描述为“一个原创技巧”。

技术栈

  • sources/ — Python(抓取器和编排器)
  • api/ — Rust(搜索、摄取、认证、MCP)
  • web/ — 纯HTML和JavaScript(无框架)

API是一个单一的Rust二进制文件。整个系统运行在赫尔辛基的一台Hetzner CX33 VPS上:4个vCPU、8 GB内存,约每月15美元。没有CDN,没有托管Postgres,没有Cloudflare代理。3.8 GB的ColBERT索引位于本地磁盘上。

该项目四年前始于cherche后端,现在运行在next-plaid和pylate-rs上,这是ColGREP(一个语义代码搜索工具)背后的同一套搜索栈。

托管与许可证

  • 免费使用和阅读。
  • 自行托管:克隆仓库,设置五个环境变量,将域名指向服务器,推送到main分支。
  • 根据PolyForm Noncommercial 1.0.0许可——免费使用、修改和自行托管用于非商业目的。商业使用请联系作者。

为什么有用

宣传语:大多数平台通过无限信息流、广告和操纵性的推荐算法争夺注意力。Knowledge反其道而行之——小而有限的图书馆,你可以随时回来。用它跨专家研究一个主题:一次搜索450多个图书馆的“speculative decoding”,获得精选上下文,而不是随机的Google噪音。浏览Karpathy的GitHub星标、LeCun的论文、Hinton的访谈——全部集中在一个地方。正如作者所说:“停止无休止地刷X。这个网站把某人一年的推文压缩成一个静态页面,你可以读一次然后关闭。”

相关

  • 项目
  • 项目
  • 项目
  • 项目