Skip to content

FOUNDATION MODELS FRAMEWORK · SWIFT · PYTHON

Foundation Models フレームワーク:アプリのためのオンデバイス LLM セッション

Foundation Models フレームワークは Apple Intelligence を支えるモデルのためのネイティブ API です。セッションを作成し、必要なら返してほしい Swift 型を宣言し、モデルが呼び出せるツールを追加して、回答をストリーミングします。重みの配布もサーバーもトークン課金も不要です。WWDC26 では画像入力、Dynamic Profiles、差し替え可能な LanguageModel プロトコル、Python SDK、評価機能が追加されました。

Swift での最初のセッション

利用可否を確認し、指示付きでセッションを作成して質問します。構造化生成は自由テキストを型付き Swift 値に変換し、レシート、フォーム、スクリーンショットの解析を実用的にします。

Swift · FoundationModels
import FoundationModels

// Check that Apple Intelligence and the on-device model are available first.
guard case .available = SystemLanguageModel.default.availability else { return }

let session = LanguageModelSession(instructions: "You are a concise assistant.")
let answer = try await session.respond(to: "Summarise this receipt in one sentence.")
print(answer.content)

// Guided generation: the model fills a Swift type instead of free text.
@Generable
struct Receipt {
    @Guide(description: "Merchant name") var merchant: String
    @Guide(description: "Total amount in the receipt currency") var total: Double
}
let receipt = try await session.respond(to: "Extract the merchant and total.", generating: Receipt.self).content

モデルバックエンドの選択(WWDC26)

セッションは LanguageModel プロトコルに準拠する任意のモデルで駆動できます。オンデバイスのシステムモデルが既定のままで、Private Cloud Compute は同じプライバシー保証で Apple のサーバーモデルを提供し、CoreAILanguageModel と MLXLanguageModel はオープンモデルをローカルで実行、Claude や Gemini などのクラウドプロバイダも同じ API の背後に接続できます。

Swift · LanguageModel protocol
// WWDC26: any provider can back a session through the LanguageModel protocol.
let session = LanguageModelSession(model: SystemLanguageModel.default)          // on-device AFM 3 Core
// let session = LanguageModelSession(model: PrivateCloudComputeLanguageModel()) // Apple server models
// let session = LanguageModelSession(model: MLXLanguageModel(...))              // open-source local models
// Third-party cloud providers can conform to LanguageModel and plug in the same way.

画像、ツール、Dynamic Profiles

マルチモーダルプロンプトでは画像とテキストを一緒に渡し、写真についての質問に答えられます。FastVLM と同じタスクをシステムモデルで実行できます。Vision フレームワークの OCR やバーコード読み取りは呼び出し可能なツールとしてモデルに公開できます。Dynamic Profiles は継続中のセッション内でモデル、ツール、指示を切り替え、文脈を失わずにオンデバイスの素早い回答からサーバーモデルへ移行できます。

Python SDK、fm CLI、評価

WWDC26 セッション 334 では、Mac 上のシステムモデルに対してプロンプトをスクリプト実行する Python SDK と fm コマンドラインツールを、セッション 298/299/335 ではリリース前にプロンプトをテストする評価フレームワークを解説しています。プロンプト設計を素早く試作し、最良のものを Swift に移植してください。

FastVLM を使うべき場合

アプリが Apple Intelligence 対応デバイスで動作し、ダウンロード不要でシステム管理の推論を望むならフレームワークを使います。特定のオープンモデル、Web や Linux を含むクロスプラットフォーム対応、量子化と遅延の制御、旧デバイスの対応が必要なら、MLX、Core ML、ブラウザ経由で FastVLM を使ってください。

よくある質問

フレームワークはオフラインで動きますか?

SystemLanguageModel の場合ははい。推論は端末上で実行されます。Private Cloud Compute とサードパーティは通信が必要です。

API は Core ML と同じですか?

違います。Core ML(および WWDC26 の後継 Core AI)は自分で変換して同梱するモデルを実行します。Foundation Models フレームワークは Apple 提供モデル、または WWDC26 以降は LanguageModel に準拠する任意のプロバイダ上の高レベルなセッション API です。