Laravel AI SDK, Boost, or MCP: Which Tool Do You Need?

Laravel AI SDK、Boost 或 MCP:你需要哪種工具?

Laravel 建立了三個 AI 包:Laravel AI SDKLaravel BoostLaravel MCP。每一個都解決了不同的問題,如果你正在糾結需要哪一個(或者是否三個都需要),我們將在本文中為你詳細解析。

簡而言之

  • AI SDK 幫助你在應用中構建 AI 功能。
  • Boost 幫助 AI 智慧體為你編寫更好的 Laravel 程式碼。
  • MCP 幫助外部 AI 工具與你的應用進行互動。

它們相輔相成,但不可互相替代。請閱讀 完整的 AI SDK 文件Boost 文件 以及 MCP 文件 以瞭解更多資訊。

這三個包共同解決的問題

AI 現在已成為開發人員構建和釋出軟體方式的一部分。然而,相關工具一直很分散。開發人員不得不圍繞 OpenAI 的 API 編寫自己的封裝器,手動管理特定於服務商的怪癖,並希望他們的編碼智慧體能寫出符合 Laravel 習慣的程式碼,而不是通用的 PHP 程式碼。

Laravel CEO Taylor OtwellAI SDK 的現場演示中這樣描述其初衷:

“在當下,這是開發工作流程中非常重要的一部分。我覺得我們需要某種第一方的觀點來與 AI 服務商進行互動。就像我們對於傳送郵件或處理佇列任務有自己的主張一樣。”

這三個包中的每一個都解決了該問題的一個層面:一個用於構建 AI 功能,一個用於使用 AI 編寫程式碼,一個用於將你的應用暴露給 AI 客戶端。

什麼是 Laravel AI SDK?

Laravel AI SDK 是一個統一的 PHP 包,用於為你的 Laravel 應用新增 AI 能力。你可以透過以下方式安裝它:

它為你提供了一個單一的 API,用於處理跨 OpenAI、Anthropic、Google Gemini、Groq 和 xAI 等服務商的文字生成、影像生成、音訊處理、轉錄、嵌入等任務。你在 config/ai.php 中配置一次預設服務商,SDK 就會自動將請求路由到正確的端點,而無需你每次都指定模型字串。

核心概念是智慧體(Agent)。你可以透過 Artisan 命令生成一個:

這會建立一個類,你可以在其中定義系統指令、工具、輸出模式和對話上下文。你可以在應用的任何地方複用此類:控制器中、佇列任務中、事件監聽器中。邏輯統一存放在一個地方。

向智慧體傳送提示詞只需一行程式碼:

你可以用 AI SDK 構建什麼?

AI SDK 涵蓋了你在生產級 Laravel 應用中可能需要的每一項主要 AI 能力:

  • 文字生成和結構化輸出。 讓智慧體返回自由格式文字或符合預定義模式的 JSON。當你需要解析響應並將其儲存到資料庫時,結構化輸出非常有用。
  • 流式傳輸。 使用 stream 方法,透過伺服器傳送事件(SSE)將響應推送到前端。Livewire 和 Inertia 都有相應的鉤子來處理流。
  • 後臺處理。 呼叫 queue 而不是 prompt,將生成任務推送到 Laravel 佇列中,然後在回撥中處理結果。這可以防止使用者等待緩慢的 AI 響應。
  • 影像生成。 使用 OpenAI、Gemini 或 xAI 根據文字提示生成影像。只需一行程式碼,即可將生成的影像直接儲存到任何 Laravel 檔案系統磁碟中。
  • 音訊生成和轉錄。 使用 OpenAI 或 ElevenLabs 從文字生成語音。透過說話人識別和帶時間戳的分段來轉錄音訊檔案。
  • 嵌入和語義搜尋。 使用 Str::of('...')->toEmbeddings() 從文字生成向量嵌入,並將其儲存在帶有 pgvector 的 Postgres 資料庫中。使用內建的 SimilaritySearch 工具從智慧體中查詢它們。
  • 檔案和向量儲存。 將 PDF 和文件上傳到 OpenAI 或 Gemini,以實現跨對話的語義檔案搜尋。
  • 自動故障轉移。 傳入一個服務商陣列,如果主要服務商受限或不可用,SDK 將自動回退到下一個服務商。

