Anthropic發(fā)布的AI Agent設(shè)計(jì)哲學(xué)與經(jīng)典設(shè)計(jì)模式
最近在學(xué)習(xí)AI Agent的設(shè)計(jì)模式時(shí),發(fā)現(xiàn)了Anthropic發(fā)布的一篇好文《Building Effective agents》,仔細(xì)學(xué)習(xí)了下,值得跟大家分享。
在AI代理開(kāi)發(fā)領(lǐng)域,Anthropic最新發(fā)布的研究報(bào)告為行業(yè)指明了方向。經(jīng)過(guò)與數(shù)十個(gè)跨行業(yè)團(tuán)隊(duì)的深度合作,Anthropic發(fā)現(xiàn)了一個(gè)令人意外的真相:最成功的LLM代理實(shí)現(xiàn)都采用簡(jiǎn)單、可組合的模式,而非復(fù)雜的框架。
這一發(fā)現(xiàn)顛覆了許多開(kāi)發(fā)者的認(rèn)知。在追求技術(shù)復(fù)雜性的浪潮中,簡(jiǎn)單性反而成為了制勝的關(guān)鍵。
核心理念:簡(jiǎn)單勝過(guò)復(fù)雜
Anthropic在報(bào)告開(kāi)篇就強(qiáng)調(diào)了這一核心觀點(diǎn)。經(jīng)過(guò)大量實(shí)踐驗(yàn)證,研究團(tuán)隊(duì)發(fā)現(xiàn),那些依賴復(fù)雜框架的項(xiàng)目往往面臨維護(hù)困難、調(diào)試復(fù)雜、性能不穩(wěn)定等問(wèn)題。相反,采用簡(jiǎn)單實(shí)現(xiàn)方式的項(xiàng)目不僅開(kāi)發(fā)效率更高,而且在生產(chǎn)環(huán)境中表現(xiàn)更加穩(wěn)定可靠。
"我們與數(shù)十個(gè)構(gòu)建LLM代理的團(tuán)隊(duì)合作過(guò)。一致的發(fā)現(xiàn)是,最成功的實(shí)現(xiàn)使用簡(jiǎn)單、可組合的模式,而不是復(fù)雜的框架。"
工作流與代理的本質(zhì)區(qū)別
Anthropic對(duì)代理系統(tǒng)進(jìn)行了清晰的分類(lèi),將所有變體歸類(lèi)為"代理系統(tǒng)",但在架構(gòu)上區(qū)分了工作流和代理兩種重要類(lèi)型:
? 工作流系統(tǒng) - 通過(guò)預(yù)定義的代碼路徑來(lái)編排LLM和工具的協(xié)作
? 代理系統(tǒng) - LLM動(dòng)態(tài)指導(dǎo)自己的流程和工具使用,保持對(duì)任務(wù)完成方式的控制權(quán)
這種區(qū)分的關(guān)鍵在于動(dòng)態(tài)性與預(yù)定義性的差異。工作流適合流程相對(duì)固定的場(chǎng)景,而代理則更適合需要靈活應(yīng)對(duì)的復(fù)雜任務(wù)。
增強(qiáng)型LLM:現(xiàn)代代理的核心架構(gòu)
Anthropic提出了增強(qiáng)型LLM的概念,這是構(gòu)建現(xiàn)代AI代理的基礎(chǔ)架構(gòu):
增強(qiáng)型LLM = LLM + 檢索 + 工具 + 記憶
這個(gè)公式看似簡(jiǎn)單,但蘊(yùn)含著深刻的設(shè)計(jì)哲學(xué)。通過(guò)為這些外部依賴定義良好的接口,比如使用MCP(模型上下文協(xié)議),開(kāi)發(fā)者可以輕松地集成各種功能模塊。正如文章所建議的,我們也可以使用Spring AI這樣的框架來(lái)屏蔽具體實(shí)現(xiàn)的差異,讓開(kāi)發(fā)更加專(zhuān)注于業(yè)務(wù)邏輯。

