Lors de la WWDC 2026, Apple a ouvert le framework Foundation Models aux adaptateurs de modèles tiers. Cela signifie que vous pouvez accéder aux modèles hébergés dans le cloud (comme Gemini) via le framework Foundation Models en utilisant la même API que celle que vous utiliseriez pour accéder aux modèles sur l'appareil.
Dans votre application, vous pouvez échanger l'instance de modèle pour acheminer vos requêtes vers l'inférence sur l'appareil ou dans le cloud en fonction de votre cas d'utilisation :
- Les modèles sur l'appareil offrent une confidentialité maximale, sont sans frais et fonctionnent hors connexion.
- Les modèles Gemini hébergés dans le cloud offrent de grandes fenêtres de contexte, des fonctionnalités avancées et une plus grande capacité de raisonnement.
Vous pouvez accéder aux modèles Gemini hébergés dans le cloud via le framework Foundation Models d'Apple en utilisant le SDK Firebase pour les plates-formes Apple, en particulier la bibliothèque Firebase AI Logic. Ce guide vous explique comment vous lancer.
Pour protéger l'accès aux modèles Gemini, ce guide vous explique également comment configurer Firebase App Check, qui est essentiel, même pendant le développement.
Prérequis
Installez la dernière version bêta de Xcode 27.
Un simulateur de plate-forme Apple ou un appareil physique, tous deux exécutant la version bêta de l'OS correspondant (par exemple, iOS 27 bêta).
Nouveau projet Xcode d'une application pour les plates-formes Apple utilisant une interface SwiftUI.
Modèles Gemini compatibles
L'intégration au framework Foundation Models d'Apple est compatible avec les modèles Gemini suivants.
Modèles à usage général
gemini-3.1-pro-previewgemini-3.5-flashgemini-3.1-flash-lite
Modèles de génération d'images
gemini-3-pro-image(alias "Nano Banana Pro")gemini-3.1-flash-image(alias "Nano Banana 2")
Les modèles Gemini Live API et Imagen ne sont pas acceptés. Notez que les modèles Gemini 2.5 sont techniquement compatibles, mais qu'ils ne sont pas recommandés pour les nouveaux projets et qu'ils nécessitent une configuration spéciale qui n'est pas abordée dans ces guides.
Étape 1 : Créer un projet Firebase
Nous vous recommandons de commencer par un nouveau projet Firebase pour explorer cette intégration.
Connectez-vous à la console Firebase.
Cliquez sur Créer un projet Firebase.
Suivez les instructions à l'écran. Vous n'avez pas besoin d'activer Google Analytics.
Étape 2 : Associez votre application à Firebase
Pour associer votre application à Firebase, vous devez l'enregistrer dans votre projet Firebase et ajouter un fichier de configuration à votre codebase.
Au centre de la page Vue d'ensemble du projet, cliquez sur l'icône iOS+ pour lancer le workflow de configuration.
Enregistrez votre application :
Saisissez l'ID du bundle de votre application. Assurez-vous qu'il correspond à l'ID du bundle du projet que vous créez dans Xcode.
Cliquez sur Enregistrer l'application.
Ajoutez le fichier de configuration Firebase. Ce fichier contient les paramètres permettant au SDK Firebase de se connecter à votre projet Firebase.
Cliquez sur Télécharger
pour obtenir votre fichier de configuration.GoogleService-Info.plist Déplacez
à la racine de votre projet Xcode et ajoutez-le à toutes les cibles.GoogleService-Info.plist Cliquez sur Next (Suivant) dans la console Firebase.
Le workflow de la console fournit des instructions génériques pour ajouter le SDK Firebase à votre application. Passez donc à l'étape suivante de ce guide pour obtenir des instructions spécifiques à Firebase AI Logic.
Étape 3 : Ajoutez les bibliothèques Firebase et initialisez Firebase dans votre application
Utilisez Swift Package Manager pour ajouter les bibliothèques Firebase requises :
Dans Xcode, à partir de votre projet d'application ouvert, sélectionnez File > Add Packages (Fichier > Ajouter des packages).
Saisissez l'URL du dépôt du SDK Firebase pour Apple :
https://github.com/firebase/firebase-ios-sdkSélectionnez Branche comme règle de dépendance et saisissez
wwdc26-preview.Cliquez sur Ajouter un package. Xcode résout et télécharge les dépendances.
Lorsque vous y êtes invité, ajoutez les bibliothèques
FirebaseAILogicetFirebaseAppCheckà la cible de votre application.
Initialisez Firebase lorsque votre application démarre en ajoutant le code suivant au point d'entrée principal de votre application :
import SwiftUI import FirebaseCore @main struct YourApp: App { init() { FirebaseApp.configure() } var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
Étape 4 : Activer et sécuriser les services Firebase
Maintenant que votre application est configurée pour utiliser Firebase, vous devez activer le service Firebase AI Logic et protéger l'accès à ses API associées à l'aide de Firebase App Check.
Étape 4a : Configurer Firebase AI Logic dans votre projet Firebase
Dans la console Firebase, accédez à Services d'IA > Logique d'IA.
Cliquez sur Commencer pour lancer le workflow de configuration guidée.
Lorsque vous êtes invité à choisir un "fournisseur d'API Gemini", nous vous recommandons de sélectionner l'API Gemini Developer, qui vous permet de commencer rapidement et sans frais.
Vous pourrez toujours configurer Vertex AI Gemini API (et ses exigences de facturation) à tout moment.
Poursuivez le workflow pour configurer les API requises et les services associés pour Firebase AI Logic.
À partir de début juillet 2026, cette étape du workflow appliquera automatiquement Firebase App Check pour AI Logic, qui est un service critique pour protéger Gemini API lorsqu'il est directement accessible depuis votre application. Pour commencer (voir les étapes plus loin dans ce guide), vous devrez configurer le fournisseur de débogage App Check pour le développement local lorsque App Check est appliqué.
Étape 4b : Configurez le fournisseur de débogage App Check pour le développement local
Pour le développement local, vous devez configurer le fournisseur de débogage App Check afin de contourner l'attestation tout en continuant à appliquer App Check.
Dans votre projet Xcode, importez
FirebaseAppChecket initialisez App Check avec la fabrique de fournisseurs de débogage avant de configurerFirebase.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() } } } }Obtenez votre jeton de débogage :
Lancez votre application dans le simulateur ou sur votre appareil de test.
Ouvrez la console Xcode et recherchez le jeton de débogage App Check. Exemple :
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.Copiez le jeton (par exemple,
123a4567-b89c-12d3-e456-789012345678).
Enregistrez votre jeton de débogage auprès de App Check :
Dans la consoleFirebase, accédez à l'onglet Applications : Sécurité > App Check.
Recherchez votre application, cliquez sur le menu à développer (), puis sélectionnez Gérer les jetons de débogage.
Suivez les instructions à l'écran pour enregistrer votre jeton de débogage.
Pour en savoir plus sur le fournisseur de débogage (y compris sur la façon d'obtenir un nouveau jeton de débogage), consultez la documentation officielle App Check.
Étape 5 : Initialisez le service AI Logic dans votre application
|
Cliquez sur votre fournisseur Gemini API pour afficher le contenu et le code spécifiques à ce fournisseur sur cette page. |
Maintenant que Firebase et App Check sont configurés, vous pouvez initialiser le service Firebase AI Logic dans votre application.
import FoundationModels
import FirebaseCore
import FirebaseAILogic
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a `geminiLanguageModel` with a Gemini model that supports your use case.
let model = ai.geminiLanguageModel(name: "gemini-3.5-flash")
Étape 6 : Envoyer une requête à un modèle Gemini
Une fois Firebase AI Logic configuré, protégé et initialisé dans votre application, vous êtes prêt à envoyer une requête à un modèle Gemini.
L'exemple suivant montre le type de requête le plus élémentaire : générer du texte à partir d'une requête textuelle uniquement :
import FoundationModels
import FirebaseCore
import FirebaseAILogic
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a `geminiLanguageModel` with a Gemini model that supports your use case.
let model = ai.geminiLanguageModel(name: "gemini-3.5-flash")
// Create a session by injecting the model into Apple's `LanguageModelSession`.
let session = LanguageModelSession(model: model)
// Generate a text response to a prompt.
let response = try await session.respond(to: "Write a story about a magic backpack.")
print(response.content)
Les modèles Gemini sont également compatibles avec d'autres types de requêtes, comme l'analyse d'images et de PDF, la génération de données JSON structurées et la génération d'images (à l'aide des modèles "Nano Banana"). Consultez des exemples de ces types de requêtes dans la documentation ou dans l'application exemple.
Diffuser la réponse
Vous pouvez obtenir des interactions plus rapides en n'attendant pas le résultat complet de la génération du modèle et en utilisant plutôt le streaming pour gérer les résultats partiels. Pour diffuser la réponse, utilisez streamResponse(to:) au lieu de respond(to:).
import FoundationModels
import FirebaseCore
import FirebaseAILogic
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a `geminiLanguageModel` with a Gemini model that supports your use case.
let model = ai.geminiLanguageModel(name: "gemini-3.5-flash")
// Create a session by injecting the model into Apple's `LanguageModelSession`.
let session = LanguageModelSession(model: model)
// Generate a streamed text response to a prompt.
// To stream the response, use `streamResponse(to:)` instead of `respond(to:)`
let stream = session.streamResponse(to: "Write a story about a magic backpack.")
var response = ""
for try await snapshot in stream {
// The snapshot contains *all* content generated so far.
response = snapshot.content
}
Étapes suivantes
- Découvrez les fonctionnalités disponibles lorsque vous accédez à Gemini API via le framework Foundation Models d'Apple.
- Découvrez comment configurer le modèle pour contrôler ses réponses, y compris en définissant un niveau de réflexion ("raisonnement").
- Découvrez comment fournir des outils au modèle, y compris l'ancrage pour obtenir des informations à jour.
- En savoir plus sur Firebase App Check et sur la façon dont il protège vos ressources
Donner votre avis sur l'accès à Gemini API via le framework Foundation Models d'Apple