您可以使用 Firebase AI Logic,透過混合式推論建構 AI 輔助 Apple 應用程式和功能。混合推論功能可讓您在可用時,使用裝置端模型 (特別是 Apple 的 Foundation Models 架構) 執行推論,並在無法使用時,順暢地改用雲端託管的 Google 模型 (反之亦然)。
本頁說明如何開始使用用戶端 SDK,以及其他設定選項和功能,例如溫度參數。
請注意,如果 Apple 應用程式使用 Firebase AI Logic SDK 12.13.0 以上版本,並在已啟用 Apple Intelligence 的裝置上執行,則支援透過 Firebase AI Logic 進行裝置端推論。並受適用於 Apple 基礎模型架構的使用規定約束。
建議用途
使用裝置端模型進行推論的優點:
- 強化隱私
- 免付費推論
- 離線功能
使用混合功能提供的服務:
- 無論使用者的裝置為何,都能為所有消費者提供類似的應用程式體驗
- 無論網際網路連線、配額限制或裝置功能如何,都能提高生成式 AI 功能的可用性
支援的功能、API 和裝置
使用 Firebase AI Logic 實作混合式和裝置端推論前,請先詳閱本節,瞭解 Apple 應用程式支援的功能。
裝置端推論支援的功能
裝置端推論僅支援文字生成,具體來說,就是以下文字生成功能:
請務必查看本頁底部的尚未支援的混合式或裝置端推論詳細清單。
支援的 API 和裝置
雲端內推論會使用您選擇的 Gemini API 供應商 (Gemini Developer API 或 Agent Platform Gemini API (formerly Vertex AI))。
裝置端推論功能使用 Apple 的基礎模型架構,僅適用於已啟用 Apple Intelligence 的裝置。啟用 Apple Intelligence 時,系統會自動下載裝置端模型。
開始使用
請務必詳閱上述章節,瞭解支援的功能、API 和裝置。
這些入門步驟說明瞭傳送任何支援的提示要求時,所需的一般設定。
步驟 1:設定 Firebase 專案,並將應用程式連結至 Firebase
登入 Firebase 控制台,然後選取 Firebase 專案。
在 Firebase 控制台中,依序前往「AI Services」(AI 服務) >「AI Logic」(AI 邏輯)。
按一下「開始使用」,啟動導覽工作流程,協助您為專案設定必要 API 和資源。
如果出現提示,請按照畫面上的指示註冊應用程式,並將 Firebase 設定新增至應用程式。
系統要求選擇「Gemini API 供應商」時,建議選取 Gemini Developer API,即可快速開始使用,不必付費。
日後隨時可以設定 Agent Platform Gemini API (formerly Vertex AI) (以及帳單相關規定)。
繼續執行工作流程,為 Firebase AI Logic 設定必要的 API 和相關聯服務。
2026 年 7 月上旬起,這個工作流程階段會自動強制執行Firebase App Check,用於 AI Logic,這是一項重要服務,可在應用程式直接存取時,協助保護 Gemini API。在開始使用時 (請參閱本指南後續步驟),您必須在本機開發環境中,設定 App Check 偵錯服務,以便強制執行 App Check。
請繼續閱讀本指南的下一個步驟,將必要的 SDK 新增至應用程式。
步驟 2:新增必要的 SDK
使用 Swift Package Manager (SPM) 安裝及管理 Xcode 依附元件。混合支援僅適用於 SPM。
Firebase AI Logic 程式庫提供 API,可與生成式模型互動。這個程式庫已納入適用於 Apple 平台的 Firebase SDK (firebase-ios-sdk)。
如果您已使用 Firebase,請確認 Firebase 套件為 12.13.0 以上版本。
在 Xcode 中保持開啟應用程式專案,然後依序點選「File」(檔案) 和「Add Package Dependencies」(新增套件依附元件)。
系統提示時,請新增 Firebase Apple 平台 SDK 存放區:
https://github.com/firebase/firebase-ios-sdk選取最新 SDK 版本。
選取
FirebaseAILogic和FirebaseAppCheck程式庫。
完成後,Xcode 就會自動開始在背景中解析並下載依附元件。
步驟 3:設定 App Check 偵錯服務,以便在本機開發
2026 年 7 月上旬起,在控制台設定 AI Logic 的引導式工作流程中,系統會自動強制執行 Firebase App Check,以保護Gemini API。如要進行本機開發,您需要設定 App Check debug provider,略過認證程序,同時維持 App Check 的強制執行狀態。
在模擬器中以互動方式執行應用程式時 (例如在本機開發期間),請按照下列步驟使用偵錯服務:
在 Xcode 專案中,匯入
FirebaseAppCheck並使用偵錯服務工廠 初始化 App Check,然後再設定Firebase。import SwiftUI import FirebaseCore import FirebaseAppCheck @main struct YourApp: App { init() { let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure() } var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }取得偵錯權杖:
在模擬器或測試裝置上啟動應用程式。
開啟 Xcode 控制台,找出 App Check 偵錯權杖。例如:
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.複製權杖 (例如
123a4567-b89c-12d3-e456-789012345678)。
向 App Check 註冊偵錯權杖:
在 Firebase 控制台中,依序前往「Security」(安全性) >「App Check」 >「Apps」(應用程式) 分頁標籤。
找到應用程式,按一下溢位選單 (),然後選取「Manage debug tokens」。
按照畫面上的指示註冊偵錯權杖。
如要進一步瞭解偵錯服務 (包括如何取得新的偵錯權杖),請參閱官方 App Check 文件。
步驟 4:初始化服務並建立模型工作階段例項
|
按一下您的Gemini API供應商,即可在這個頁面查看供應商專屬內容和程式碼。 |
將提示要求傳送至模型前,請先完成下列設定。
為所選 Gemini API 供應商初始化服務。
使用
HybridModel建立GenerativeModelSession執行個體。根據偏好設定
primary和secondary模型。您可以設定嘗試推論的順序:先嘗試裝置端推論,但允許回退至雲端:將
primary設為「系統」模型,並將secondary設為雲端模型。先嘗試雲端推論,但允許備援至裝置端:將
primary設為雲端模型,並將secondary設為「系統」模型。
請注意,SDK 只能設定單一
model,也就是說,SDK 只會嘗試在裝置端或雲端進行推論。不過,如要使用混合體驗,您需要建立HybridModel,並設定primary和secondary模型。如要進一步瞭解「推論模式」的行為 (嘗試推論的順序),請參閱設定選項。
以下範例說明如何先嘗試在裝置端推論,但允許改用雲端託管模型:
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a cloud model that supports your use case.
let cloudModel = ai.geminiModel(name: "GEMINI_MODEL_NAME")
// Initialize an on-device model that supports your use case.
let systemModel = FirebaseAI.SystemLanguageModel.default
// Create a Hybrid Model.
// Provide your preferred model as `primary` and your fallback model as `secondary`.
// In this example, attempt to use on-device model; otherwise, fall back to cloud.
let hybridModel = HybridModel(
primary: systemModel,
secondary: cloudModel
)
// Create a GenerativeModelSession with the HybridModel created earlier.
let session = firebaseAI.generativeModelSession(
model: hybridModel,
)
步驟 5:向模型傳送提示要求
本節說明如何執行下列操作:
根據純文字輸入內容生成文字
| 試用這個範例前,請務必先完成本指南的「開始使用」一節。 |
如要從含有文字的提示生成文字,請使用 respond(to:),如下所示:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call `respond(to:)` with the text input
let response = try await session.respond(to: prompt)
print(response.content)
從純文字輸入串流文字
| 試用這個範例前,請務必完成本指南的「入門」一節。 |
您可以使用串流處理部分結果,不必等待模型生成完整結果,即可加快互動速度。如要從包含文字的提示逐句顯示生成的文字,請使用 streamResponse(to:),如下所示:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call `streamResponse(to:)` with the text input
let stream = session.streamResponse(to: prompt)
for try await snapshot in stream {
print(snapshot.content)
}
你還可以做些什麼?
您可以為混合式體驗使用各種額外的設定選項和功能:
混合式或裝置端推論尚不支援的功能
由於這是實驗性版本,因此不支援 Firebase AI Logic 或雲端託管模型的所有功能。
混合或裝置端實作不支援 Gemini Live API 和伺服器提示詞範本。此外,請勿依賴計數權杖,因為雲端託管模型和裝置端模型的計數會有所不同,因此沒有直覺式的備用方案。
裝置端推論尚不支援下列功能。 如要使用上述任一功能,建議只使用雲端託管模型,確保體驗一致。
依據圖片、音訊、影片和文件 (PDF) 等多模態輸入內容生成文字
生成圖片、音訊或影片等媒體
傳送超過 4096 個詞元 (或約 3000 個英文字) 的要求。
為裝置端模型提供內建工具,協助生成回覆 (例如執行程式碼、網址背景資訊和以 Google 搜尋強化事實基礎)
Firebase 控制台中的 AI monitoring 功能不會顯示任何裝置端推論資料 (包括裝置記錄)。不過,任何使用雲端託管模型的推論,都可以像其他推論一樣,透過 Firebase AI Logic 監控。
其他限制
除了上述限制外,裝置端推論還有下列限制:
應用程式的使用者必須使用已啟用 Apple Intelligence 的裝置。
只有在應用程式位於前景時,才能執行裝置端推論。
提供有關 Firebase AI Logic 的使用體驗意見回饋