五大工作流模式詳解
Anthropic總結(jié)了五種核心的工作流模式,每種都有其特定的應(yīng)用場(chǎng)景和技術(shù)實(shí)現(xiàn):
1. 提示鏈(Prompt Chaining)
提示鏈的核心思想是用延遲換取更高的準(zhǔn)確性,通過(guò)將復(fù)雜任務(wù)分解為多個(gè)簡(jiǎn)單的LLM調(diào)用來(lái)提升整體效果。

典型應(yīng)用場(chǎng)景包括:
? 生成營(yíng)銷(xiāo)文案,然后翻譯成不同語(yǔ)言
? 先寫(xiě)文檔大綱,檢查大綱是否符合標(biāo)準(zhǔn),再基于大綱寫(xiě)完整文檔
2. 路由(Routing)
路由模式通過(guò)智能分發(fā)來(lái)優(yōu)化處理效率。系統(tǒng)可以將不同類(lèi)型的客戶服務(wù)查詢(一般問(wèn)題、退款請(qǐng)求、技術(shù)支持)導(dǎo)向不同的下游流程、提示和工具。

更重要的是,路由還能實(shí)現(xiàn)成本與速度的智能優(yōu)化:將簡(jiǎn)單常見(jiàn)問(wèn)題導(dǎo)向Claude 3.5 Haiku這樣的輕量模型,將復(fù)雜罕見(jiàn)問(wèn)題導(dǎo)向Claude 3.5 Sonnet這樣的強(qiáng)大模型。
3. 并行化(Parallelization)

并行化模式包含兩種主要應(yīng)用:
分段處理:一個(gè)模型實(shí)例處理用戶查詢,另一個(gè)篩查不當(dāng)內(nèi)容。這種分工比讓同一個(gè)LLM同時(shí)處理防護(hù)和核心響應(yīng)效果更好。
投票機(jī)制:多個(gè)不同的提示審查代碼漏洞,或評(píng)估內(nèi)容是否不當(dāng),通過(guò)不同的投票閾值來(lái)平衡誤報(bào)和漏報(bào)。
4. 編排者-工作者(Orchestrator-Workers)
這種模式特別適合無(wú)法預(yù)測(cè)子任務(wù)需求的復(fù)雜任務(wù)。與并行化的關(guān)鍵區(qū)別在于其靈活性——子任務(wù)不是預(yù)定義的,而是由編排者根據(jù)具體輸入確定。

典型應(yīng)用場(chǎng)景:
? 需要對(duì)多個(gè)文件進(jìn)行復(fù)雜更改的編程產(chǎn)品
? 需要從多個(gè)來(lái)源收集和分析信息的搜索任務(wù)
5. 評(píng)估者-優(yōu)化器(Evaluator-Optimizer)
這實(shí)際上是反思模式的實(shí)現(xiàn)。當(dāng)有明確的評(píng)估標(biāo)準(zhǔn),且迭代改進(jìn)能提供可衡量?jī)r(jià)值時(shí),這種模式特別有效。

