← 所有文章

Apple 將開源 Foundation Models 框架

Apple 承諾將在今夏開源 Foundation Models 框架,讓您在 app 中呼叫的同一套 Swift API 也能在伺服器上執行。1 在 Platforms State of the Union 上,Apple 直白地說明了這項舉措:「此外,我們還要做一件大事。今夏稍晚,這個框架將會開源。如此一來,您在 app 中使用的同一套 Swift API,現在也能在伺服器上執行,讓您在任何部署 Swift 的地方都能擁有完整的端到端 AI 工作流程。」1 在這項宣布的同時,一個配套的 Swift 套件也在同一週於 GitHub 上線,內含一套 Skills API、歷史記錄管理工具,以及一個能讓 Foundation Models 程式設計模型指向任何 chat-completions 端點的模型轉接器。2 框架本身仍是一個今夏的承諾;而這個工具套件現已上線。

Watch on Apple Developer ↗

開源宣布出現在 12:44。

重點摘要

  • Apple 將「今夏稍晚」開源 Foundation Models 框架,讓同一套 Swift API 能在伺服器上執行,並提供「在任何部署 Swift 的地方都能擁有完整的端到端 AI 工作流程」。1 該框架目前尚未開源。
  • 一個獨立的開源 Swift 套件 FoundationModelsUtilities 已在 GitHub 上以 Apache-2.0 授權釋出,支援 Apple 平台以及 Ubuntu 等部分 Linux 發行版。2
  • 此套件提供一套 Skills API:一個符合 DynamicInstructionsSkills 型別,透過 result builder 建構,能在恰當時機將任務專屬的指示注入工作階段的對話記錄(transcript),以避免污染脈絡並最佳化首個 token 的產生時間(time-to-first-token)。2
  • 它還提供歷史記錄管理的 profile 修飾器(捨棄已完成的工具呼叫、滾動視窗、摘要化),以及一個能與任何使用 chat completions REST API 的伺服器溝通的 ChatCompletionsLanguageModel2
  • 此套件是本屆 WWDC 第三種 skills 的釋出形式,前兩種分別是 Xcode 工具鏈的 skills 與 Game Porting Toolkit 的 skills,而該儲存庫自述其模式為「正在浮現中且屬於實驗性質」。2

框架將於今夏開源

這則頭條是一個日期,而非一個下載連結。在 State of the Union 約 12:44 處,Apple 用兩句話定下了時間表與其影響:「今夏稍晚,這個框架將會開源。如此一來,您在 app 中使用的同一套 Swift API,現在也能在伺服器上執行,讓您在任何部署 Swift 的地方都能擁有完整的端到端 AI 工作流程。」1 您在裝置上早已透過 LanguageModelSession 呼叫的框架,將變成一個您也能在任何 Swift 執行之處運行的東西,包括您自己掌控的伺服器。

這帶來的是一種對稱性。Apple 今年致力於拓寬 Foundation Models 的指向範圍:裝置端模型、Private Cloud Compute,以及 Gemini 與 Claude 等第三方模型,相關內容已涵蓋於 Foundation Models 與 Private Cloud Compute。開源此框架則將這份觸及範圍朝另一個方向延伸,完全離開裝置。誠如該場演講所言:「您已經看到 Foundation Models 框架如何連接第三方模型、Private Cloud Compute 以及裝置端模型。您擁有所需的彈性,能為手邊的工作找到合適的模型。」1 這項開源步驟意味著一套程式設計模型即可橫跨用戶端與伺服器,而非兩套。

有一點需要精確把握:該框架尚未開源。Apple 說的是「今夏稍晚」,誠實的解讀是一項附帶季節的承諾,目前並未交付任何東西。下文所述的套件是一個獨立的成果,把兩者混為一談會誇大目前實際存在的內容。

已經上線的工具套件

您今天就能複製(clone)的部分是 FoundationModelsUtilities,這是一個在 GitHub 上以 Apache-2.0 授權釋出的開源 Swift 套件。2 它支援 Apple 平台以及 Ubuntu 等部分 Linux 發行版,這一點之所以重要,是因為它預示了框架本身今夏將走向的跨平台方向。2 該儲存庫將其內容描述為「正在浮現中且屬於實驗性質的模式」,因此請將這些 API 視為 Apple 走向的預覽,而非一份定案的契約。2

