根據(jù)谷歌的官方文檔: A2A 協(xié)議促進(jìn)了“客戶端”和“遠(yuǎn)程” AI Agent 之間的通信。簡(jiǎn)單來(lái)說,“客戶端” AI Agent 創(chuàng)建任務(wù)并與“遠(yuǎn)程” AI Agent 溝通,期望執(zhí)行某些工作或返回?cái)?shù)據(jù)。

第三、A2A 架構(gòu)設(shè)計(jì)

? ? 1、能力發(fā)現(xiàn):所有實(shí)現(xiàn) A2A 的 AI Agent 都通過“Agent Card”公開其能力目錄。這有助于其他 AI Agent 發(fā)現(xiàn)給定 AI Agent 實(shí)現(xiàn)的潛在有用功能。? ?

2、任務(wù)管理:通信協(xié)議,時(shí)代短期和長(zhǎng)期任務(wù)變得更容易。它幫助通信中的 AI Agent 保持同步,直到請(qǐng)求的任務(wù)完成并返回答案。這很重要,因?yàn)橛行?AI Agent 可能需要很長(zhǎng)時(shí)間來(lái)執(zhí)行工作,而且目前沒有統(tǒng)一標(biāo)準(zhǔn)如何等待這種情況發(fā)生。? ?

3、協(xié)作:AI Agent 可以相互發(fā)送消息以傳達(dá)上下文、回復(fù)、工件或用戶指令。? ?

4、用戶體驗(yàn)協(xié)商:這是一個(gè)很有趣的功能。它允許協(xié)商數(shù)據(jù)返回的格式,以符合用戶界面的期望(比如:圖像、視頻、文本等)。通過 A2A 公開的 AI Agent 的發(fā)現(xiàn)是一個(gè)重要話題。谷歌建議使用統(tǒng)一的位置來(lái)存儲(chǔ)組織的“Agent Card”。比如:

https://<DOMAIN>/<agreed-path>/agent.json

這并不意外,因?yàn)楣雀鑼⑻幱谧罴盐恢?,能夠索引全球所有可用?AI Agent,可能創(chuàng)建一個(gè)類似于當(dāng)前搜索引擎索引的全球 AI Agent 目錄。我喜歡 A2A 強(qiáng)調(diào)無(wú)需重新發(fā)明輪子,并且建立在現(xiàn)有標(biāo)準(zhǔn)之上:?

1、該協(xié)議建立在現(xiàn)有、流行的標(biāo)準(zhǔn)之上,包括:HTTP、SSE、JSON-RPC,這意味著它更容易與企業(yè)日常使用的現(xiàn)有 IT 堆棧集成。? ?

2、默認(rèn)安全?– A2A 旨在支持企業(yè)級(jí)身份驗(yàn)證和授權(quán),與 OpenAPI 的身份驗(yàn)證方案相當(dāng)。

MCP 架構(gòu)設(shè)計(jì)

MCP(模型上下文協(xié)議)是由 Anthropic 定義的一個(gè)開放協(xié)議,標(biāo)準(zhǔn)化應(yīng)用程序如何為大語(yǔ)言模型(LLM)提供上下文。更具體地說,它試圖標(biāo)準(zhǔn)化基于 LLM 的應(yīng)用程序與其他環(huán)境集成的協(xié)議。在 AI Agent 系統(tǒng)(Agentic Systems)中,上下文可以通過多種方式提供:

1、外部數(shù)據(jù):這是長(zhǎng)期記憶的一部分。

2、工具:系統(tǒng)與環(huán)境交互的能力。

3、動(dòng)態(tài)提示詞:可以作為系統(tǒng)提示詞(System Prompt)的一部分注入。

第一、為什么要標(biāo)準(zhǔn)化?

目前,AI Agent 應(yīng)用的開發(fā)流程很混亂:? ??

1、有許多 AI Agent 框架存在細(xì)微差異。雖然看到生態(tài)系統(tǒng)蓬勃發(fā)展令人鼓舞,但這些細(xì)微差異很少能帶來(lái)足夠的價(jià)值,但可能會(huì)顯著改變你的代碼編寫方式。? ??

2、與外部數(shù)據(jù)源的集成通常是臨時(shí)實(shí)現(xiàn)的,并且使用不同的協(xié)議,即使在組織內(nèi)部也是如此。對(duì)于不同公司來(lái)說,這顯然是如此。???

3、工具在代碼庫(kù)中以略微不同的方式定義。如何將工具附加到增強(qiáng)型 LLM 上也是不同的。目標(biāo)是提高我們創(chuàng)新 AI Agent 應(yīng)用的速度、安全性以及將相關(guān)數(shù)據(jù)帶入上下文的便利性。

第二、MCP 架構(gòu)設(shè)計(jì)

1、MCP Host:使用 LLM 為核心并希望通過 MCP 訪問數(shù)據(jù)的程序。? ?

2、MCP Client:與 MCP Server 保持1:1連接的客戶端。? ?

