Prácticas recomendadas y consideraciones para las plantillas


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 no están disponibles en el lanzamiento inicial de las plantillas de instrucciones del servidor, así que consulta las notas de la versión para obtener actualizaciones.

Prácticas recomendadas

Muchas de estas prácticas recomendadas también se detallan en Cómo administrar tus plantillas.

Crea versiones de tus plantillas

Protege tu plantilla

  • Bloquea tu plantilla antes de pasar a producción. Además, evita editar las plantillas que se usan en producción.

    • Bloquear una plantilla actúa como protección contra la edición no intencional, pero bloquear noimpide por completo la edición. Un miembro del proyecto con los permisos adecuados siempre puede desbloquear una plantilla para editarla.

    • Recomendamos bloquear las plantillas que el código usa de forma activa, en especial el código de producción.

  • Escribe una validación de entrada sólida para tus variables de entrada, lo que puede ayudarte 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.

Funciones que aún no se admiten

Muchas de estas funciones aún no compatibles solo estarán disponibles en la versión inicial, así que consulta las notas de la versión para obtener actualizaciones.

Funciones de Firebase AI Logic que aún no se admiten

Por el momento, las plantillas de instrucciones del servidor no admiten las siguientes capacidades de Firebase AI Logic. Varias de estas capacidades estarán disponibles pronto.

  • Chat
  • Uso de herramientas (incluidas las llamadas a función y la fundamentación con la Búsqueda de Google)
  • Edición iterativa de imágenes (chat) con modelos Gemini (requiere chat)
  • Edición de imágenes con modelos Imagen
  • Transmisión bidireccional (API de Gemini Live)
  • Híbrido en el dispositivo
  • Cómo restringir el resultado a una lista de enumeraciones
  • Cómo configurar los parámetros relacionados con el pensamiento
  • Configuración de protección

También ten en cuenta que, si usas la supervisión de IA en la consola de Firebase, el ID de plantilla aún no se propagó en ningún registro.

Elementos comunes de Dotprompt que aún no se admiten

Es probable que pronto las plantillas de instrucciones del servidor admitan los siguientes elementos comunes de Dotprompt:

  • Usa la especificación del esquema JSON para los esquemas de entrada y salida en tu material preliminar.

  • Declaración de una definición de campo comodín con *.

  • Usar @key o, en general, iterar sobre los campos de una entrada de objeto (que es el caso en el que @key es relevante)

  • Usar @root, que te permite hacer referencia al contexto de la variable raíz independientemente del this actual

Es probable que no se admitan los siguientes elementos comunes de Dotprompt en las plantillas de instrucciones del servidor:

  • 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 disponibles para Firebase AI Logic. Si usas Vertex AI Gemini API 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 deseas 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 se encuentra 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).