State of the Union 直接介紹了這個套件:「我們推出一個全新的開源 Swift 套件,內含眾多預先建構好的工具,協助您上手 skills 等概念以及脈絡管理的工具程式。」1 Apple 以一個真實的 app 為具體範例加以說明:「像 Tiimo 這樣的任務管理 app,便可運用此套件引入一個 skill,使其語氣與建議能因應使用者的資料而調整,提供個人化的摘要,協助使用者掌握一整天的節奏。」1 同一段話也點出了底層的根基:「這些來自開源套件的工具程式,是以名為 Dynamic Profiles 的全新基礎構件所打造的。」1

三個元件承載著這份承諾,而每一個都對應到 agentic Swift app 中的一個實際問題。

建立在 Dynamic Profiles 之上的 Skills API

第一個元件是 Skills API。此套件定義了一個符合 DynamicInstructionsSkills 型別,並透過 result builder 建構,搭配一個用於追蹤目前有哪些 skills 處於啟用狀態的 SkillActivations 型別。2 您可以用一段提示或一組指示來初始化單一的 Skill,並在某個 skill 應可在工作階段中途被移除時,將其標記為 allowsDeactivation: true2

其用途才是有趣之處。一個 skill 會在恰當時機將任務專屬的指示加入 LanguageModelSession 的對話記錄,避免對話記錄被某一輪對話並不需要的指示塞滿。2 隨之而來的是兩項具體的好處:工作階段得以避免脈絡污染,並最佳化首個 token 的產生時間,因為較短、較切題的對話記錄能讓模型在開始回應前更快完成處理。2 這套 Skills API 正是指示的恰時注入機制,其作用範圍精準落在指示真正重要的那一刻。

Dynamic Profiles 正是讓這一切得以實現的關鍵。在第三天的回顧中,Swift Intelligence Frameworks 資深工程經理 Lori Hylan-Cho 將 skills 直接定位在這項基本元件之上:「我們也推出了 Dynamic Profiles,它可說是支撐 skills 這類更高階事物的一項基礎技術;我們同樣會以套件的形式釋出 skills,讓大家能直接使用,或在其之上建立自己的抽象層,例如自己的 skills。」3 這番措辭相當精確。Apple 以一個套件的形式提供 skills,並期望開發者要嘛使用該套件,要嘛在同一套 Dynamic Profiles 基礎上建立自己的抽象層。

以 profile 修飾器進行歷史記錄管理

第二個元件處理脈絡問題的另一半:對話記錄會隨著 agentic 迴圈的執行而無止盡地增長。此套件提供了用於歷史記錄管理的 profile 修飾器,README 列出了三種策略。2 捨棄已完成的工具呼叫,會在已完成工具叫用的結果不再需要後,移除其往返的內容。滾動視窗策略則保留一段有界限的近期歷史,而非整份對話記錄。摘要化會將較舊的對話輪次壓縮成模型仍可據以推理的較短形式。2 每一種都是同一個旋鈕上的刻度:在不讓對話記錄膨脹到超出模型可有效處理的範圍下,維持其資訊量。

一場 WWDC 2026 lab 補足了摘要化修飾器的行為細節。以下內容轉述自一份本地端謄寫的 WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab 錄音;座談中描述了在每次提示開始時檢查對話記錄的大小,一旦超過開發者所設定的門檻,便將較舊的歷史折疊成單一的摘要化條目,並由此繼續。6 座談中提出了兩個對採用此功能至關重要的觀點。此修飾器可搭配任何後端運作,而不僅限於 Apple 的模型,因為任何符合語言模型協定的東西,都能免費繼承這些工具程式。6 座談中也陳述了一項貫穿整個套件的設計原則:任何內建於工具程式中的提示,包括摘要化的提示,都必須能被開發者覆寫,因此所釋出的預設值是一個供您調校的起點,而非一個您必須接受的固定行為。6

chat-completions 轉接器,深藏不露的一招

第三個元件是默默發揮最大作用的那一個。ChatCompletionsLanguageModel 能與任何使用 chat completions REST API 的伺服器溝通,並可選擇性地搭配引導式生成(guided generation)。2 其意涵相當重大:Foundation Models 的程式設計模型——其工作階段、工具、指示——都能指向任何 chat-completions 端點,而不僅限於 Apple 自家的模型。