Taylor 解釋了為什麼即便是在 AI 智慧體編寫程式碼的情況下,SDK 的 API 設計依然很重要:

“我認為這很重要,因為大語言模型在解析和理解簡單的事物方面表現依然良好。那些傾向於約定和結構化的框架在 LLM 處理下表現更佳。專案中有這種非常規約的結構,比如有 models 目錄,有 controllers 目錄。它非常易於探索。”

這種可預測性使得開發人員和 AI 都能更容易地閱讀和推理 Laravel 專案中的 AI 程式碼。

何時使用 AI SDK

當你需要為你的應用新增 AI 功能時,請使用 Laravel AI SDK。如果你希望使用者在你的產品中與 AI 互動,無論是文字摘要、影像生成、語義搜尋、語音轉錄還是聊天介面,AI SDK 都是正確的工具。

Laravel Nightwatch 使用 AI SDK 來總結生產環境中的異常。當發生錯誤時,使用者可以點選一個按鈕,獲取由 AI 生成的關於發生了什麼、原因以及下一步該檢查什麼的摘要。這是一個簡單的文字生成任務:智慧體讀取異常資料並返回結構化響應。

一個數據密集型的例子是潛在客戶資格審查。LeadExtractor 智慧體可以讀取聯絡表單提交的 CSV 檔案、過濾垃圾郵件、識別高價值潛在客戶,並返回帶有評分和提取需求的結構化 JSON。在每個合格的潛在客戶旁邊儲存嵌入向量,使得後續的語義搜尋成為可能。

什麼是 Laravel Boost?

Laravel Boost 是一款開發人員工具,而不是應用功能。它在新的 Laravel 專案中預設包含,也可以作為開發依賴新增到現有的相容應用中。

Boost 為 Claude Code 和 Cursor 等 AI 編碼智慧體提供了編寫高質量 Laravel 程式碼所需的兩樣東西:專案上下文和 Laravel 生態系統知識。它透過兩種機制實現這一點:AI 指南(Guidelines)和智慧體技能(Skills)。

AI 指南(AI Guidelines)

指南是可組合的指令檔案,在編碼會話開始時提前載入。它們告訴智慧體遵循 Laravel 約定、為安裝的包版本使用正確的 API,並在適當的時候編寫測試。Boost 為 Laravel 框架、Livewire、Inertia、Pest、Tailwind CSS、Flux UI 等提供了指南。如果你維護第三方包,你可以隨包附帶自己的指南,這樣 Boost 就會自動載入它們。

智慧體技能(Agent Skills)

技能(Skills)是一種更新、更具針對性的方法。如果說指南是廣泛的且提前載入的,那麼技能就是專注於特定任務的知識模組,由智慧體在工作時按需啟用。

Boost 會根據在 composer.json 中檢測到的內容自動安裝技能。如果你的專案包含 livewire/livewire,則會安裝 livewire-development 技能。你也可以為你自己的應用領域邏輯編寫自定義技能。

Laravel 技能目錄是一個由社群構建的可複用技能開放合集。透過單一命令即可安裝任何技能。

文件 API

Boost 將智慧體連線到一個託管文件 API,其中包含超過 17,000 條帶版本控制的 Laravel 生態系統文件,並經過語義搜尋索引。該 API 涵蓋了 Laravel 框架、Livewire、Inertia、Filament、Nova、Pest 等,並根據你專案使用的主要版本進行過濾。

Taylor 解釋了這彌補了什麼差距:

“我們在週二釋出 Laravel 的某個特性,但 LLM 對此一無所知,因為它們是在舊資料上訓練的。但 Boost 允許我們向它們提供最新資訊。它們始終可以訪問最新的文件。”

何時使用 Boost

當你使用 AI 編碼智慧體編寫 Laravel 程式碼時,請使用 Laravel Boost。Boost 使 Claude Code、Cursor 及類似工具能夠生成更準確、更地道、版本更匹配的 Laravel 程式碼。它是一個提高開發者生產力的工具,你的終端使用者永遠不會與它互動。

