DeepWiki:GitHub 源碼閱讀神器

DeepWiki[1] :基於 GitHub Repo 源代碼生成最新版可對話式文檔,由 Devin[2] 驅動。

如果只看以上介紹,會雲裏霧裏的。下面我們先來聊聊相關背景,你就知道 DeepWiki 價值所在了。

背景

Devin AI 是由 Cognition Labs[3] 開發的自主人工智能助手工具,標榜爲 “AI 軟件開發者”。曾號稱全球首個全自動 AI 程序員,因執行成本高導致訂閱價格也極高($500 / 月),後來就淡出人們視野了。目前更主流的開發形式是 IDE + MCP(如 Cursor、VSCode、Windsurf 等),半自動化的工具鏈調用讓控制更精準,結果也變得更加可靠。

Devin 這次帶來的 DeepWiki 確實是閱讀 GitHub 項目的好幫手,在正式開始介紹 DeepWiki 前,我們先來了解一下目前閱讀開源項目的痛點:

在源碼閱讀方面,其實 GitHub 本身就做了許多改進,如樹狀目錄,函數依賴圖譜等。

隨着 GitHub Copilot 的升級,也被集成進 GitHub,通過交互式對話來進一步輔助源碼閱讀。點擊具體代碼行號或頂部固定按鈕喚醒 AI 對話,可提問項目相關的任何問題。

但以上這些 GitHub 提供的能力遠遠不夠,並不能幫助我們快速建立項目宏觀層面的認知(系統架構圖、依賴圖等)。

DeepWiki 簡介

關於 DeepWiki 的詳細信息是由以下推文揭露的,我對其進行了梳理。

Cognition Labs 打造了 DeepWiki,一個免費、可對話的 GitHub 倉庫百科全書,致力於讓每一個開發者都能輕鬆訪問最新、結構化的項目文檔。DeepWiki 由 Devin 技術驅動,專爲開源項目免費開放,無需註冊即可使用。只需將任何 GitHub 倉庫鏈接中的 github 替換爲 deepwiki,即可直接訪問對應的 DeepWiki 頁面。如:https://deepwiki.com/<user>/<repo>

據 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 的很好補充。生成多維度的系統架構圖、提供交互式對話這些都可以幫你快速建立起一個項目的框架感,因此它也絕對稱得上 “源碼閱讀神器”。

References

[1]

DeepWiki:https://deepwiki.com

[2]

Devin:https://devin.ai

[3]

Cognition Labs:https://cognition.ai

[4]

LangChain:https://github.com/langchain-ai

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/K5Fw2os5V5Bk-00pgSo4cQ