DeepWiki[1] :基于 GitHub Repo 源代码生成最新版可对话式文档,由 Devin[2] 驱动。
- 开源项目免费使用,无需注册。
- 私有项目中使用需在
http://devin.ai
注册账号。 - 直接访问
https://deepwiki.com
,或将 GitHub 链接中的 github 替换为 deepwiki。
如果只看以上介绍,会云里雾里的。下面我们先来聊聊相关背景,你就知道 DeepWiki 价值所在了。
背景
Devin AI 是由 Cognition Labs[3] 开发的自主人工智能助手工具,标榜为 “AI 软件开发者”。曾号称全球首个全自动 AI 程序员,因执行成本高导致订阅价格也极高($500/月),后来就淡出人们视野了。目前更主流的开发形式是 IDE + MCP
(如 Cursor、VSCode、Windsurf 等),半自动化的工具链调用让控制更精准,结果也变得更加可靠。
Devin 这次带来的 DeepWiki 确实是阅读 GitHub 项目的好帮手,在正式开始介绍 DeepWiki 前,我们先来了解一下目前阅读开源项目的痛点:
- GitHub 主流开源项目介绍以英文 README.md 为主,支持多语言介绍的并不多,对于非母语的人来说,存在一定阅读障碍。
- 很多仓库可能连比较像样的 README 介绍都没,更别提专门的文档网站或 Blog 了。于开发者而言是灾难性的,需要自行查看源代码或在 issues 中搜寻一些描述。
- 如果仓库文件超多,上百个文件,或大几十万行代码,想要通过阅读源码来建立项目宏观认知会变得特别难。
- 阅读一个仓库的源代码或许不难,但面对 GitHub 这种世界级的开发者聚集地,每天都会诞生大量开源项目,纯靠人力阅读总结会被累死(面对海量代码,人会变得麻木)。
- 在项目文档中不会有功能与源码之间的映射关系说明,但这又是借鉴参考项目时的一个重点需求。
- ...
在源码阅读方面,其实 GitHub 本身就做了许多改进,如树状目录,函数依赖图谱等。
随着 GitHub Copilot 的升级,也被集成进 GitHub,通过交互式对话来进一步辅助源码阅读。点击具体代码行号或顶部固定按钮唤醒 AI 对话,可提问项目相关的任何问题。
但以上这些 GitHub 提供的能力远远不够,并不能帮助我们快速建立项目宏观层面的认知(系统架构图、依赖图等)。
DeepWiki 简介
关于 DeepWiki 的详细信息是由以下推文揭露的,我对其进行了梳理。
Cognition Labs 打造了 DeepWiki,一个免费、可对话的 GitHub 仓库百科全书,致力于让每一个开发者都能轻松访问最新、结构化的项目文档。DeepWiki 由 Devin 技术驱动,专为开源项目免费开放,无需注册即可使用。只需将任何 GitHub 仓库链接中的 github
替换为
deepwiki
,即可直接访问对应的 DeepWiki 页面。如:https://deepwiki.com//
据 Cognition Labs 成员介绍,DeepWiki 在构建过程中,让大语言模型(LLM)全面扫描了完整的代码库。到目前为止,它已经索引了超过 30,000 个热门 GitHub 仓库,处理了超过 40 亿行代码,处理总量超过 1000 亿 tokens,仅索引过程的计算开销就超过了 30 万美元。索引一个仓库的平均成本大约为 12 美元,但团队还是决定让所有开源项目免费使用,无需任何注册门槛。
从系统设计来看,模型在局部理解代码(如函数、模块)方面表现非常出色,但真正的挑战在于理解整个代码库的全局结构。DeepWiki 针对这一难题,采用了分层方法:先将代码库划分为一套套高层次系统(high-level systems),再为每一个系统生成对应的 Wiki 页面,帮助用户在整体上把握项目架构。
它还利用了一个非常有趣的信号——提交历史(commit history)。通过分析哪些文件经常被一起修改,可以构建出文件之间的关联图(graph),从而揭示项目内部许多潜在且重要的结构模式。这一方法进一步增强了 DeepWiki 对代码库内部逻辑关系的理解与呈现。
如果找不到你需要的仓库,团队也很乐意帮你索引任何公开 GitHub 仓库。对于私有仓库,只需注册 Devin 账号即可使用相同功能。此外,DeepWiki 支持分享 Wiki 页面和智能解答链接,方便团队成员始终保持信息同步。
案例分享
我简单看了两个项目,发现确实有趣。如基于 VSCode 源码生成的文档,可根据代码行号生成系统架构图(这在 GitHub 仓库里是完全没有的)。
比较精彩的是发现它收录了我的 Noi 项目,该项目我并没有上传核心源码,仅放了插件和部分配置代码。它也能根据 README 和插件代码推测出 Noi 的架构,不但准确而且是多维度的。访问链接:https://deepwiki.com/lencx/Noi
在进一步测试中,DeepWiki 还可以使用中文来对话。它会通过源码检索来进行功能讲解,甚至是某个具体功能实现,但暂时无法检索 issues 或 pr。对话支持 Deep Research
。开启后,检索会慢很多,不开时会快速扫描文件给出结果。
结语
目前看来,在源码阅读上,DeepWiki 算是 GitHub Copilot 的很好补充。生成多维度的系统架构图、提供交互式对话这些都可以帮你快速建立起一个项目的框架感,因此它也绝对称得上“源码阅读神器”。
题外话
网上看到一个关于 LangChain[4] 的段子,很有意思。
LangChain 毁了我的婚姻
一开始我是多么天真啊。我不过想捣鼓个小玩意儿而已。“试试 LangChain,”网上劝诱道,“这玩意儿能轻松帮你串联各种模型、数据,搭出复杂 AI 应用。” 我寻思,也行啊。我老婆甚至还鼓励过我:“你不是一直想折腾点 AI 啥的吗?”殊不知,那竟是她最后一次对我展露的鼓励微笑。
我选择从头开始搭,不用模板,不看教程,发誓要亲手串联每个 LLM、每个向量数据库、每个检索器。显然,我对自己下手可狠,也没放过身边那些爱我的人。几小时变成几天,我像个瘾君子一样死守着 Cursor,口中念念有词:“AgentExecutor... 我的宝贝 AgentExecutor…” 老婆好心端来咖啡,我居然像只护崽的猫一样嘶声叫道:“别打扰我神圣的提示工程大业!”
那晚,她问我要不要一起看电影。我豪爽地答道:“当然,看,肯定看!等我修完这个模型幻觉问题先。” 这句话已经是三天前了。她一个人啃完了《指环王》三部曲,而我,却盯着终端里花花绿绿的 debug 输出狂喜不止,感受着一种说不清道不明的顿悟——或许只是疯了吧。
她仍想拯救一下我们的关系。“出去走走吧,”她温柔地说,“聊聊我们俩的未来。”我头也不抬:“不行啊,RAG 系统检索结果不够准,我必须赶紧优化一下提示链。” 她幽幽地问:“你的心还能检索到吗?”
接下来便是无尽的依赖更新灾难。我随手执行了个 pip install -U langchain
,然后砰!一切都炸裂了。我花了整整八小时解决版本兼容问题,一边狂翻文档,一边在 GitHub 怒开 issue。她走进房间,看着被几十个浏览器标签和终端窗口环绕的我,声音轻得像是怕吓坏了某种生物:“这就是……现在的你了吗?”
那晚,她终于离开了,说她要“找个不会把聊天模型当成灵魂伴侣的人”。上周她寄来了离婚协议书。我刚要落笔签字,AI 编程助手居然像知音一样与我心灵相通,我还没开口,它便乖巧地把代码补全了。“谁还需要什么人类的情感?” 我心想,看着 Cursor 完美自动补全整个法律文件分析器,“尤其是当你的 AI 比老婆更懂你的时候。”
References
[1]DeepWiki:https://deepwiki.com
[2]Devin:https://devin.ai
[3]Cognition Labs:https://cognition.ai
[4]LangChain:https://github.com/langchain-ai