Checklist de production pour utiliser Firebase AI Logic

Lorsque vous êtes prêt à lancer votre application et à permettre à de vrais utilisateurs finaux d'interagir avec ses fonctionnalités d'IA, veillez à consulter cette checklist des bonnes pratiques et des points importants à prendre en compte.

Général

 Consulter la checklist générale de lancement

Consultez la checklist de lancement Firebase pour connaître les bonnes pratiques importantes avant de lancer une application Firebase en production.

 Suivre les bonnes pratiques concernant les projets Firebase

Utilisez des projets Firebase distincts pour le développement, les tests et la production. Découvrez d'autres bonnes pratiques pour gérer vos projets.

Accès et sécurité

 Examiner les checklists de sécurité

Consultez la checklist de sécurité Firebase et la checklist de sécurité dédiée pour Firebase AI Logic pour connaître les bonnes pratiques importantes en matière d'accès et de sécurité.

Appliquer Firebase App Check

Appliquez Firebase App Check pour protéger Gemini API contre les utilisations abusives lorsqu'il est appelé directement depuis votre application. Lorsque App Check est appliqué, il vérifie que les requêtes entrantes proviennent de votre application authentique et/ou d'un appareil non altéré.

App Check est compatible avec les fournisseurs d'attestation pour les plates-formes Apple (DeviceCheck, App Attest ou reCAPTCHA Enterprise), Android (Play Integrity ou reCAPTCHA Enterprise) et Web (reCAPTCHA Enterprise). Il est également compatible avec tous ces fournisseurs pour les applications Flutter et Unity.

Envisagez également d'appliquer la protection contre les attaques de répétition, ce qui signifie que les jetons sont à usage unique. Cette option offre une protection renforcée au-delà de la protection de base et vous permet de définir un niveau de protection approprié pour votre application et vos cas d'utilisation.

 Configurer des restrictions pour vos clés API Firebase

Les clés API Firebase identifient votre projet et votre application Firebase lors des requêtes. Pour empêcher l'utilisation non autorisée de vos clés API :

  • Définissez des restrictions d'application dans la console Google Cloud pour limiter l'utilisation de la clé aux requêtes provenant de l'ID de bundle spécifique de votre application (Apple), du nom du package et de l'empreinte SHA-1 (Android) ou du site référent HTTP (Web).

  • Examinez la liste d'autorisation Restrictions relatives aux API de chaque clé :

    • Assurez-vous que l'API Firebase AI Logic (firebasevertexai.googleapis.com) figure sur la liste d'autorisation.
    • Assurez-vous que les seules autres API de la liste d'autorisation sont les services Firebase spécifiques requis par votre application. Consultez la liste des API requises pour les clés Firebase restreintes.

Notez que les API liées à Firebase n'utilisent les clés API que pour identifier le projet ou l'application Firebase, et non pour autoriser l'appel de l'API.

 Limiter les requêtes aux utilisateurs authentifiés uniquement

Envisagez d'appliquer le mode Utilisateurs authentifiés afin que toutes les requêtes via Firebase AI Logic incluent des identifiants valides de Firebase Authentication. Si une requête provient d'un utilisateur final non authentifié, elle est rejetée avec une erreur 401: unauthenticated.

Surveillance, limites et facturation

Configurer AI Monitoring dans la console Firebase

Configurez la surveillance de l'IA dans la console Firebase pour obtenir de la visibilité sur les métriques de performances clés, comme le nombre de requêtes, la latence, l'utilisation des jetons et les taux d'erreur. Vous pouvez également inspecter des traces individuelles dans la consoleGoogle Cloud.

Définir des limites de débit et gérer les quotas

Protégez votre projet contre les pics d'utilisation inattendus et les attaques par déni de portefeuille :

Évitez les factures surprises grâce aux alertes et aux plafonds de dépenses

Si votre projet Firebase utilise le forfait Blaze avec paiement à l'usage :

Gestion des configurations

Utiliser une version de modèle stable dans votre application de production

Dans votre application de production, n'utilisez que des versions de modèle stables (comme gemini-3.8-flash). N'utilisez pas de version preview ou expérimentale, ni d'alias -latest.

Utiliser Firebase Remote Config ou des modèles de prompts côté serveur

Lorsque vous utilisez Remote Config ou des modèles de prompts côté serveur, vous pouvez contrôler les configurations importantes des fonctionnalités d'IA de votre application dans le cloud (côté serveur) plutôt que de coder en dur des valeurs dans votre code. Vous pouvez ainsi mettre à jour vos configurations sans publier de nouvelle version de votre application.

  • (Fortement recommandé) Apportez des modifications à la demande au nom du modèle utilisé pour votre fonctionnalité d'IA à mesure que de nouveaux modèles sont publiés ou que d'autres sont arrêtés. Découvrez comment utiliser Remote Config ou les modèles de prompts côté serveur.

  • (Facultatif) Contrôlez de manière dynamique et même conditionnelle d'autres paramètres de votre fonctionnalité d'IA, par exemple la configuration du modèle (comme le nombre maximal de jetons de sortie), les paramètres de sécurité, les instructions système et les données de prompt. Découvrez comment utiliser Remote Config ou les modèles de prompts côté serveur.

  • (Facultatif) Définissez un paramètre minimum_version dans Remote Config pour comparer la version actuelle de l'application avec la dernière version définie par Remote Config, afin d'afficher une notification de mise à niveau aux utilisateurs ou de les forcer à effectuer la mise à niveau.

Définir l'emplacement pour accéder au modèle

Disponible uniquement lorsque vous utilisez Agent Platform Gemini API (formerly Vertex AI) comme fournisseur d'API.

Définissez un emplacement pour accéder au modèle afin d'optimiser le quota et d'éviter la latence pour vos utilisateurs.

Si vous ne spécifiez pas d'emplacement, la valeur par défaut est global (lorsque vous utilisez la nouvelle syntaxe d'initialisation "Agent Platform"). Vous pouvez définir cet emplacement lors de l'initialisation ou, si vous le souhaitez, utiliser Firebase Remote Config pour modifier l'emplacement de manière dynamique en fonction de l'emplacement de chaque utilisateur.