譯者 | 陳峻
審校 | 重樓
你是否想象過這樣的場景:自己剛剛閱讀了一篇介紹頂尖算法的精彩研究論文,但需要花費數(shù)周的時間在無聊編程開發(fā)上,才能將其實現(xiàn)。或者你可能已經(jīng)想到了一個出色的 Web 應(yīng)用,卻苦于沒有編寫其所需的前端代碼的技能。你一定想有一個平臺來自動完成此類任務(wù)。DeepCode 便是這樣的平臺。它并非日常編程的輔助工具,而是一個從零開始為你創(chuàng)建項目的開源AI平臺。
什么是 DeepCode?
由香港大學(xué)數(shù)據(jù)智能實驗室構(gòu)建的DeepCode,是一個功能齊全的多智能體系統(tǒng)。用戶無需編寫任何代碼即可通過輸入學(xué)術(shù)論文,以獲得程序代碼的輸出;或者用簡單的英語表達(dá),創(chuàng)建漂亮的 Web 界面,進(jìn)而讓其根據(jù)極簡的描述來構(gòu)建后端代碼片段。
從本質(zhì)上講,DeepCode 是一個擁有了由“高級開發(fā)人員+研究科學(xué)家+系統(tǒng)架構(gòu)師”組成的AI 開發(fā)團隊的智能平臺。該系統(tǒng)使用多個專業(yè)的AI智能體,通過協(xié)同工作,來理解傾聽用戶的需求,進(jìn)而生成完整的工作代碼。

來源:DeepCode(https://github.com/HKUDS/DeepCode)
此外,DeepCode 的另一優(yōu)勢是多模態(tài)結(jié)構(gòu)。無論你“喂”給它學(xué)術(shù)著作、自然語言描述、還是URL,它都能予以解析和解釋,并生成相應(yīng)的代碼。例如,它可以并行調(diào)用如下三大類用例的處理任務(wù):
- Paper2Code:將研究論文和算法轉(zhuǎn)化為可落地的實現(xiàn)
- Text2Web:從文本描述構(gòu)建前端 Web 應(yīng)用
- Text2Backend:根據(jù)需求創(chuàng)建服務(wù)器端應(yīng)用和 API
DeepCode不但完全開源,而且同時具有 CLI 和 Web 界面,因此用戶可以可視化或命令行界面兩種方式來運行。下面我們來討論這三個用例的主要特點:
1. Paper2Code:從研究到現(xiàn)實
Paper2Code 通過先進(jìn)的文檔解析,實現(xiàn)了從學(xué)術(shù)文檔中推導(dǎo)出算法邏輯和數(shù)學(xué)模型。該系統(tǒng)的特別之處在于:它不會立即編寫代碼的組合片段,而是通過逐步學(xué)習(xí)概念,進(jìn)而創(chuàng)建具有相同計算復(fù)雜性特征的優(yōu)化實現(xiàn)。其具體能力體現(xiàn)在:
- 能夠處理包含復(fù)雜數(shù)學(xué)表示的多模態(tài)文檔
- 保持原始算法的效率和正確性
- 按照最佳實踐適當(dāng)?shù)厣蓴?shù)據(jù)結(jié)構(gòu)
- 生成適當(dāng)?shù)臏y試套件,以驗證實現(xiàn)是否充分
2. Text2Web:從簡單的英語到漂亮的界面
構(gòu)建整個網(wǎng)站可能既耗時又耗力,尤其是 Web 項目的前端。而 DeepCode 的 Text2Web 解決方案可以通過簡單的英語描述,來構(gòu)建 Web 界面,進(jìn)而協(xié)助消除了前端開發(fā)的障礙。該系統(tǒng)不但了解現(xiàn)代化 Web 開發(fā)的模式,而且可以通過以下示例來實現(xiàn)功能接口與響應(yīng):
- HTML、CSS 和 JavaScript 中的響應(yīng)式設(shè)計
- 交互埋點和用戶體驗流
- 根據(jù)時尚設(shè)計,呈現(xiàn)最佳視覺實踐
此外,它不僅能生成靜態(tài)模型,而且提供可以部署的工作交互式 Web 應(yīng)用。
3. Text2Backend:使服務(wù)器端變得簡單
后端開發(fā)往往需要在考慮架構(gòu)、數(shù)據(jù)庫、API 和可擴展性等方面做出諸多決策。DeepCode 的 Text2Backend 卻能夠?qū)⒛憔帉懙母呒壭枨螅D(zhuǎn)換為完整的服務(wù)器端解決方案。目前,該系統(tǒng)擅長的方面包括:
- 設(shè)計可擴展的架構(gòu)模式
- 設(shè)置數(shù)據(jù)庫的各種模式和關(guān)系
- 創(chuàng)建具有最佳錯誤處理實踐的 RESTful API
- 實現(xiàn)身份驗證和安全性
- 生成對應(yīng)的文檔