在實踐中,當你讓 Claude Code 構建一個 Livewire 元件時,livewire-development 技能會載入該領域特定的模式和約定。當你轉而編寫測試時,pest-testing 技能會接管工作。每個技能只在相關時載入,因此智慧體在每一步都有專注且即時的上下文。結果是更少的程式碼“幻覺”以及更少清理差異的時間。

什麼是 Laravel MCP?

Laravel MCP 是一個用於在 Laravel 應用中構建 Model Context Protocol(模型上下文協議)伺服器的庫。你可以透過以下方式安裝:

MCP 是一種開放標準,讓 ChatGPT、Claude 和 Cursor 等 AI 客戶端能夠以結構化的方式與外部服務進行互動。當你將 MCP 伺服器構建到你的應用中時,你就是為 AI 工具提供了一種直接呼叫你應用功能的方法。

Boost 本身就是構建在 Laravel MCP 之上的。Boost 暴露給你的編碼智慧體的每一個工具(如 Tinker 和 Schema),都是使用該庫定義的 MCP 工具。

你可以透過以下命令生成 MCP 伺服器:

MCP 支援三個原語::

  • 工具(Tools)暴露可呼叫的功能。AI 智慧體可以呼叫工具來在你的應用中採取行動,例如建立發票、查詢資料或觸發工作流。任何你能編寫程式碼實現的功能都可以成為工具。
  • 資源(Resources)暴露內容。AI 客戶端可以讀取資源並將其作為上下文使用:文件、資料庫記錄、配置檔案等。
  • 提示詞(Prompts)提供可複用的提示詞模板。使用者可以從伺服器選擇一個提示詞(如“Review my code”),這樣他們就不必每次都手動輸入。

MCP 伺服器可以是 Web 可訪問的(透過 HTTP),也可以是本地的(作為 Artisan 命令)。Web 伺服器支援透過 Laravel Passport 進行 OAuth 認證,以及透過 Laravel Sanctum 進行令牌認證。

何時使用 Laravel MCP

當你需要將你的應用暴露給外部 AI 客戶端時,請使用 Laravel MCP。如果你希望 ChatGPT 能夠在你的應用中建立發票,或者讓 Claude 搜尋你的知識庫,或者讓 Cursor 查詢你的 API,你就需要構建一個 MCP 伺服器。你的產品無需使用者離開他們選擇的 AI 聊天介面即可實現 AI 整合。

例如,一個發票應用可以透過 MCP 伺服器暴露一個 CreateInvoice 工具。ChatGPT 中的使用者說:“為 Acme Corp 建立一張 2400 美元的發票”,該工具使用 Laravel 的驗證機制驗證輸入,建立記錄,並返回結構化響應。使用者自始至終無需離開聊天介面。

這三個包如何協同工作

這些工具並不是彼此的替代品。它們執行在不同的層面:

使用者 功能
Laravel AI SDK 你的應用 新增使用者互動的 AI 功能
Laravel Boost 你(開發者) 幫助 AI 智慧體編寫更好的 Laravel 程式碼
Laravel MCP 外部 AI 客戶端 將你的應用暴露給 ChatGPT 和 Claude 等工具

一個生產級的 Laravel 應用可能三個都會用到。AI SDK 為應用內部的 AI 搜尋功能提供支援。Boost 幫助團隊透過 Claude Code 更快地構建該功能。MCP 伺服器則讓使用者能在 ChatGPT 內部查詢相同的搜尋結果。

Boost 和 MCP 之間的關係是它們如何分層的一個很好的例子。Boost 在內部使用 Laravel MCP 將其開發工具暴露給編碼智慧體。如果你構建自己的內部開發工具,也可以採用同樣的方式。

關於工具和上下文的說明

AI SDK 支援自定義工具,Laravel MCP 也是如此。它們相關但用途不同。

AI SDK 中的工具使你的智慧體能夠在生成過程中呼叫外部功能:搜尋網路、查詢向量儲存、執行計算。這些是在你的 Laravel 應用中,使用者互動期間在服務端執行的。

Laravel MCP 中的工具則是將你應用的功能暴露給外部 AI 客戶端。它們是 AI 工具從外部呼叫進入你應用的入口點。

Taylor 指出了在使用 AI SDK 工具時的一個實際考量:一次暴露過多的工具可能會導致上下文膨脹。