最自然的搭配是一個本地端的組合。MLX-LM Server 能在 Mac 上以一個相容於 chat-completions 的 HTTP 伺服器形式執行,相關內容已涵蓋於 在 Mac 上以 MLX 執行 Agentic AI。將 ChatCompletionsLanguageModel 接上本地端的 MLX 伺服器,您便能讓 Foundation Models 的 API 介面驅動一個完全在您自有硬體上執行的模型。改為將其指向雲端端點,同一份程式碼便會呼叫一個託管的模型。正是這個轉接器,讓「Foundation Models」從 Apple 模型的名稱,轉變為一套您可任意指向的程式設計模型。

這個「任何後端皆可」的論點,已經有一個具名且實際出貨的範例。Anthropic 推出了 ClaudeForFoundationModels,這是一個採用 Apache-2.0 授權的套件,被描述為「Apple Foundation Models 的 Claude 支援」,它讓 Claude 符合框架的語言模型協定,因此一個 LanguageModelSession 驅動它的方式,就和驅動 Apple 裝置端模型的方式如出一轍。5 這正是由第三方具體實現的轉接器模式:一個您今天就能複製、且實作了框架所揭露之協定的實際後端。至於 Apple 自家,則點名了 Xcode 中對 Anthropic、OpenAI 與 Google 的內建整合,而 State of the Union 也直接宣布了與 Google 的合作。就協定而言,每一種情況的重點都相同:框架定義了接縫,而後端——無論是 Apple 的還是其他任何人的——都來填滿它。

token 計量,以及您正對抗的各種預算

歷史記錄管理之所以重要,正是因為這些預算很小,而今年的框架提供了一種精確的方式,讓您看清自己正花掉其中多少。LanguageModelSession.Response 現在帶有一個 usage 屬性,這是 iOS 27(beta)的新功能,文件記載為「關於此回應使用了多少 token 的資訊」。4 您可以從原本就會取回的回應上讀取它,因此用量計算會隨著工作一併進行,而不需要另外進行一次測量。

一場 WWDC 2026 lab 補上了文件略過的質地。以下內容轉述自一份本地端謄寫的 WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab 錄音;座談中描述了 response.usage 會回報輸入與輸出的 token 數、有多少 token 被快取,以及對推理模型而言,輸出 token 中有多少用於推理、又有多少用於最終答案。6 座談中稱 token 計量是一項呼聲很高的功能,並指出用於計算 token 與讀取系統模型脈絡大小的符號更早便已登場,於 iOS 26.4 推出,而今年則由 response.usage 補齊整幅圖像。6

唯有在知道上限時,得知數量才有幫助,而這場 lab 也明白地陳述了那些上限。轉述自同一份錄音,裝置端模型的脈絡大小維持在 4096 個 token 不變,而且它是一個輸入加輸出共用的視窗:誠如座談所言,輸入約 4,000 個 token,便只剩約 96 個給回應。6 Private Cloud Compute 將上限提高到 32K,同樣是一份橫跨輸入與輸出的共用預算。6 這些數字解釋了為何歷史記錄管理修飾器有其存在的價值。在一個 4096-token 的共用視窗上,一份不受節制增長的對話記錄不只會變慢;它還會排擠掉回應所需的空間,而這正是捨棄、滾動與摘要化策略所要防範的失敗。

同一屆 WWDC 第三種 skills 釋出形式

Apple 在本屆 WWDC 以三種截然不同的方式釋出了 skills,而這個工具套件是第三種。Xcode 27 工具鏈內含 SwiftUI 的 agent skills,您可透過 xcrun agent skills export 取出,相關內容已涵蓋於 Xcode 27 推出可隨處匯出的 Agent Skills。Game Porting Toolkit 4 則以一個來自 GitHub marketplace 的 Claude Code 外掛形式,散布 Metal 與 MetalFX 的移植 skills,相關內容已涵蓋於 Game Porting Toolkit 4:在 Mac 上進行 Agentic 遊戲移植。Foundation Models 工具套件則新增了第三種形態:以執行階段程式碼形式呈現的 Skill API,是一個您在 app 中組合的 Swift 型別,而非一個您匯出的 markdown 檔案或安裝的外掛。

這三種釋出形式回答的是不同的問題。Xcode skills 與 GPTK 外掛把 Apple 的專業知識散布給您所運行的任何 agent。而工具套件則給您一套建構元件,讓您能在自己的工作階段中、針對自己的資料、以自己的啟用邏輯來編寫並啟用 skills。Apple 同時提供經過策劃的知識,以及讓您打造自己版本的機制,兩者都建立在 Lori 所描述的同一套 Dynamic Profiles 基礎之上。3

