国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

深入剖析MCP協(xié)議:實(shí)用性、成本考量及生態(tài)影響

freeflydom
2025年4月15日 16:20 本文熱度 484

?聊一下MCP,希望能讓各位清醒一點(diǎn)吧。


先說(shuō)觀點(diǎn):MCP不錯(cuò),但它僅僅是個(gè)協(xié)議而已,很多科普文章中,提到的更多都是愿景,而不是落地的場(chǎng)景。

本文不再重新陳述MCP的基本概念,而是旨在能讓大家了解的是MCP 有什么用?怎么用?要不要用?

我準(zhǔn)備了一份MCP實(shí)現(xiàn)的核心代碼,只保留必要的內(nèi)容,五分鐘就能看明白MCP怎么回事。

先上代碼,讓我們看看實(shí)現(xiàn)MCP最核心的部分我們都干了些什么東西。順便讓大家看看MCP到底和Function call是個(gè)什么關(guān)系。

MCP代碼核心邏輯

我們?cè)诒镜剡\(yùn)行的MCP,所以使用的是Stdio模式的客戶(hù)端和服務(wù)端。也就是:StdioServerTransportStdioClientTransport

先看打滿(mǎn)日志的demo運(yùn)行起來(lái)起來(lái)后,我們獲得的信息:

我們的服務(wù)端寫(xiě)了兩個(gè)簡(jiǎn)單的工具,加法減法

服務(wù)端啟動(dòng)成功之后,客戶(hù)端成功的從服務(wù)端獲取到了這兩個(gè)工具。

我們發(fā)起了一個(gè)問(wèn)題:計(jì)算1+1

接下來(lái)做的事情就是MCP的客戶(hù)端核心三步邏輯:

  1. 客戶(hù)端調(diào)用AI的function call能力,由AI決定是否使用工具,使用哪個(gè)工具。

  2. 客戶(hù)端把確定要使用的工具和參數(shù)發(fā)送回服務(wù)端,由服務(wù)端實(shí)現(xiàn)API調(diào)用并返回結(jié)果。

  3. 客戶(hù)端根據(jù)結(jié)果,再次調(diào)用AI,由AI進(jìn)行回答。

我們一邊看代碼一邊說(shuō)里面的問(wèn)題:

第一步調(diào)用AI,決定使用工具

客戶(hù)端代碼:

  const response = await this.openai.chat.completions.create({
    model: model,
    messages,
    tools: this.tools, // ! 重點(diǎn)看這里,this.tools是服務(wù)端返回的工具列表
  });

看到了么?這里用的還是Function call! 謠言一:MCP和Function call沒(méi)關(guān)系,MCP就可以讓大家調(diào)用工具,終結(jié)了。MCP就是用的function call的能力來(lái)實(shí)現(xiàn)的工具調(diào)用。當(dāng)然我們也可以不用Function call,我們就直接用提示詞判斷,也是可以的。

這里要說(shuō)的是:MCP就是個(gè)協(xié)議。并沒(méi)有給大模型帶來(lái)任何新的能力,也沒(méi)有某些人說(shuō)的MCP提升了Function call的能力,以后不用Function call了,用MCP就夠了這種話(huà),千萬(wàn)不要被誤導(dǎo)。

MCP并沒(méi)有讓大模型的工具調(diào)用能力提升

在真實(shí)的生產(chǎn)環(huán)境中,目前Function call主要的問(wèn)題有:

  • 工具調(diào)用準(zhǔn)確性不夠。 真正的生成環(huán)境可能不是三個(gè)五個(gè)工具,而是三十個(gè)五十個(gè)。工具之間的界限不夠清晰的話(huà),就會(huì)存在模型判斷不準(zhǔn)確的情況。

  • 參數(shù)提取準(zhǔn)確性不夠。 特別是當(dāng)一個(gè)工具必填加選填的參數(shù)達(dá)到十個(gè)以上的時(shí)候,面對(duì)復(fù)雜問(wèn)題,參數(shù)的提取準(zhǔn)確率會(huì)下降。

  • 多意圖的識(shí)別。
    用戶(hù)的一個(gè)問(wèn)題涉及到多個(gè)工具時(shí),目前沒(méi)有能夠穩(wěn)定提取的模型。

第二步把工具和參數(shù)發(fā)回服務(wù)端,由服務(wù)端調(diào)用API

客戶(hù)端代碼:

const result = await this.mcp.callTool({
  name: toolName,
  arguments: toolArgs,
});

服務(wù)端的代碼:

server.tool(
  "加法",
  "計(jì)算數(shù)字相加",
  {
    "a": z.number().describe("加法的第一個(gè)數(shù)字"),
    "b": z.number().describe("加法的第二個(gè)數(shù)字"),
  },
  async ({ a, b, c }) => {
    console.error(`服務(wù)端: 收到加法API,計(jì)算${a}${b}兩個(gè)數(shù)的和。模型API發(fā)送`) 
    // 這里模擬API的發(fā)送和使用
    let data = a + b
    return {
      content: [
        {
          type: "text",
          text: a + '+' + b + '的結(jié)果是:' + data,
        },
      ],
    };
  },
);

發(fā)現(xiàn)問(wèn)題了么? API是要有MCP服務(wù)器提供者調(diào)用的。要花錢(qián)的朋友!

每一臺(tái)MCP服務(wù)器背后都是要成本的,收費(fèi)產(chǎn)品進(jìn)行MCP服務(wù)器的支持還說(shuō)的過(guò)去,不收費(fèi)的產(chǎn)品全靠愛(ài)發(fā)電。更不要說(shuō),誰(shuí)敢在生成環(huán)境接一個(gè)不收費(fèi)的私人的小服務(wù)器?

百度地圖核心API全面兼容MCP了,百度地圖是收費(fèi)的,進(jìn)行多場(chǎng)景的支持是很正常的行為。

來(lái)看看百煉吧,阿里的百煉目前推出了MCP的功能,支持在百煉上部署MCP server。

也是要花錢(qián)的朋友~,三方API調(diào)用費(fèi)用另算。

阿里的魔塔社區(qū)提供了大量的MCP,可以看到有一些大廠的服務(wù)在,當(dāng)然有收費(fèi)的有免費(fèi)的,各位可以嘗試

第三步客戶(hù)端根據(jù)結(jié)果,再次調(diào)用AI,由AI進(jìn)行回答。

客戶(hù)端代碼:

messages.push({
  role: "user",
  content: result.content,
});
const aiResponse = await this.openai.chat.completions.create({
  model: model,
  messages: messages,
});

從服務(wù)端返回的結(jié)果,添加到messages中,配合提示詞由大模型進(jìn)行回復(fù)即可。

這一步屬于正常的流程,沒(méi)什么好說(shuō)的。

那么問(wèn)題是:我們使用MCP來(lái)實(shí)現(xiàn),和我們自己實(shí)現(xiàn)這套流程有什么區(qū)別么?我們?yōu)槭裁匆肕CP呢?

當(dāng)初群里朋友第一次提到MCP的時(shí)候,我去看了一眼文檔,給了這樣的結(jié)論:

大廠為了搶生態(tài)做的事情,給落地的流程中定義了一些概念,多了腦力負(fù)擔(dān),流程和自己實(shí)現(xiàn)沒(méi)區(qū)別。

對(duì)于工具的使用,自己實(shí)現(xiàn)和用MCP實(shí)現(xiàn)有什么區(qū)別么?

自己實(shí)現(xiàn)的流程和邏輯是這樣的:

  1. 我們的提示詞工程師寫(xiě)好每個(gè)工具的提示詞
  2. 我們的后端工程師寫(xiě)好模型的調(diào)用,使用的是前面寫(xiě)好的提示詞
  3. 提供接口給前端,等待前端調(diào)用
  4. 前端調(diào)用傳入query,后端通過(guò)AI獲取了工具
  5. 通過(guò)工具配置調(diào)用API,拿到數(shù)據(jù)交給AI,流式返回用戶(hù)。

MCP的邏輯是這樣的:

  1. 我們的提示詞工程師寫(xiě)好每個(gè)工具的提示詞
  2. 我們后端工程師分別寫(xiě)好MCP服務(wù)端、MCP客戶(hù)端
  3. MCP客戶(hù)端提供個(gè)接口給前端,等待前端調(diào)用
  4. 前端調(diào)用傳入query,MCP客戶(hù)端調(diào)用AI,獲取了工具。
  5. 客戶(hù)端把確定要使用的工具和參數(shù)發(fā)送會(huì)服務(wù)端,由服務(wù)端實(shí)現(xiàn)API調(diào)用并返回結(jié)果。
  6. 客戶(hù)端根據(jù)結(jié)果,再次調(diào)用AI,由AI進(jìn)行回答,流式返回用戶(hù)。

看吧,本質(zhì)上是沒(méi)有區(qū)別的。

