En esta página, se describen algunas prácticas recomendadas y consideraciones para las plantillas de instrucciones del servidor, incluidas las funciones que aún no se admiten. Ten en cuenta que muchas de estas funciones estarán disponibles a medida que evolucionen las plantillas de instrucciones del servidor, así que consulta las notas de la versión para conocer las actualizaciones.
Prácticas recomendadas
Muchas de estas prácticas recomendadas también se detallan en Administra tus plantillas.
Crea versiones de tus plantillas
Crea IDs de plantilla que se agreguen con una versión que use el control de versiones semántico (semver).
Usa Firebase Remote Config para que puedas cambiar fácilmente la plantilla y otros valores en tu solicitud.
Protege tu plantilla
Evita editar las plantillas que se usan en producción, a menos que hayas probado el cambio de forma exhaustiva.
Bloquea tu plantilla antes de pasar a producción.
Bloquear una plantilla sirve como protección contra ediciones no deseadas, pero no impide por completo la edición. Un miembro del proyecto con los permisos adecuados siempre puede desbloquear una plantilla para editarla.
Te recomendamos que bloquees las plantillas que el código usa de forma activa, en especial, el código de producción.
Protege el uso de la Gemini API
Escribe una validación de entrada sólida para tus variables de entrada, lo que puede ayudar con lo siguiente:
- Puede ayudar a proteger contra la inyección de instrucciones.
- Puede ayudar a garantizar que las solicitudes se realicen correctamente y que las respuestas sean las esperadas.
Aplica el modo de solo plantilla para tu proyecto de Firebase, de modo que todas las solicitudes de Gemini API a través de Firebase AI Logic deban usar una plantilla de instrucciones del servidor.
Funciones que aún no se admiten en las plantillas de instrucciones del servidor
Muchas de estas funciones estarán disponibles a medida que evolucionen las plantillas de instrucciones del servidor, así que consulta las notas de la versión para conocer las actualizaciones.
Las plantillas aún no admiten las funciones de Firebase AI Logic
Las siguientes funciones estándar de Firebase AI Logic aún no son compatibles con las plantillas de instrucciones del servidor:
- Transmisión bidireccional (Gemini Live API)
- Inferencia híbrida o integrada en el dispositivo
- Restringe el resultado a una lista de enums
También ten en cuenta que, si usas la supervisión de la IA en la consola de Firebase, el ID de plantilla aún no se propaga en ningún registro.
Elementos comunes de Dotprompt que aún no admiten las plantillas
Es probable que las plantillas de instrucciones del servidor pronto admitan los siguientes elementos comunes de Dotprompt:
Usa la especificación del esquema JSON para los esquemas de entrada y salida en tus metadatos iniciales.
- Ten en cuenta que esta especificación tampoco se admite en las solicitudes de plantillas que no son de servidor. Actualmente, solo admitimos la especificación del esquema de OpenAPI.
Declarar una definición de campo comodín con
*Usar
@keyo, en general, iterar sobre los campos de una entrada de objeto (que es el caso en el que@keyes relevante).Usa
@root, que te permite hacer referencia al contexto de la variable raíz, independientemente delthisactual.
Es probable que las plantillas de instrucciones del servidor no admitan los siguientes elementos comunes de Dotprompt:
- Usar parciales, que son fragmentos de plantillas reutilizables que se pueden incluir en otras plantillas
Otras consideraciones
De forma predeterminada, cuando usas la IU guiada en la consola de Firebase, aprovisionamos la plantilla en todas las regiones admitidas para Firebase AI Logic. Si usas Agent Platform Gemini API (formerly Vertex AI) y tu caso de uso requiere restricciones basadas en la ubicación, puedes especificar la ubicación de tu plantilla con la API de REST.
Si quieres proporcionar una plantilla de instrucciones del servidor como un archivo (en lugar de usar la IU guiada de la consola de Firebase), puedes usar la API de REST. Ten en cuenta que las plantillas de instrucciones del servidor no admiten el esquema definido en el código de la app y que se pasa a la plantilla.
Aunque la plantilla esté en el servidor, no puede interactuar directamente con los otros recursos del servidor de tu proyecto de Firebase (como una base de datos), excepto con las URLs de Cloud Storage for Firebase (que se pueden proporcionar como variables de entrada).