firebase-ai-logic-basics

Skill officiel pour intégrer Firebase AI Logic (Gemini API) dans des applications web. Couvre la configuration, l'inférence multimodale, les sorties structurées et la sécurité.

npx skills add https://github.com/firebase/agent-skills --skill firebase-ai-logic-basics

Notions de base de Firebase AI Logic

Aperçu

Firebase AI Logic est un produit de Firebase qui permet aux développeurs d'ajouter de l'IA générative à leurs applications mobiles et web en utilisant des SDKs côté client. Vous pouvez appeler les modèles Gemini directement depuis votre application sans gérer un backend dédié. Firebase AI Logic, anciennement connu sous le nom de « Vertex AI for Firebase », représente l'évolution de la plateforme d'intégration IA de Google pour les développeurs mobiles et web.

Elle prend en charge les deux fournisseurs d'API Gemini :

  • Gemini Developer API : Dispose d'un tier gratuit idéal pour le prototypage, et du pay-as-you-go pour la production
  • Vertex AI Gemini API : Idéale pour la montée en charge avec une préparation à la production de niveau entreprise, nécessite un plan Blaze

Utilisez la Gemini Developer API par défaut, et uniquement la Vertex AI Gemini API si l'application l'exige.

Configuration et initialisation

Prérequis

  • Avant de commencer, assurez-vous d'avoir Node.js 16+ et npm installés. Installez-les s'ils ne le sont pas déjà.
  • Identifiez la plateforme sur laquelle l'utilisateur souhaite développer avant de commencer : Android, iOS, Flutter ou Web.
  • Si sa plateforme n'est pas prise en charge, dirigez l'utilisateur vers la documentation Firebase pour apprendre à configurer AI Logic pour son application (partagez ce lien avec l'utilisateur https://firebase.google.com/docs/ai-logic/get-started)

Installation

La bibliothèque fait partie du SDK Firebase Web standard.

npm install -g firebase@latest

Si vous êtes dans un répertoire firebase (avec un firebase.json), le projet actuellement sélectionné sera marqué comme « current » en utilisant cette commande :

npx -y firebase-tools@latest projects:list

Assurez-vous qu'il y a au moins une application associée au projet actuel

npx -y firebase-tools@latest apps:list

Initialisez le SDK AI Logic avec la commande init

npx -y firebase-tools@latest init ailogic

Cela activera automatiquement la Gemini Developer API dans la console Firebase.

Plus d'informations dans Démarrage avec Firebase AI Logic

Capacités principales

Génération de texte uniquement

Multimodal (entrée texte + images/audio/vidéo/PDF)

Firebase AI Logic permet aux modèles Gemini d'analyser les fichiers image directement depuis votre application. Cela active des fonctionnalités comme la création de légendes, la réponse à des questions sur des images, la détection d'objets et la catégorisation d'images. Au-delà des images, Gemini peut analyser d'autres types de média comme l'audio, la vidéo et les PDFs en les transmettant en tant que données inline avec leur type MIME. Pour les fichiers plus volumineux que 20 mégaoctets (qui peuvent causer des erreurs HTTP 413 en tant que données inline), stockez-les dans Cloud Storage for Firebase et passez leurs URLs à la Gemini Developer API.

Session de conversation (Multi-tour)

Maintenez l'historique automatiquement en utilisant startChat.

Réponses en streaming

Pour améliorer l'expérience utilisateur en affichant les résultats partiels au fur et à mesure qu'ils arrivent (comme un effet de frappe), utilisez generateContentStream à la place de generateContent pour un affichage plus rapide des résultats.

Générer des images avec Nano Banana

  • Commencez par Gemini pour la plupart des cas d'usage, et choisissez Imagen pour les tâches spécialisées où la qualité de l'image et les styles spécifiques sont essentiels. (Exemple : gemini-2.5-flash-image)
  • Nécessite un plan de facturation Blaze pay-as-you-go amélioré.

Ancrage de recherche avec l'outil googleSearch intégré

Plateformes et frameworks pris en charge

Les plateformes et frameworks pris en charge incluent Kotlin et Java pour Android, Swift pour iOS, JavaScript pour les applications web, Dart pour Flutter et C Sharp pour Unity.

Fonctionnalités avancées

Sortie structurée (JSON)

Appliquez un schéma JSON spécifique pour la réponse.

IA sur appareil (Hybride)

Inférence hybride sur appareil pour les applications web, où le SDK Firebase Javascript vérifie automatiquement la disponibilité de Gemini Nano (après installation) et bascule entre l'exécution de prompt sur appareil ou hébergée dans le cloud. Cela nécessite des étapes spécifiques pour activer l'utilisation du modèle dans le navigateur Chrome, plus d'informations dans la documentation hybrid-on-device-inference.

Sécurité et production

App Check

[!WARNING] Exigence de sécurité critique : Pour utiliser AI Logic de façon sécurisée, vous DEVEZ configurer App Check sur votre application. Cela empêche les clients non autorisés d'utiliser votre quota API et d'accéder à vos ressources backend.

Consultez App Check avec reCAPTCHA Enterprise pour les instructions de configuration.

Remote Config

Considérez que vous n'avez pas besoin de coder en dur les noms de modèles (par exemple, gemini-flash-lite-latest). Utilisez Firebase Remote Config pour mettre à jour les versions de modèles de façon dynamique sans déployer un nouveau code client. Consultez Modifier les noms de modèles à distance

[!WARNING] CRITIQUE : Approvisionnement backend requis Pour toutes les plateformes (Flutter, Android, iOS, Web), vous DEVEZ exécuter npx firebase-tools init ailogic pour approvisionner le service. flutterfire configure gère UNIQUEMENT la configuration côté client et N'ACTIVE PAS le service IA, ce qui entraîne des erreurs PERMISSION_DENIED.

Références de code d'initialisation

Langage, Framework, Plateforme Fournisseur d'API Gemini URL de contexte
Web Modular API Gemini Developer API firebase://docs/ai-logic/get-started
iOS (Swift) Gemini Developer API ios_setup.md
Flutter (Dart) Gemini Developer API flutter_setup.md

Utilisez toujours la version la plus récente de Gemini (gemini-flash-latest) sauf si un autre modèle est demandé par la documentation ou l'utilisateur. N'UTILISEZ PAS gemini-1.5-flash.

Références

Exemples de code du SDK Web et modèles d'utilisation Exemples de code du SDK iOS et modèles d'utilisation Exemples de code du SDK Flutter et modèles d'utilisation

Modèles d'utilisation du SDK Android (Kotlin)

Skills similaires