LangChain重磅升級(jí)!DeepAgents 0.2帶來(lái)可插拔后端,重新定義AI智能體開發(fā)
兩個(gè)月前,LangChain團(tuán)隊(duì)提出了"深度智能體"(Deep Agents)的概念,用來(lái)描述那些能夠執(zhí)行復(fù)雜、開放式任務(wù)并在更長(zhǎng)的時(shí)間范圍內(nèi)運(yùn)行的AI智能體。
他們認(rèn)為這類智能體需要四個(gè)關(guān)鍵要素:規(guī)劃工具、文件系統(tǒng)訪問(wèn)、子智能體,以及詳細(xì)的提示詞。

隨后,他們推出了deepagents這個(gè)Python包,內(nèi)置了所有這些基礎(chǔ)組件。開發(fā)者只需要提供自定義工具和提示詞,就能輕松構(gòu)建一個(gè)深度智能體。這個(gè)項(xiàng)目一經(jīng)推出就受到了廣泛關(guān)注和采用。
如今,LangChain團(tuán)隊(duì)發(fā)布了0.2版本,進(jìn)一步加碼投入這個(gè)項(xiàng)目。這次更新帶來(lái)了什么新功能?
在什么場(chǎng)景下應(yīng)該選擇deepagents而不是langchain或langgraph?
讓我們一起來(lái)看看。
可插拔后端:讓文件系統(tǒng)更靈活
0.2版本最重要的新功能是可插拔后端(Pluggable Backends)。在此之前,deepagents使用的"文件系統(tǒng)"實(shí)際上是一個(gè)"虛擬文件系統(tǒng)",它會(huì)利用LangGraph的狀態(tài)來(lái)存儲(chǔ)文件。
現(xiàn)在,全新的Backend抽象層允許你將任何存儲(chǔ)系統(tǒng)作為"文件系統(tǒng)"來(lái)使用。內(nèi)置的實(shí)現(xiàn)包括:
? LangGraph State - 原有的狀態(tài)存儲(chǔ)方式
? LangGraph Store - 支持跨線程持久化
? 本地文件系統(tǒng) - 直接使用真實(shí)的文件系統(tǒng)
更酷的是,deepagents還引入了"組合后端"(composite backend)的概念。
你可以設(shè)置一個(gè)基礎(chǔ)后端(比如本地文件系統(tǒng)),然后在特定的子目錄上映射其他后端。這個(gè)功能的一個(gè)典型應(yīng)用場(chǎng)景是長(zhǎng)期記憶存儲(chǔ)。
舉個(gè)例子:
你可以用本地文件系統(tǒng)作為基礎(chǔ)后端,但將所有的文件操作映射到/memories/目錄,讓它使用S3支持的"虛擬文件系統(tǒng)"。這樣,智能體可以把重要信息存儲(chǔ)在那里,即使你的電腦關(guān)閉了,這些記憶也能永久保存。
你甚至可以基于任何數(shù)據(jù)庫(kù)或數(shù)據(jù)存儲(chǔ)創(chuàng)建自己的后端,打造專屬的"虛擬文件系統(tǒng)"。如果需要,還可以繼承現(xiàn)有的后端,添加文件寫入權(quán)限控制、格式檢查等安全護(hù)欄功能。
0.2版本的其他改進(jìn)
除了可插拔后端,0.2版本還加入了幾個(gè)實(shí)用的優(yōu)化:
? 大工具結(jié)果自動(dòng)清理 - 當(dāng)工具返回的結(jié)果超過(guò)一定token限制時(shí),自動(dòng)將其轉(zhuǎn)儲(chǔ)到文件系統(tǒng)中,避免內(nèi)存占用過(guò)大
? 對(duì)話歷史自動(dòng)摘要 - 當(dāng)token使用量過(guò)大時(shí),自動(dòng)壓縮舊的對(duì)話歷史,保持上下文管理的效率
? 懸空工具調(diào)用修復(fù) - 當(dāng)工具調(diào)用在執(zhí)行前被中斷或取消時(shí),自動(dòng)修復(fù)消息歷史記錄,避免狀態(tài)不一致
什么時(shí)候用deepagents,什么時(shí)候用LangChain或LangGraph?
現(xiàn)在LangChain生態(tài)系統(tǒng)已經(jīng)有了三個(gè)開源庫(kù),但每個(gè)庫(kù)都服務(wù)于不同的目的。
為了更清晰地區(qū)分它們,團(tuán)隊(duì)提出了這樣的定位:
- deepagents是"智能體框架"(agent harness)
- langchain是"智能體工具包"(agent framework)
- 而langgraph則是"智能體運(yùn)行時(shí)"(agent runtime)。
這三個(gè)庫(kù)是相互構(gòu)建的:deepagents建立在langchain的智能體抽象之上,而langchain又建立在langgraph的智能體運(yùn)行時(shí)之上。

具體來(lái)說(shuō):
LangGraph適合那些想要構(gòu)建工作流和智能體組合應(yīng)用的場(chǎng)景。如果你需要靈活的控制流程和狀態(tài)管理,LangGraph是很好的選擇。
LangChain適合想要使用核心智能體循環(huán),但不想要任何內(nèi)置功能,希望從頭開始構(gòu)建所有提示詞和工具的開發(fā)者。它給了你最大的控制權(quán)和靈活性。
DeepAgents最適合構(gòu)建更自主、長(zhǎng)期運(yùn)行的智能體,特別是當(dāng)你想要利用內(nèi)置的規(guī)劃工具、文件系統(tǒng)等高級(jí)功能時(shí)。它幫你處理了很多底層復(fù)雜性,讓你專注于智能體的核心邏輯。
隨著AI智能體應(yīng)用越來(lái)越復(fù)雜,這種分層架構(gòu)的設(shè)計(jì)理念正在幫助開發(fā)者根據(jù)具體需求選擇最合適的工具。

0.2版本的發(fā)布,特別是可插拔后端的引入,讓deepagents在長(zhǎng)期記憶和狀態(tài)持久化方面變得更加強(qiáng)大和靈活。
對(duì)于正在探索AI智能體開發(fā)的開發(fā)者來(lái)說(shuō),這無(wú)疑是一個(gè)值得關(guān)注的更新。






























