偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

從單一場(chǎng)景到復(fù)雜場(chǎng)景,聊聊LLMs中Function calling到MCP的技術(shù)演進(jìn)

發(fā)布于 2025-9-22 07:01
瀏覽
0收藏

對(duì)于使用大模型(LLMs)的人來說,可能更熟悉的是MCP多一些,而對(duì)于Function calling其實(shí)更偏于技術(shù)層面的東西,但是從應(yīng)用場(chǎng)景上二者還是有些相似之處。

或者簡(jiǎn)單來說,在沒有MCP協(xié)議之前,想要通過構(gòu)建一個(gè)AI應(yīng)用需要依賴的就是Function calling,簡(jiǎn)單來說它就是函數(shù)調(diào)用,這個(gè)函數(shù)可以是你所期望讀取信息的任何接口,比如要調(diào)用微信公眾號(hào)的開放接口,就可以定一個(gè)Function calling來通過http來調(diào)用。

Functioncalling的核心能力,正如OpenAI官網(wǎng)介紹:為模型提供新的功能和數(shù)據(jù),使它們能夠遵循指令并響應(yīng)提示,使其能夠與外部系統(tǒng)交互并訪問訓(xùn)練數(shù)據(jù)之外的實(shí)時(shí)數(shù)據(jù)。這里的核心是外部交互和實(shí)時(shí)數(shù)據(jù)

Function Calling 一般的過程如下:

將用戶的自然語言輸入與已有函數(shù)的描述作為輸入?yún)?shù)傳給 LLM;

  • LLM 結(jié)合輸入?yún)?shù),決定調(diào)用哪些函數(shù),并指明必要參數(shù)(如函數(shù)的入?yún)ⅲ?,進(jìn)行格式化(如 JSON、XML 格式)的輸出;
  • 用戶端接收到 LLM 格式化的函數(shù)調(diào)用后,對(duì)本地的函數(shù)進(jìn)行調(diào)用,得到結(jié)果;
  • 將得到的函數(shù)結(jié)果傳給 LLM,使得 LLM 有了所需的上下文信息。

對(duì)于大模型來說,它的內(nèi)容都是經(jīng)過預(yù)訓(xùn)練得到的,所謂預(yù)訓(xùn)練就是獲取網(wǎng)絡(luò)數(shù)據(jù),然后將數(shù)據(jù)歸納清楚之后,給到大模型能夠識(shí)別的數(shù)據(jù)結(jié)構(gòu),再結(jié)合算法、算力來訓(xùn)練模型的能力,簡(jiǎn)單來說就是讀書、學(xué)習(xí)、思考的過程。

但是它有一個(gè)問題,就是只能知道自己過往學(xué)習(xí)到的東西,對(duì)于即時(shí)性的內(nèi)容,它感知不到的,例如對(duì)于chatGPT-5來說,它的訓(xùn)練數(shù)據(jù)的采集截止日期是:2024年6月。

從單一場(chǎng)景到復(fù)雜場(chǎng)景,聊聊LLMs中Function calling到MCP的技術(shù)演進(jìn)-AI.x社區(qū)

也就是說,2024年6月之后的數(shù)據(jù)原則上它都不知道。

但是現(xiàn)在它通過封裝了API能力結(jié)合網(wǎng)絡(luò)搜索(爬蟲),就可以組合出一個(gè)智能實(shí)時(shí)檢索+問答能力,它就可以不再依托于模型本身訓(xùn)練數(shù)據(jù),而是具備對(duì)外實(shí)施擴(kuò)展數(shù)據(jù)能力,類似在搜索引擎上面加一個(gè)智能體。

Function calling 調(diào)用流程

Function calling是通過 OpenAI API 在應(yīng)用程序和模型之間進(jìn)行的多步驟對(duì)話,調(diào)用流程包括五個(gè)步驟:

  1. 向模型發(fā)起請(qǐng)求,它可能調(diào)用的工具
  2. 從模型接收工具調(diào)用
  3. 使用工具調(diào)用的輸入在應(yīng)用端執(zhí)行代碼
  4. 使用工具輸出向模型發(fā)起第二次請(qǐng)求
  5. 從模型接收最終響應(yīng)(或更多工具調(diào)用)

從單一場(chǎng)景到復(fù)雜場(chǎng)景,聊聊LLMs中Function calling到MCP的技術(shù)演進(jìn)-AI.x社區(qū)