應(yīng)用實(shí)例包括文學(xué)翻譯中的細(xì)節(jié)優(yōu)化,以及需要多輪搜索分析的復(fù)雜搜索任務(wù)。
真正的代理:動(dòng)態(tài)決策的藝術(shù)
當(dāng)工作流模式無(wú)法滿足需求時(shí),就需要真正的代理系統(tǒng)。代理的核心特征是能夠動(dòng)態(tài)決策,在執(zhí)行過(guò)程中從環(huán)境獲得"真實(shí)反饋"來(lái)評(píng)估進(jìn)展。
在執(zhí)行過(guò)程中,代理必須從環(huán)境中獲得"真實(shí)情況"(如工具調(diào)用結(jié)果或代碼執(zhí)行結(jié)果)來(lái)評(píng)估其進(jìn)展,這一點(diǎn)至關(guān)重要。
因此,清晰周到地設(shè)計(jì)工具集及其文檔變得極其重要。Anthropic在附錄中專(zhuān)門(mén)展開(kāi)了工具開(kāi)發(fā)的最佳實(shí)踐。
代理適用于開(kāi)放性問(wèn)題,這些問(wèn)題難以或無(wú)法預(yù)測(cè)所需步驟數(shù)量,也無(wú)法硬編碼固定路徑。Anthropic自己的實(shí)現(xiàn)包括:
? 解決SWE-bench任務(wù)的編程代理,涉及基于任務(wù)描述對(duì)多個(gè)文件的編輯
? "計(jì)算機(jī)使用"參考實(shí)現(xiàn),Claude使用計(jì)算機(jī)完成任務(wù)
模式組合與定制化
這些構(gòu)建塊并非規(guī)定性的,而是開(kāi)發(fā)者可以根據(jù)不同用例進(jìn)行塑造和組合的通用模式。成功的關(guān)鍵在于衡量性能并不斷迭代實(shí)現(xiàn)。
重申:只有當(dāng)復(fù)雜性能明顯改善結(jié)果時(shí),你才應(yīng)該考慮增加復(fù)雜性。
成功的三大核心原則
LLM領(lǐng)域的成功不在于構(gòu)建最復(fù)雜的系統(tǒng),而在于構(gòu)建適合需求的正確系統(tǒng)。Anthropic建議從簡(jiǎn)單提示開(kāi)始,通過(guò)全面評(píng)估進(jìn)行優(yōu)化,只有在簡(jiǎn)單解決方案不足時(shí)才添加多步驟代理系統(tǒng)。
在實(shí)現(xiàn)代理時(shí),應(yīng)遵循三個(gè)核心原則:
? 保持代理設(shè)計(jì)的簡(jiǎn)單性
? 通過(guò)明確顯示代理的規(guī)劃步驟來(lái)優(yōu)先考慮透明度
? 通過(guò)全面的工具文檔和測(cè)試精心設(shè)計(jì)代理-計(jì)算機(jī)接口(ACI)
工具設(shè)計(jì)的重要性
在附錄中,Anthropic特別強(qiáng)調(diào)了工具設(shè)計(jì)的重要性。
一個(gè)經(jīng)驗(yàn)法則是:投入到人機(jī)界面(HCI)的努力有多大,就應(yīng)該計(jì)劃在創(chuàng)建良好的代理-計(jì)算機(jī)接口(ACI)上投入同樣的努力。
在構(gòu)建SWE-bench代理時(shí),Anthropic實(shí)際上花在優(yōu)化工具上的時(shí)間比整體提示更多。例如,他們發(fā)現(xiàn)模型在代理移出根目錄后使用相對(duì)文件路徑的工具時(shí)會(huì)出錯(cuò)。為了解決這個(gè)問(wèn)題,他們將工具改為始終需要絕對(duì)文件路徑——結(jié)果發(fā)現(xiàn)模型完美地使用了這種方法。
框架可以幫助快速入門(mén),但在轉(zhuǎn)向生產(chǎn)環(huán)境時(shí),不要猶豫減少抽象層并使用基本組件構(gòu)建。遵循這些原則,你可以創(chuàng)建不僅強(qiáng)大,而且可靠、可維護(hù)、受用戶信任的代理。
這份來(lái)自Anthropic的指南為AI代理開(kāi)發(fā)指明了清晰的方向:簡(jiǎn)單性、透明性和精心設(shè)計(jì)的接口是構(gòu)建成功AI代理的三大支柱。在追求技術(shù)創(chuàng)新的同時(shí),回歸本質(zhì)、注重實(shí)用性,或許才是通往AI代理成功應(yīng)用的正確道路。
參考原文:https://www.anthropic.com/research/building-effective-agents