Source: Allaboutartificial(https://allaboutartificial.com/deepcode-multi-agent-platform/)
DeepCode的多智能體架構(gòu)
DeepCode平臺由七個不同職能的智能體組成:
1. 中央編排智能體或稱項目管理:該智能體負(fù)責(zé)整個項目的協(xié)調(diào)。它會就項目工作流的執(zhí)行做出高級決策,并根據(jù)項目的復(fù)雜性、及其組件任務(wù),按需分配項目資源。
2. 意圖理解智能體:該智能體的任務(wù)是對用戶的需求進(jìn)行深入的語義分析。它非常善于解決晦澀的人類交流,并將其轉(zhuǎn)換為清晰可執(zhí)行的開發(fā)規(guī)范。
3. 文檔解析智能體:該智能體專門處理技術(shù)文件和研究論文。它可以解析學(xué)術(shù)論文,提取其中各種算法和方法,以定義實施的規(guī)范。
4. 代碼規(guī)劃智能體:該智能體致力于技術(shù)棧的架構(gòu)設(shè)計和優(yōu)化。它在代碼中維護(hù)著編程標(biāo)準(zhǔn),并可以通過自動選擇數(shù)字化設(shè)計模式,來開發(fā)用于 PML 實現(xiàn)的模塊化結(jié)構(gòu)。
5. 挖掘代碼引用智能體:該智能體旨在使用智能搜索算法,查找各種兼容的存儲庫和框架。同時,它能夠分析代碼庫以確定組織級別的兼容性,進(jìn)而根據(jù)統(tǒng)計指標(biāo)提供建議。
6. 代碼索引智能體:該智能體能夠創(chuàng)建其發(fā)現(xiàn)的代碼庫的綜合知識圖譜,并維護(hù)代碼庫中各個組件之間的語義鏈接,以保留相關(guān)技術(shù)規(guī)范的表示,從而提供智能的檢索能力。
7. 代碼生成智能體:為了將所有已發(fā)現(xiàn)的內(nèi)容落實到完整的過程代碼中,該智能體采用組件功能規(guī)范,來創(chuàng)建用于實現(xiàn)的代碼文件,并組裝整體實現(xiàn)組件,以創(chuàng)建相關(guān)的測試套件。

來源:DeepCode(https://github.com/HKUDS/DeepCode)
DeepCode 的核心技術(shù)
DeepCode 利用模型上下文協(xié)議 (MCP) 作為連接工具和服務(wù)的標(biāo)準(zhǔn)協(xié)議。其標(biāo)準(zhǔn)化允許各個 AI 智能體能夠可靠地與外部系統(tǒng)進(jìn)行通信,并通過接口來實現(xiàn)自動化。目前,DeepCode 具有多個不同職能的 MCP 服務(wù)器:
- Brave Search:用于實時信息檢索
- 文件系統(tǒng)操作:用于本地文件與目錄的訪問和導(dǎo)航
- GitHub:用于克隆存儲庫和訪問 GitHub 代碼
- 文檔處理:用于將 PDF 和 DOCX 文件導(dǎo)出為 Markdown
- 代碼執(zhí)行:用于測試和驗證 Python
此外,該系統(tǒng)還利用抽象語法樹 (AST,Abstract Syntax Tree) 分析來確定代碼的正確性,并執(zhí)行用于測試覆蓋率的屬性測試。這樣確保了系統(tǒng)生成的代碼不僅在語法上的正確性,而且在功能上也不會存在缺陷。
DeepCode 入門
你可以采用直接安裝和 API 密鑰配置兩種方法,來使用DeepCode。
第 1 步:直接安裝(推薦)
請使用以下命令來安裝對應(yīng)的套件包:
pip install deepcode-hku并使用以下方法來下載對應(yīng)的配置文件:
curl -O https://raw.githubusercontent.com/HKUDS/DeepCode/main/mcp_agent.config.yaml
curl -O https://raw.githubusercontent.com/HKUDS/DeepCode/main/mcp_agent.secrets.yaml第 2 步:API 密鑰配置
DeepCode 也可使用 API 密鑰來實現(xiàn)其 AI 與搜索功能。不過,你需要使用自己的值編輯mcp_agent.secrets.yaml,例如:
- 為 GPT 模型使用 OpenAI (api_key和 base_url)
- 為Claude 模型使用 Anthropic (api_key)
- 為網(wǎng)絡(luò)搜索使用 Brave Search(雖可選,但最好配置上)
上述配置不限于為最終端點提供各種官方的 API,你也可以配置為使用現(xiàn)有的、與 OpenAI 兼容的端點。完成配置后,你可以通過 Web 界面(建議初學(xué)者使用)或 CLI 界面來訪問DeepCode。其中,CLI 提供了更多的控制,非常適合 CI/CD 的集成。
使用 DeepCode 進(jìn)行項目演練
1.Paper2Code – 從研究到實現(xiàn)
輸入:請上傳機器學(xué)習(xí)類研究文章 (PDF格式)

流程:
- 數(shù)學(xué)方程和算法的自動解析
- 架構(gòu)規(guī)劃和代碼結(jié)構(gòu)設(shè)計
- 整體實現(xiàn)的生成和測試

輸出:生產(chǎn)Python代碼、單元測試、文檔
所需時間:10分鐘(而非手動的40多個小時)
2.Text2Web的深度代碼——從創(chuàng)意到Web應(yīng)用
輸入:“用交互式圖表和黑暗模式構(gòu)建一個營銷儀表板。”

流程:
- 需求分析和UI/UX規(guī)劃
- 響應(yīng)式和可訪問的實現(xiàn)
- 交互式功能和動畫

輸出:具有現(xiàn)代感的功能性web應(yīng)用
所需時間:5分鐘(而非傳統(tǒng)的幾天開發(fā)用時)
3.Text2Backend–對API的描述
輸入:“為帶有身份驗證的任務(wù)管理構(gòu)建REST API”

流程:
- 數(shù)據(jù)庫模式和API端點設(shè)計
- 實施安全和身份驗證
- Docker配置和部署

輸出:帶有文檔的企業(yè)級后端
所用時間:8 分鐘(而非數(shù)周的后端開發(fā)用時)
DeepCode的優(yōu)劣勢
優(yōu)勢 | 劣勢 |
節(jié)省時間:能夠?qū)?/span>數(shù)周的開發(fā)或40多小時的研究時間減少到幾分鐘。 | API 依賴性:持續(xù)成本投入、中斷風(fēng)險、數(shù)據(jù)泄露和互聯(lián)網(wǎng)依賴。 |
高質(zhì)量的一致性:生成具有錯誤處理、配套文檔和測試的結(jié)構(gòu)化可讀代碼。 | 學(xué)習(xí)曲線:設(shè)置、調(diào)試多智能體的各種工作流可能會讓新手不知所措。 |
民主化開發(fā):為非技術(shù)研究人員提供支持,幫助初級人員學(xué)習(xí),讓小團隊能構(gòu)建復(fù)雜的系統(tǒng)。 | 生成式代碼限制:需要定制與審查極端情況和按需進(jìn)行性能調(diào)整。 |
多域智能:可借鑒各項研究、行業(yè)最佳實踐、支持多種語言和優(yōu)化技術(shù)。 | 上下文和規(guī)模限制:對超大項目、論文或領(lǐng)域深度研究有token限制。 |
開源優(yōu)勢:提供社區(qū)驅(qū)動的功能、路線圖、模板、教程和可擴展性。 | 外部服務(wù)依賴:可能有更多的故障點、版本不匹配、延遲和配置開銷。 |
小結(jié)
DeepCode 是邁向自動化代碼生成方向的一大步。它不僅僅是一個AI編程助手,也為從研究到部署的整個軟件開發(fā)生命周期提供了完備的生態(tài)系統(tǒng)。同時,它將 Paper2Code、Text2Web 和 Text2Backend 放在一個平臺上,使用問題解決式(problem-solving)的多智能體增強了AI系統(tǒng)協(xié)同,以及解決復(fù)雜問題的能力。
雖然DeepCode 能夠為人類開發(fā)者提供大量支持工具,但不太可能完全取代他們。AI生成代碼只是一個很好的開端,而人工監(jiān)督、調(diào)整、定制和相關(guān)領(lǐng)域知識對于創(chuàng)建生產(chǎn)系統(tǒng)也是至關(guān)重要。目前,具有巨大潛力的 DeepCode 雖然還很“年輕”,但是隨著新的 AI 模型的不斷改進(jìn)、多智能體架構(gòu)的完善,我們預(yù)計它在接下來的幾個版本中,會有功能上的更大飛躍。
譯者介紹
陳峻(Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項目實施經(jīng)驗,善于對內(nèi)外部資源與風(fēng)險實施管控,專注傳播網(wǎng)絡(luò)與信息安全知識與經(jīng)驗。
原文標(biāo)題:DeepCode: This FREE Agentic AI Coder is INSANE!,作者:Riya Bansal































