Apple Developer onepage/WWDC26
#WWDC26#FoundationModels#macOS27#Python2026-06-08 · 16:36

把 Apple Foundation Models 從 app API 變成 terminal + Python workflow

這場 session 說明 macOS 27 新增的 fm command line tool 與 Foundation Models SDK for Python:同一套 guided generation、tool calling 與結構化輸出,現在可進入 shell automation、Jupyter 與 evaluation pipeline。

// 一句話結論

Apple 不是只把 Foundation Models 多包一層語言 binding,而是把「提示測試、檔案自動化、結構化輸出、品質評估」拉進開發者每天會用的 Terminal 與 Python 分析流程。

Apple Developer · WWDC26 · Video ID: pvefPi4J2G4Apple Developer 官方頁
Content map

這支影片在拆三個 Foundation Models 落地問題

探索速度

不用重建 Xcode 專案也能試 prompt

fm chat 與 fm respond 讓開發者直接在 Terminal 測 on-device model 或 Private Cloud Compute model,適合快速比較 prompt、保留對話與做一次性任務。

自動化

structured output 讓 shell script 可相信結果格式

影片示範用 fm schema object 定義輸出 schema,再讓模型把資料夾檔案分成 final / draft。重點不是整理檔案本身,而是 LLM 結果能回到可機械處理的 JSON。

Python 生態

ML 與資料分析 workflow 不必繞回 Swift

Foundation Models SDK for Python 支援文字與圖片輸入、streaming、tool calling、guided generation,讓熟悉 Pandas、Jupyter、matplotlib 的團隊能直接做 prototype 與分析。

品質改善

prompt 要用 evaluation pipeline 驗證

cart completion case study 用三個 prompt implementation 產生結果,再用 server judge model 針對多餘項目、遺漏項目與 hallucination 評分,最後用圖表輔助決策。

Implementation flow

從「手動問模型」到「可重跑實驗」的導入路徑

1

先用 fm chat 找出模型行為邊界

在 Terminal 裡測 prompt、追問、切換 model,確認 on-device model 是否足夠;複雜任務再考慮 Private Cloud Compute,但要注意 usage limits。

2

把一次性 prompt 改成 fm respond

需要進入 shell script 時,用 inline response 取代互動對話;若後續要搬檔、建檔或呼叫其他工具,輸出格式就要先收斂。

3

用 schema 固定輸出契約

不要讓 shell 靠文字猜測模型結果。用 schema 描述欄位,例如 final files 與 draft files,讓回傳結果能被 script 明確解析。

4

進入 Python SDK 做工具與結構化 generation

在 prototype 裡建立 session、提供 tools 讀取 app context,並用 generable 型別把模型輸出轉成可驗證資料結構。

5

用 dataset + judge + 圖表做 prompt 迭代

把候選 prompt 放進同一批資料跑分,將 excess、missing、hallucination 等錯誤分開看。這比憑單次 demo 感覺調 prompt 更可靠。

實務啟發:fm CLI 是開發內迴圈,不是產品功能

這支影片最值得收的是 workflow 定位:fm 適合讓開發者快速測試與自動化本機任務,但正式 app 仍應思考 Foundation Models framework 的可用性、隱私、model profile、錯誤處理與 UI fallback。

對 automation 來說,模型回傳的自然語言不應直接驅動 destructive action。影片示範的檔案整理場景雖然簡單,但真正導入時應先 dry run、顯示 diff、保留 backup,再執行搬移或刪除。
API / framework 重點fm respond、fm schema object、Python LanguageModelSession、tool calling、guided generation、structured output、server judge model。
遷移注意事項Python SDK 要求 Python 3.10+、Xcode 與 Apple Silicon Mac;macOS 27 的 fm 是本機工具鏈,CI 與非 macOS 環境不可假設可用。

風險與測試清單

如果把 fm 放進團隊腳本,至少要測三件事:輸出 schema invalid 時如何停止、on-device / Private Cloud Compute 模型切換是否改變品質、以及敏感資料是否被送進不該使用的模型路徑。

如果使用 Python SDK 做 evaluation,則要把資料集、judge prompt、score dimensions 與聚合方式版本化。否則 prompt 變好或變壞,很容易只是 judge drift 或資料抽樣造成的假象。

// TL;DR