Function calling實(shí)際上就是結(jié)合LLM本身的能力,其實(shí)我覺得Function calling是一個(gè)復(fù)雜的技術(shù)工程,從單一的場(chǎng)景到復(fù)雜的場(chǎng)景,所要維護(hù)的API服務(wù)的數(shù)量就會(huì)非常龐大。

而在說到MCP(Model Context Protocol),MCP相對(duì)于function calling來說,可以說是一個(gè)一站式的能力,當(dāng)然它也有一定的問題。

MCP 的核心理念:分而治之!MCP 通過將工具與其使用者(AI)分離來解決這個(gè)問題:

MCP Server 是實(shí)際接口服務(wù)的地址,例如天氣預(yù)報(bào)或郵件管理、內(nèi)部系統(tǒng)地址鏈接等等都放在這里,它完全獨(dú)立于 AI 運(yùn)行,可以用任何編程語言編寫。

MCP 客戶端 作為連接器(通常是 AI Agent的一部分)。它負(fù)責(zé)查找可用的工具,幫助 AI 正確格式化請(qǐng)求,并處理與服務(wù)器之間的通信。

從單一場(chǎng)景到復(fù)雜場(chǎng)景,聊聊LLMs中Function calling到MCP的技術(shù)演進(jìn)-AI.x社區(qū)

MCP 的核心作用

  • MCP補(bǔ)充了人工智能應(yīng)用中,和內(nèi)部系統(tǒng)對(duì)接的短板。
  • 通過插件式的方式提升了AI應(yīng)用的內(nèi)部靈活性,每個(gè)插件都可以靈活調(diào)用、獨(dú)立維護(hù)。
  • 幾乎所有的數(shù)據(jù)庫、開源系統(tǒng)都可以構(gòu)建一個(gè)獨(dú)立的MCP出來,擴(kuò)大在AI應(yīng)用的使用場(chǎng)景。

什么時(shí)候應(yīng)該用 MCP 而不是 Function calling?

  • 如果你只是調(diào)用一個(gè)簡(jiǎn)單的 API(比如獲取天氣或股票價(jià)格),函數(shù)調(diào)用就足夠了。
  • 如果你需要 AI 與多個(gè)工具交互、跟蹤上下文或在不進(jìn)行持續(xù)請(qǐng)求的情況下獲取實(shí)時(shí)更新,MCP 就是一個(gè)確定性的解決方案。

例如,想象你正在構(gòu)建一個(gè) AI 編程助手:

  • 使用函數(shù)調(diào)用,AI 可以獲取函數(shù)定義,但如果后來你要調(diào)試某些內(nèi)容,你必須手動(dòng)調(diào)用另一個(gè)函數(shù)來獲取日志、依賴項(xiàng)等。
  • 使用 MCP,當(dāng) AI 詢問某個(gè)函數(shù)時(shí),IDE 可以自動(dòng)發(fā)送調(diào)試信息,這使得它變得非常智能。

Function calling與 MCP:一種互補(bǔ)關(guān)系

雖然Function calling和 MCP 都是將 LLM 與企業(yè)系統(tǒng)集成的重要組成部分,但它們解決的是不同的挑戰(zhàn):

? Function calling專注于將提示轉(zhuǎn)換為可操作的指令,它是 LLM 驅(qū)動(dòng)的,并且在不同的服務(wù)接口之間存在差異,目前還沒有通用的標(biāo)準(zhǔn)。

? MCP 標(biāo)準(zhǔn)化了這些指令的執(zhí)行,實(shí)現(xiàn)了跨數(shù)千種工具的可擴(kuò)展性和互操作性。

二者都共同確保 LLMs 不僅能解釋自然語言提示,還能通過利用企業(yè)工具提供有正確的結(jié)果,而隨著 MCP 的不斷發(fā)展,它將重新定義 LLMs 與企業(yè)工具的交互方式,使集成更具可擴(kuò)展性、靈活性和效率。

從單一場(chǎng)景到復(fù)雜場(chǎng)景,聊聊LLMs中Function calling到MCP的技術(shù)演進(jìn)-AI.x社區(qū)

所以,MCP 和Function calling本質(zhì)來說二者并不沖突,它們是同一工作流程的兩個(gè)方面。

本文轉(zhuǎn)載自??DataForAI??,作者:王笠

標(biāo)簽
已于2025-9-22 07:01:15修改
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