第 63 章
活用 Foundation Models 的 @Generable 與 @Guide 製作測驗 App
在前一章中,我們介紹了 Foundation Models 框架,並示範了如何用它來進行基本的內容生成。那個過程相當簡單——你提供一個提示詞(prompt),等幾秒鐘,就能獲得自然語言的回應。在我們的範例中,我們建立了一個簡單的問答 App,讓使用者可以提問,App 則直接顯示生成的文字。
但如果回應變得更複雜——你需要把非結構化文字轉換為結構化的物件呢?
舉例來說,假設你請模型產生一個食譜,然後你想把回應轉換成一個 Recipe
物件,裡面包含 name
、ingredients
和 instructions
等屬性。
難道你需要手動解析文字並將每個欄位對應到資料模型嗎?
iOS 26 中的 Foundation Models 框架提供了兩個強大的新巨集:@Generable
和 @Guide
,可以幫助開發者簡化這個流程。
在這一章中,我們將探索這些巨集的運作方式,以及如何利用它們從模型回應中直接產生結構化資料。
範例 App

我們將建立一個簡單的測驗 App,用來展示如何使用 Foundation Models 產生結構化內容。在這個案例中,我們會產生給英文學習者使用的單字測驗題目。
這個 App 會顯示一題多選題,包含四個選項,讓使用者可以互動地測驗自己的詞彙知識。每一題問題都是由裝置端語言模型產生,並透過 @Generable
巨集自動解析為 Swift 的 struct。
這個範例展示了開發者如何從基本的文字生成進一步運用 Foundation Models 來建立結構化內容。
想更深入學習SwiftUI和下載完整程式碼?你可以從 AppCoda網站購買《精通 SwiftUI》完整電子版。