重點整理

對於正在打造 AI 功能的 Swift 開發者: - 規劃時應以一套橫跨用戶端與伺服器的程式設計模型為前提。Foundation Models 框架將於「今夏稍晚」開源,因此您今天所撰寫的 Swift API,正是屆時將在伺服器端執行的那一套。1 請將其視為一項藍圖承諾,而非當前已具備的能力。 - 現在就複製 FoundationModelsUtilities,以預覽 Skills API 與歷史記錄管理修飾器,但請將該儲存庫「正在浮現中且屬於實驗性質」的定位,解讀為其介面可能變動的訊號。2

對於管理脈絡與成本的團隊: - 善用 Skills API 在恰當時機注入任務專屬的指示,藉此減少脈絡污染並改善首個 token 的產生時間,而非把每一項指示都預先塞進對話記錄。2 - 套用歷史記錄管理修飾器(捨棄已完成的工具呼叫、滾動視窗,或摘要化),避免冗長的 agentic 迴圈成長到超出模型的有效脈絡。2

對於執行本地端或第三方模型的開發者: - 使用 ChatCompletionsLanguageModel 將 Foundation Models 程式設計模型指向任何 chat-completions 端點,包括 Mac 上的本地端 MLX-LM Server,如此一套 API 介面便能驅動裝置端、本地伺服器或雲端的模型。2

常見問題

Foundation Models 框架現在開源了嗎?

尚未。在 WWDC 2026 上,Apple 表示該框架將於「今夏稍晚」開源,讓同一套 Swift API 能在伺服器上執行,並提供「在任何部署 Swift 的地方都能擁有完整的端到端 AI 工作流程」。1 截至宣布之時,這是一項附帶時間表的承諾,而非已交付的版本。GitHub 上那個獨立的工具套件,才是您現在就能使用的東西。2

FoundationModelsUtilities 套件是什麼?

FoundationModelsUtilities 是一個在 GitHub 上、以 Apache-2.0 授權的開源 Swift 套件,支援 Apple 平台以及 Ubuntu 等部分 Linux 發行版。2 它提供一套 Skills API、歷史記錄管理的 profile 修飾器,以及一個 ChatCompletionsLanguageModel 轉接器。該儲存庫將其內容描述為「正在浮現中且屬於實驗性質的模式」。2 此套件與框架有所區別;它並非那個正被開源的框架。

Skills API 如何運作?

此套件定義了一個符合 DynamicInstructionsSkills 型別,透過 result builder 建構,並搭配一個追蹤已啟用 skills 的 SkillActivations 型別。2 您可以用一段提示或一組指示來初始化一個 Skill,並可設定 allowsDeactivation: true。一個 skill 會在恰當時機將任務專屬的指示注入 LanguageModelSession 的對話記錄,藉此避免脈絡污染並最佳化首個 token 的產生時間。2 Skills 建立在 Dynamic Profiles 之上,Apple 將其描述為支撐 skills 這類更高階事物的「一項基礎技術」。3

我可以將 Foundation Models 搭配非 Apple 的模型使用嗎?

可以,透過此套件的 ChatCompletionsLanguageModel,它能與任何使用 chat completions REST API 的伺服器溝通,並可選擇性地搭配引導式生成。2 您可以將其指向 Mac 上的本地端 MLX-LM Server,或一個雲端端點,讓 Foundation Models 程式設計模型驅動 Apple 自家以外的模型。

這個套件與 Apple 在 WWDC 2026 推出的其他 skills 有何關聯?

此套件是本屆 WWDC 第三種 skills 的釋出形式。Xcode 27 內含可透過 xcrun agent skills export 匯出的 SwiftUI skills(相關內容涵蓋於 agent skills 匯出一文),而 Game Porting Toolkit 4 則以 Claude Code 外掛形式釋出移植 skills(GPTK 4 一文)。工具套件的不同之處在於,它提供的是以執行階段 Swift 程式碼形式呈現的 Skill API,讓您在自己的 app 中組合、建立在 Dynamic Profiles 之上,如此您便能編寫並啟用自己的 skills。2


