Bonnes pratiques et points à prendre en compte pour les modèles


Cette page décrit certaines bonnes pratiques et considérations concernant les modèles d'invite côté serveur, y compris les fonctionnalités qui ne sont pas encore prises en charge. Notez que la plupart de ces fonctionnalités ne sont pas disponibles lors de la première version des modèles d'invite de serveur. Consultez les notes de version pour en savoir plus.

Bonnes pratiques

Bon nombre de ces bonnes pratiques sont également détaillées dans Gérer vos modèles.

Gérer les versions de vos modèles

Protéger votre modèle

  • Verrouillez votre modèle avant de passer en production. Évitez également de modifier les modèles utilisés en production.

    • Le verrouillage d'un modèle permet de le protéger contre les modifications involontaires, mais ne bloque pas entièrement la modification. Un membre du projet disposant des autorisations appropriées peut toujours déverrouiller un modèle pour le modifier.

    • Nous vous recommandons de verrouiller les modèles qui sont activement utilisés par le code, en particulier le code de production.

  • Écrivez une validation d'entrée solide pour vos variables d'entrée, ce qui peut vous aider dans les cas suivants :

    • Peut aider à se protéger contre l'injection d'invite.
    • Cela peut vous aider à vous assurer que les requêtes aboutissent et que les réponses sont celles attendues.

Fonctionnalités non encore disponibles

Bon nombre de ces fonctionnalités non encore disponibles ne le sont que dans la version initiale. Consultez les notes de version pour en savoir plus.

Fonctionnalités de Firebase AI Logic qui ne sont pas encore disponibles

Les modèles de prompts côté serveur ne sont pas encore compatibles avec les fonctionnalités suivantes de Firebase AI Logic. Plusieurs de ces fonctionnalités seront bientôt disponibles.

  • Chat
  • Utilisation d'outils (y compris l'appel de fonction et l'ancrage avec la recherche Google)
  • Modification itérative d'images (chat) avec les modèles Gemini (nécessite le chat)
  • Modifier des images avec les modèles Imagen
  • Streaming bidirectionnel (API Gemini Live)
  • Hybride sur l'appareil
  • Limiter la sortie à une liste d'énums
  • Configurer les paramètres liés à la réflexion
  • Configuration des paramètres de sécurité

Notez également que si vous utilisez la surveillance de l'IA dans la console Firebase, l'ID du modèle n'est pas encore renseigné dans les enregistrements.

Éléments courants de Dotprompt qui ne sont pas encore acceptés

Les modèles de prompts côté serveur seront probablement bientôt compatibles avec les éléments courants suivants de Dotprompt :

  • Utilisez la spécification du schéma JSON pour les schémas d'entrée et de sortie dans votre frontmatter.

    • Notez que cette spécification n'est pas non plus acceptée dans les demandes de modèles non serveur. Nous n'acceptons actuellement que la spécification de schéma OpenAPI.
  • Déclaration d'une définition de champ avec caractères génériques à l'aide de *.

  • Utilisation de @key ou itération générale sur les champs d'une entrée d'objet (cas où @key est pertinent).

  • Utilisez @root, qui vous permet de référencer le contexte de la variable racine, quel que soit le this actuel.

Les modèles de requêtes de serveur ne seront probablement pas compatibles avec les éléments courants suivants de Dotprompt :

  • en utilisant des partiels, qui sont des extraits de modèle réutilisables pouvant être inclus dans d'autres modèles ;

Autres points à noter

  • Par défaut, lorsque vous utilisez l'UI guidée dans la console Firebase, nous provisionnons le modèle dans toutes les régions disponibles pour Firebase AI Logic. Si vous utilisez Vertex AI Gemini API et que votre cas d'utilisation nécessite des restrictions basées sur la localisation, vous pouvez spécifier l'emplacement de votre modèle à l'aide de l'API REST.

  • Si vous souhaitez fournir un modèle d'invite de serveur sous forme de fichier (au lieu d'utiliser l'interface utilisateur guidée de la console Firebase), vous pouvez utiliser l'API REST. Notez que les modèles de prompts côté serveur ne prennent pas en charge les schémas définis dans le code de l'application et transmis au modèle.

  • Même si le modèle se trouve sur le serveur, il ne peut pas interagir directement avec les autres ressources côté serveur de votre projet Firebase (comme une base de données), à l'exception des URL Cloud Storage for Firebase (qui peuvent être fournies en tant que variables d'entrée).