3、MCP Server:每個(gè) MCP Server 都通過標(biāo)準(zhǔn)化的模型上下文協(xié)議公開特定功能的輕量級(jí)程序。? ?

4、Local Data Sources:你計(jì)算機(jī)上的文件、數(shù)據(jù)庫(kù)和服務(wù),MCP Server 可以安全訪問。? ? 5、Remote Data Sources:通過互聯(lián)網(wǎng)可用的外部系統(tǒng)(比如:通過 API),MCP Server 可以連接到這些系統(tǒng)。

第三、通過 MCP 分離控制責(zé)任

MCP Server 公開三個(gè)主要元素(Prompts、Resoures、Tools),這些元素是有意設(shè)計(jì)的,以幫助實(shí)現(xiàn)特定的控制分離。

1、Prompts 提示詞被設(shè)計(jì)為用戶控制的。后端的程序員可以公開特定的提示詞(適用于與后端服務(wù)公開的數(shù)據(jù)交互),這些提示詞可以注入到使用 LLM 的應(yīng)用程序中,并暴露給給定應(yīng)用程序的用戶。

2、Resoures 資源被設(shè)計(jì)為應(yīng)用程序控制的。Resources 資源是任何可以被利用 LLM 構(gòu)建的應(yīng)用程序使用的數(shù)據(jù)(文本或二進(jìn)制)。應(yīng)用程序的程序員(通常是 AI 應(yīng)用開發(fā)工程師)負(fù)責(zé)將這些信息編碼到應(yīng)用程序中。通常,這里沒有自動(dòng)化,LLM 不參與此選擇。

3、Tools 工具被設(shè)計(jì)為大模型控制的。如果我們賦予應(yīng)用程序如何與環(huán)境交互的代理權(quán),我們使用 Tools 工具來(lái)實(shí)現(xiàn)這一點(diǎn)。MCP Server 公開一個(gè)端點(diǎn),可以列出所有可用 Tools 工具及其描述和所需參數(shù),應(yīng)用程序可以將此列表傳遞給 LLM,以便它決定哪些 Tools 工具適用于手頭的任務(wù)以及如何調(diào)用它們。

A2A + MCP 協(xié)同架構(gòu)設(shè)計(jì)

第一、A2A + MCP 協(xié)同架構(gòu)設(shè)計(jì)

谷歌說得很清楚:AI Agent 應(yīng)用需要 A2A 和 MCP。我們推薦用 MCP 來(lái)處理工具,用 A2A 來(lái)處理 AI Agents。這話啥意思呢?我們來(lái)看看一個(gè)涉及多個(gè) AI Agent 系統(tǒng)架構(gòu)。

MCP 里的組件:? ?

1、MCP Host:這里有意思了,和 A2A 結(jié)合后,MCP Server 就是 AI Agent。? ?

2、MCP Client。? ?

3、MCP Server。? ?

4、Local Data Sources。? ?

5、Remote Data Sources。

A2A 這邊:? ?

6、AI Agent(MCP Host)會(huì)通過 A2A 協(xié)議來(lái)實(shí)現(xiàn)和通信,這個(gè)協(xié)議能實(shí)現(xiàn):

谷歌建議,MCP 主要用于把傳統(tǒng)的數(shù)據(jù)系統(tǒng)(MCP Resources)和 API(MCP Tools)跟基于 LLM 的應(yīng)用整合起來(lái),而 A2A 則負(fù)責(zé) AI Agent 之間的通信。我確實(shí)覺得,往后發(fā)展,大家會(huì)越來(lái)越傾向于把平臺(tái)暴露成 AI Agent,而不是 MCP Server,所以 MCP 在第5點(diǎn)的重要性會(huì)逐漸降低。

第二、通過 MCP 進(jìn)行 AI Agent 發(fā)現(xiàn)

谷歌甚至建議通過 MCP Server Resources 來(lái)暴露 A2A AI Agent。

1、網(wǎng)格(Mesh)中的每個(gè) AI Agent 都可以通過 MCP Client 連接到一個(gè)專門的 MCP Server,并瀏覽 Resources 目錄來(lái)發(fā)現(xiàn)其他可用的 AI Agent。建議通過這些 MCP Resources 來(lái)暴露 Agent Cards。? ?

2、發(fā)現(xiàn)之后,AI Agent 之間會(huì)繼續(xù)利用 A2A 協(xié)議進(jìn)行通信。話說回來(lái),如果我們朝著通過全球索引進(jìn)行 AI Agent 發(fā)現(xiàn)的方向發(fā)展,MCP 在這里的重要性也會(huì)降低,甚至可能會(huì)消失。

長(zhǎng)期來(lái)看,A2A 會(huì)不會(huì)取代 MCP?

第一、MCP 會(huì)不會(huì)逐漸變得不重要?