什么?你說(shuō)MCP服務(wù)端,如果日后需要與其他企業(yè)進(jìn)行合作,可以方便的讓對(duì)方的MCP客戶(hù)端調(diào)用? 我們的客戶(hù)端也可以很方便的接入別人的MCP服務(wù)端。

不好意思,不用MCP也可以,因?yàn)镕unction call的參數(shù)格式已經(jīng)確定了,這里原本存在差異性就極小。而且MCP也并沒(méi)有解決這個(gè)差異性。還是需要客戶(hù)端進(jìn)行修改的。

MCP真正的意義

現(xiàn)在還是諸神混戰(zhàn)時(shí)期,整個(gè)AI產(chǎn)品的上下游所有的點(diǎn),都具有極高的不確定性。

MCP給出了一個(gè)技術(shù)標(biāo)準(zhǔn)化的協(xié)議,是大家共建AI的愿景中的一環(huán),潛力是有的。

但是Anthropic真的只是在乎這個(gè)協(xié)議么?前面的內(nèi)容我們也看到了,MCP和我們自己實(shí)現(xiàn)的流程幾乎是一樣的。但是為什么還要提出MCP呢?

為了生態(tài)控制權(quán)和行業(yè)話(huà)語(yǔ)權(quán)。

MCP它表面上是一個(gè)開(kāi)放的協(xié)議,旨在解決AI模型與外部工具集成的碎片化問(wèn)題,但其實(shí)他就是Anthropic對(duì)未來(lái)AI生態(tài)主導(dǎo)權(quán)的競(jìng)爭(zhēng)。

未來(lái)MCP如果真的作為一個(gè)標(biāo)準(zhǔn)的協(xié)議成為大家的共識(shí),圍繞這個(gè)協(xié)議,甚至每家模型的工具調(diào)用格式都將被統(tǒng)一,此時(shí)Anthropic在委員會(huì)里的位置呢?不言而喻啊。

結(jié)語(yǔ)

最后把我的策略分享給大家吧:

打算在圈子里玩的部分,就和大家用一樣的,不在圈子里玩的,其實(shí)自己團(tuán)隊(duì)實(shí)現(xiàn)也是OK的。

我這邊更多的是自己團(tuán)隊(duì)實(shí)現(xiàn)的,而且在這個(gè)實(shí)現(xiàn)過(guò)程中大家對(duì)模型應(yīng)用、AI產(chǎn)品的理解不斷地在提升。

希望各位讀者也多進(jìn)行嘗試,這樣未來(lái)面對(duì)新出的各路牛鬼蛇神時(shí)大家才能有更多的判斷力。

共勉吧!

轉(zhuǎn)自https://juejin.cn/post/7492271537010671635


該文章在 2025/4/15 16:23:08 編輯過(guò)
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶(hù)的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 中字无码在线观看 | 性猛交富婆ⅹxxx乱大交 | 在线观看视频一区二区三区福利 | 亚洲福利色视频在线看 | 欧美日韩激情一区二区三区 | 久久亚洲精品无码gv | 欧美另类久久久精品 | 免费一级毛片私人影院a行 免费一级欧美片片线观看 免费一级特黄欧美大片久久网 | 麻豆av一区二区三区 | 久久久久亚洲av无码专区体验 | 91精品亚洲影视在线观看 | 中文字幕久久精品一级毛片 | 久久久久久无码av成人影院 | 一本久道综合在线无码人妻 | 久久精品免费视频 | 国产精品久久久国产盗摄 | 亚洲成a人片777777久久 | 亚洲线精品一区二区三区影音先锋 | 131美女爱做免费毛片 | 无码精品一区二区三区四区bd蓝光碟在线播放 | 久久精品国产亚洲AV无码麻豆 | 国产乱码一卡一卡2卡三卡四 | 国产成人精品无码免费看 | 亚洲aⅴ无码天堂在线观看 亚洲aⅴ无码精品一区二区三区 | 爱情岛亚洲论坛永久入口 | 亚洲gay片在线gv网站 | 久久www免费人成—看片 | 亚洲精品成人区在线观看 | 日本一道本在线视频 | 亚洲欧洲另类色图 | 男男受被攻做哭娇喘声视频 | 午夜无码无遮档在线视频 | 伊人久久大香线蕉av网禁呦 | 麻豆成人精品国产免费 | 国产色综合天天综合 | 熟妇人妻无乱码中文字幕真矢织江三区高清hd美女 | 91亚洲国产成人久久精品网站 | 神马九九| 清纯唯美经典一区二区 | 久久水蜜桃亚洲av无码精品 | 97视频在线观看播放 |