這項開源步驟,將 Apple 今年朝裝置端建立的同一份觸及範圍進一步延伸:Foundation Models 與 Private Cloud Compute 涵蓋了該框架已橫跨的裝置端、Private Cloud Compute 以及第三方模型路徑。skills 策略貫穿了整屆 WWDC,從 Xcode 27 推出可隨處匯出的 Agent Skills 中的 Xcode 工具鏈,到 在 Mac 上以 MLX 執行 Agentic AI 中的本地端模型搭配,其中 MLX-LM Server 為 ChatCompletionsLanguageModel 提供了一個可呼叫的 chat-completions 端點。完整的系列專區為 Apple 生態系系列

參考資料


  1. Apple, WWDC 2026 session 102, Platforms State of the Union. Source for the open-source commitment (“Later this summer, the framework will be open source. So the same Swift APIs you use in your app can now run on your server too, giving you a complete end-to-end AI workflow anywhere you deploy Swift”), the package introduction (“we’re introducing a new open source Swift package, loaded with pre-built tools to help you get started with concepts like skills and utilities for context management”), the Tiimo example, the flexibility framing (“You’ve seen how the Foundation Models framework connects to third-party models, Private Cloud Compute, and the on-device model”), and the statement that “these utilities from the open source package are created with new fundamental building blocks called Dynamic Profiles.” 

  2. Apple, foundation-models-utilities. Source for the package name FoundationModelsUtilities, the Apache-2.0 license, support for Apple platforms and select Linux distributions like Ubuntu, the “emerging and experimental patterns” framing, the Skills API (the Skills type conforming to DynamicInstructions built with a result builder, SkillActivations tracking active skills, individual Skill objects initialized with a prompt or instructions, the optional allowsDeactivation: true, and the just-in-time transcript injection that prevents context pollution and optimizes time-to-first-token), the history-management profile modifiers (dropping completed tool calls, rolling-window strategies, and summarization), and the ChatCompletionsLanguageModel that communicates with any server using the chat completions REST API with optional guided generation. 

  3. Apple, WWDC 2026 session 398, Dub Dub Daily: Day 3. Source for the Lori Hylan-Cho interview, in which the Senior Engineering Manager for Swift Intelligence Frameworks describes Dynamic Profiles as “kind of a foundational technology for sort of higher order things like skills, which we’re also releasing as a package, so that people can use those or build their own abstractions like skills.” 

  4. Apple Developer Documentation: LanguageModelSession.Response.usage (iOS 27.0 beta). “Information about how many tokens were used by this response.” A property on LanguageModelSession.Response, new in iOS 27 (beta). 

  5. Anthropic, ClaudeForFoundationModels. Apache-2.0, described as “Claude support for Apple Foundation Models.” The package conforms Claude to the Foundation Models framework’s language model protocol, so a LanguageModelSession drives it the same way it drives Apple’s on-device model. A live third-party backend implementing the framework’s language model protocol. 

  6. Apple, WWDC 2026 lab 8121, Coding Intelligence, Machine Learning & AI Group Lab. Paraphrased from a locally transcribed recording of the WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab; Apple published no captions for the labs, so the wording here is a paraphrase, not a quotation. Source for the panel’s description of response.usage reporting input and output tokens, cached tokens, and the reasoning-versus-answer split for reasoning models; the characterization of token accounting as a highly requested feature; the note that token-counting and context-size symbols arrived in iOS 26.4; the on-device model’s unchanged 4096-token shared input-plus-output window (roughly 4,000 tokens in leaving about 96 for the response) and the 32K shared budget on Private Cloud Compute; the summarization modifier collapsing older history into a single entry past a developer-set threshold and working with any backend; and the design principle that any prompt baked into the package must be overwritable by the developer. 

相關文章

在 Private Cloud Compute 上執行的 Foundation Models

iOS 27 在 Private Cloud Compute 上新增了伺服器規模的 Foundation Model,兼顧裝置端隱私,並提供一套協定讓您接入自己的 LLM 供應商。

6 分鐘閱讀

iOS 27 全面導入裝置端 AI:Spotlight 與媒體

iOS 27 將裝置端模型貫穿整個系統:SpotlightSearchTool 讓 Core Spotlight 以 LLM 為基礎,AVFoundation 則在裝置上直接產生字幕。

3 分鐘閱讀

AI代理技能需要行為稽核,而不是通過率

即使通過率持平,AI代理技能仍可能改變行為。建立信任之前,行為稽核會比較追蹤、宣稱能力與副作用。

2 分鐘閱讀