其實(shí),一直以來(lái),人們都在尋找一種方法,能讓大量的 AI Agent 之間互相連接,還能和傳統(tǒng)的系統(tǒng)連接。之前有人提到過無(wú)頭瀏覽器(headless browsers),但現(xiàn)在看來(lái),開放的通信協(xié)議可能才是未來(lái)的方向。我覺得,這也是為什么有人說 MCP 是“新的 HTTP 時(shí)刻”(雖然可能有點(diǎn)夸張)。

以下的想法是基于一些假設(shè)的:

第二、MCP 和 A2A 有一些相似之處

在 AI Agent 協(xié)議方面,兩者都有明顯的相似性,用戶可以選擇多種方式來(lái)構(gòu)建他們的 AI Agent 應(yīng)用,并將它們展示給世界。

隨著 MCP 的迅速流行,公司把 MCP Server 作為他們產(chǎn)品的一部分變得很常見,這樣開發(fā)者就可以輕松地把這些平臺(tái)的內(nèi)容整合到他們自己的基于 LLM 的應(yīng)用中。

然而,MCP 在推廣過程中遇到了一些問題。

這可能是谷歌通過 A2A 進(jìn)入?yún)f(xié)議競(jìng)爭(zhēng)的一個(gè)切入點(diǎn),因?yàn)樗鉀Q了上述問題。

我總覺得 Anthropic 對(duì) MCP 的規(guī)劃比現(xiàn)在看到的要大,包括把多個(gè) AI Agent 連接在一起?,F(xiàn)在,A2A 的出現(xiàn)可能已經(jīng)關(guān)上了向這個(gè)方向發(fā)展的大門。

從長(zhǎng)遠(yuǎn)來(lái)看,AI Agent 的世界會(huì)是什么樣子呢?

我傾向于最后一種情況。

如果這個(gè)假設(shè)成立,那么真正有權(quán)力的是控制遠(yuǎn)程 AI Agent 通信協(xié)議的那個(gè)協(xié)議。

即使在短期內(nèi),假設(shè)新出現(xiàn)的公司默認(rèn)會(huì)選擇第二種方式,如果他們選擇通過 AI Agent 來(lái)暴露數(shù)據(jù),那么 A2A 顯然是贏家。

說了這么多,MCP 會(huì)不會(huì)繼續(xù)作為連接新型應(yīng)用和傳統(tǒng)系統(tǒng)的協(xié)議,而一旦 AI Agent 占據(jù)主導(dǎo)地位,MCP 就會(huì)變得無(wú)關(guān)緊要呢?誰(shuí)知道呢,讓我們拭目以待。

但如果真有那么一天,猜猜我在行業(yè)里會(huì)支持誰(shuí)呢? :)

第三、總結(jié)一下

我們正處在一個(gè)激動(dòng)人心的時(shí)代。新型 AI Agent 應(yīng)用的大規(guī)模連接方式正在我們眼前被定義。

A2A 雖然是新來(lái)者,但它很快就在 AI Agent 通信領(lǐng)域嶄露頭角。雖然 MCP 為 LLM 如何整合上下文帶來(lái)了結(jié)構(gòu),但 A2A 正在解決 MCP 所缺乏的東西:安全性、狀態(tài)管理和實(shí)時(shí)協(xié)作。A2A 會(huì)不會(huì)取代 MCP?誰(shuí)知道呢。

盡管官方立場(chǎng)是這兩種協(xié)議解決的是完全不同的問題,但它們之間可能存在潛在的重疊,而且可以預(yù)見這些協(xié)議的范圍也會(huì)擴(kuò)大。

如果未來(lái)是 AI Agent 的天下,公司開始暴露 AI Agent 而不僅僅是工具或數(shù)據(jù),那么能夠?qū)崿F(xiàn)無(wú)縫 AI Agent 互動(dòng)的協(xié)議可能就是贏家。現(xiàn)在看來(lái),A2A 似乎正在做出正確的選擇。

文章轉(zhuǎn)載自:從架構(gòu)設(shè)計(jì)側(cè)剖析: MCP vs A2A 是朋友還是對(duì)手?

上一篇:

大模型 API 異步調(diào)用優(yōu)化:高效并發(fā)與令牌池設(shè)計(jì)實(shí)踐

下一篇:

AI Agent 全面對(duì)比:Manus、OpenManus與OWL
#你可能也喜歡這些API文章!

我們有何不同?

API服務(wù)商零注冊(cè)

多API并行試用

數(shù)據(jù)驅(qū)動(dòng)選型,提升決策效率

查看全部API→
??

熱門場(chǎng)景實(shí)測(cè),選對(duì)API

#AI文本生成大模型API

對(duì)比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力

25個(gè)渠道
一鍵對(duì)比試用API 限時(shí)免費(fèi)

#AI深度推理大模型API

對(duì)比大模型API的邏輯推理準(zhǔn)確性、分析深度、可視化建議合理性

10個(gè)渠道
一鍵對(duì)比試用API 限時(shí)免費(fèi)