“你不應該向 LLM 暴露 50、60 或 70 個工具,因為這會產生所謂的上下文膨脹。你還必須傳送所有工具定義以及它們的功能,且每條訊息都要傳送。所以如果有太多的工具,可能會消耗大量的 Token 和上下文。”

AI SDK 中的智慧體類設計在這裡很有幫助。因為工具是按智慧體定義的,你可以限定每個智慧體可以訪問的範圍。客服智慧體可以獲得搜尋工具,而潛在客戶審查智慧體則不需要。這保持了 Token 使用量的可預測性。

開始 AI 驅動的 Laravel 開發

根據你的需求,獨立安裝這三個包中的每一個。

如果你剛剛起步,先安裝 Laravel Boost。它將立即提高編輯器中 AI 生成的 Laravel 程式碼質量。然後,當你開始在應用中構建 AI 功能時,再加入 Laravel AI SDK。

這三個包共同構成了 Laravel 的完整 AI 層:一個用於構建功能,一個用於開發,一個用於整合。組合使用它們,可以形成一個完整的迴圈:從透過 Boost 更快地編寫程式碼,到透過 AI SDK 釋出 AI 功能,再到透過 MCP 在使用者現有的任何地方觸達他們。

我們必須交付。閱讀 Laravel AI 文件並開始以更快的速度構建吧。

常見問題 (FAQ)

我需要所有三個包嗎?

不一定。大多數在應用中構建 AI 功能的 Laravel 開發者需要 Boost(用於開發)和 AI SDK(用於功能)。Laravel MCP 僅在你希望將應用暴露給外部 AI 客戶端時才需要。

Laravel AI SDK 是對 Prism 的替代嗎?

是的,AI SDK 取代了直接在應用中使用 Prism 的需求。Taylor 描述了它們的關係:“我覺得 Prism 和 AI SDK 有點像 查詢構建器Eloquent 的關係。Prism 有那種流式介面,而 AI SDK 是在此之上增加的一層抽象,帶有智慧體類、測試等功能。”

我可以使用本地模型而不是 OpenAI 或 Anthropic 嗎?

是的。AI SDK 支援使用 Ollama 進行本地模型推理。你也可以使用 OpenRouter 透過單個 API Key 訪問多個服務商。在 config/ai.php 中為任何與 OpenAI 相容的端點配置基準 URL 重寫即可。

AI SDK 如何與 Laravel 佇列系統整合?

呼叫 queue() 而不是 prompt()。SDK 會在你的 Laravel 佇列上建立一個後臺任務。你可以為任務完成或失敗傳入回撥。這對於音訊轉錄或大型文件分析等長時間執行的任務非常有用,這樣就不會阻塞 HTTP 請求。

Laravel Boost 會影響我的生產環境應用嗎?

不會。Boost 是作為開發依賴項安裝的,並作為你開發機器上的本地 MCP 伺服器執行。Boost 中的任何內容都不會影響你的生產環境構建。

Laravel MCP 支援什麼身份驗證?

Laravel MCP 支援透過 Laravel Passport 進行 OAuth 2.1 認證(建議使用以獲得與 MCP 客戶端的最大相容性),以及透過 Laravel Sanctum 進行基於令牌的認證。你也可以編寫自定義的認證中介軟體。

AI SDK 中的工具可以打包和共享嗎?

是的。工具和智慧體都是普通的 PHP 類,可以作為 Composer 包進行分發。如果你構建了一個可複用的工具,你可以釋出它供其他 Laravel 開發者使用。

繼續閱讀

產品2026年3月2日

Laravel 二月產品更新

Laravel Cloud API 與 CLI、MySQL 8.4 升級公告、Forge MySQL 9、Nightwatch MCP 與 Linear 整合,以及框架 AI 更新。

Laravel 團隊

產品2026年2月3日

Laravel 一月產品釋出

一月帶來了私有云、Valkey 快取、擴充套件的 Cloud API,以及 Forge 備份選項和 Nightwatch 即時異常檢測。

Laravel 團隊

產品2026年1月9日

Laravel 十二月產品釋出

看看最新產品釋出能為你做些什麼:在 Laravel Cloud 中設定賬單提醒,並利用框架、Forge 和 Nightwatch 的更新更快交付成果。

Laravel 團隊