Iniciar sesiónContactoEmpieza gratis
Reliability and Routing28 de julio de 2026Flatkey Team

Lista de verificación de preparación para producción de Gemini API para equipos de backend

Una lista de verificación de preparación para producción para equipos de backend que integran Gemini API, que cubre credenciales, contratos de respuesta, reintentos, observabilidad, costos, despliegues e incidentes.

Lista de verificación de preparación para producción de Gemini API para equipos de backend

Una demostración exitosa de la API de Gemini demuestra que un modelo puede responder una solicitud. No demuestra que su aplicación pueda proteger credenciales, preservar contratos de respuesta, sobrevivir a límites de tasa, controlar costos, gestionar cambios del modelo o recuperarse de un incidente.

Esta lista de verificación de producción de la API de Gemini convierte un prototipo en una dependencia operativa de producción. Está diseñada para equipos de backend que dan soporte a aplicaciones web, backends móviles, productos SaaS, herramientas internas y flujos de trabajo orientados al cliente, no solo a agentes autónomos de IA.

Nota de autenticación sensible al tiempo: La documentación actual de Google sobre claves de la API de Gemini indica que el servicio se está trasladando a las claves de API de Google Cloud. La transición comienza el 31 de agosto de 2026, y Google espera una aplicación completa el 23 de septiembre de 2026. Los equipos que lancen antes o durante esas fechas deben verificar la propiedad de la clave, la asociación al proyecto, las restricciones y la rotación en el entorno de destino en lugar de asumir que una clave de prototipo seguirá siendo válida.

La versión breve: 18 comprobaciones antes del lanzamiento

Use esta lista como criterio de salida para la versión. Las secciones detalladas a continuación explican cómo implementar cada elemento.

Acceso y seguridad

  • Las llamadas de producción se originan desde un backend de confianza, no desde un navegador ni desde un binario móvil.
  • La clave de API pertenece a un proyecto nominal de Google Cloud y al propietario de la carga de trabajo.
  • Las restricciones de clave, la rotación, la revocación y el reemplazo de emergencia están documentados.
  • Staging y producción usan credenciales, cuotas y monitoreo separados.

Modelo y contrato de respuesta

  • La aplicación fija un identificador de modelo intencional en lugar de seguir un alias de forma silenciosa.
  • Se prueban las modalidades, regiones, tamaño de contexto, herramientas y funciones de salida requeridas.
  • Las salidas estructuradas usan un esquema y una capa de validación.
  • Los campos específicos del proveedor en las solicitudes y respuestas se aíslan detrás de un adaptador.

Confiabilidad y operaciones

  • Cada llamada tiene un tiempo de espera de conexión, una fecha límite de respuesta y un presupuesto total de reintentos.
  • Los reintentos se limitan a fallos transitorios y usan backoff exponencial con jitter.
  • La concurrencia se somete a pruebas de carga frente a los límites de tasa actuales del proyecto.
  • Los registros capturan modelo, latencia, tokens, estado, recuento de reintentos y un ID de correlación.
  • Los paneles separan errores del proveedor, errores de validación de la aplicación y cancelaciones del usuario.

Calidad, costos y despliegue

  • Un conjunto de evaluación representativo tiene umbrales de lanzamiento.
  • El comportamiento de seguridad y rechazo se prueba con escenarios reales del producto.
  • Los presupuestos de tokens y solicitudes se aplican por usuario, inquilino o flujo de trabajo.
  • El lanzamiento usa staging, tráfico canario, un interruptor de corte y una reversión probada.
  • Existe una ruta de respaldo para cargas de trabajo críticas.

1. Elija deliberadamente la superficie de integración

Antes de escribir código de producción, decida con qué superficie de Google se está integrando realmente la aplicación. La API de Gemini Developer está optimizada para el desarrollo directo con Gemini, mientras que Vertex AI añade controles de Google Cloud que pueden ser importantes para implementaciones empresariales, como identidad más amplia, gobernanza e integración de plataforma.

No permita que una importación de SDK convierta accidentalmente esta decisión de arquitectura. Anote:

Decisión Pregunta de producción
Superficie de la API ¿Gemini Developer API o Vertex AI?
Proyecto propietario ¿Qué equipo posee las credenciales, la cuota, la facturación y los incidentes?
Entornos de despliegue ¿Están aislados el desarrollo, el staging y la producción?
Límite de datos ¿Qué contenido se puede enviar al proveedor?
Dependencia de funciones ¿Necesita salida estructurada, llamadas a funciones, archivos, almacenamiento en caché, streaming o entrada multimodal?
Portabilidad ¿Debe la carga de trabajo moverse a otro modelo o proveedor?

Para muchos productos, el mejor diseño inicial es un pequeño adaptador de proveedor propiedad del backend. Debe aceptar una solicitud a nivel de aplicación y devolver un resultado a nivel de aplicación. La autenticación, los nombres de modelo, los errores del proveedor, los metadatos de tokens y los objetos del SDK permanecen dentro del adaptador.

Ese límite evita que los campos específicos de Gemini se propaguen por la lógica de negocio. También hace posible, más adelante, realizar pruebas controladas con varios modelos. Si la portabilidad ya es un requisito, revise una lista de verificación de migración de gateway de API compatible con OpenAI antes de que la integración se vuelva difícil de deshacer.

2. Mueva las credenciales fuera del código del cliente

Nunca incluya una clave de API de Gemini en JavaScript de frontend, un paquete de escritorio, una extensión de navegador o una aplicación móvil. La ofuscación no es un límite de seguridad. Un usuario determinado puede inspeccionar el tráfico de red, los binarios, el almacenamiento o la memoria en tiempo de ejecución y recuperar la clave.

Use este flujo de solicitud en su lugar:

Dispositivo del usuario → Su backend autenticado → Gemini API

El backend debe aplicar:

  1. Autenticación de usuario: identificar quién inició la solicitud.
  2. Autorización: verificar que el usuario o tenant pueda ejecutar este flujo de trabajo.
  3. Límites de entrada: restringir el tamaño de la carga útil, el tipo de archivo, la duración del medio y la longitud del prompt.
  4. Límites de uso: hacer cumplir presupuestos por usuario y por tenant antes de llamar al modelo.
  5. Contexto de auditoría: adjuntar un ID de correlación interno sin registrar contenido sensible de forma predeterminada.

Almacene las claves en un gestor de secretos o en un almacén de secretos de despliegue. Documente el propietario, el proyecto, el entorno, la fecha de creación, las restricciones, el intervalo de rotación y el procedimiento de revocación. Mantenga una ruta probada de sustitución de claves de emergencia que no requiera una versión completa de la aplicación.

Dado que Google ha anunciado la transición de 2026 a las claves de API de Google Cloud, los equipos de producción deben tratar la migración de claves como una dependencia activa de la versión, no como una tarea futura de mantenimiento. Verifique los requisitos actuales en la documentación de claves de API de Gemini de Google antes del lanzamiento.

Para una política más amplia entre proveedores, use esta guía segura de gestión de claves de API.

3. Fije el modelo y registre su contrato

Los identificadores de modelo forman parte de su contrato de API de producción. Un cambio de modelo puede alterar la latencia, el uso de tokens, el comportamiento de seguridad, las funciones compatibles y la forma o calidad de las salidas, incluso cuando el código de su aplicación no cambia.

Cree un manifiesto de modelo en la configuración en lugar de esparcir nombres por toda la base de código:

workload: support_reply_draft
provider: google
model: configured-stable-model-id
required_capabilities:
  - text_input
  - structured_output
  - streaming
max_output_tokens: 900
timeout_ms: 20000
fallback_workload: support_reply_draft_backup
evaluation_suite: support-replies-v4

El ID exacto del modelo debe provenir de la documentación de modelos de Gemini actual. Prefiera un modelo estable para producción, a menos que una capacidad exclusiva de vista previa justifique el riesgo adicional de cambios. Si usa un modelo de vista previa, añada una fecha de revisión explícita y un responsable de reemplazo.

Pruebe las capacidades que su aplicación realmente necesita. Una llamada genérica de “hola mundo” no verifica:

  • entrada de imágenes, audio, video o documentos;
  • comportamiento de streaming;
  • llamadas a herramientas o funciones;
  • restricciones de salida estructurada;
  • límites de contexto y conteo de tokens;
  • comportamiento de seguridad;
  • ciclo de vida de archivos;
  • comportamiento de caché;
  • latencia bajo concurrencia realista.

Registre la versión del SDK, la superficie de la API, el ID del modelo, la configuración de la solicitud y el conjunto de datos de evaluación para cada versión. Eso le proporciona una línea base reproducible cuando cambian los resultados.

4. Trate la salida del modelo como entrada no confiable

La salida en lenguaje natural es probabilística. Incluso un modelo sólido puede omitir campos, producir un enum inesperado, incluir comentarios adicionales o devolver un objeto sintácticamente válido que infrinja las reglas de negocio.

Para la salida consumida por máquinas, use las capacidades de salida estructurada de Gemini y valide el resultado nuevamente en su aplicación.

Use cuatro capas:

  1. Esquema de respuesta: restrinja la forma esperada del objeto.
  2. Validación del parser: rechace JSON mal formado y tipos incorrectos.
  3. Validación de negocio: aplique estados permitidos, rangos, propiedad y reglas de la base de datos.
  4. Política de reparación: decida si volver a intentar, pedir al modelo que repare, usar un respaldo o enviar el caso a una persona.

Por ejemplo, una recomendación de reembolso generada por el modelo podría ser JSON válido, pero aun así exceder la autorización del usuario, hacer referencia a un producto no disponible o violar una ventana de reembolso. La validación de esquemas no puede reemplazar la autorización de la aplicación.

Versione los esquemas igual que los contratos de API. Añada fixtures para salidas válidas, campos faltantes, valores enum desconocidos, nulos, cadenas demasiado largas, acciones duplicadas y contenido adversario. No convierta silenciosamente una respuesta inválida en una acción de negocio válida.

5. Ponga un límite de política alrededor de las llamadas a funciones

Las llamadas a funciones ayudan al modelo a proponer invocaciones de herramientas, pero el modelo no debe ser el dueño de la autorización ni de la política de ejecución. La documentación de llamadas a funciones de Google describe el patrón de modelo a herramienta; su aplicación sigue siendo responsable de decidir si una llamada propuesta está permitida.

Para cada función invocable:

  • usa un nombre y un esquema específicos;
  • permite solo los campos necesarios;
  • valida cada argumento del lado del servidor;
  • vuelve a comprobar la autorización del usuario en el momento de la ejecución;
  • establece tiempos de espera de ejecución y límites de tamaño de resultados;
  • haz que los efectos secundarios sean idempotentes cuando sea posible;
  • requiere confirmación para acciones de alto impacto;
  • registra la decisión y el resultado sin exponer secretos.

Separa las herramientas de solo lectura de las herramientas de escritura. Una búsqueda de productos y una captura de pago no deben compartir la misma política de aprobación. Para acciones destructivas o con implicaciones financieras significativas, presenta la operación propuesta al usuario o a un revisor autorizado antes de ejecutarla.

Defiéndete también contra la inyección de prompts en páginas recuperadas, documentos, correos electrónicos y resultados de herramientas. Trata el contenido externo como datos, no como instrucciones de confianza. La política de herramientas pertenece al código fuera del prompt del modelo.

6. Define juntos la seguridad y el comportamiento del producto

Los controles de seguridad del proveedor y la política del producto resuelven problemas diferentes. Los ajustes de seguridad de Gemini pueden ayudar a clasificar o bloquear cierto contenido dañino, pero tu producto aún necesita reglas para restricciones de edad, flujos de trabajo regulados, riesgo de marca, abuso, datos sensibles y escalamiento.

Construye una matriz de pruebas de seguridad que cubra:

Escenario Comportamiento esperado
Solicitud claramente permitida Respuesta útil sin rechazo innecesario
Solicitud no permitida Rechazar o bloquear con un mensaje adecuado para el usuario
Solicitud ambigua de alto riesgo Pedir aclaración o escalar
Datos personales sensibles Minimizar, redactar o rechazar según la política
Inyección de prompt Ignorar instrucciones no confiables y conservar las restricciones de herramientas
Abuso repetido Limitar la tasa, suspender o derivar a revisión

Revisa los ajustes de seguridad de Gemini actuales de Google y luego define tu propio comportamiento a nivel de aplicación. Guarda las versiones de la política junto con los resultados de evaluación para que un cambio en un umbral o en el mensaje al usuario pueda auditarse.

Las pruebas de seguridad deben incluir falsos positivos. Un sistema que bloquea demasiado puede ser tan inutilizable como uno que bloquea demasiado poco.

7. Controla el presupuesto de contexto, archivos y ciclo de vida de la caché

Los prompts grandes y las entradas multimodales crean más que un problema de coste. Afectan la latencia, el consumo de límites de velocidad, el comportamiento de los tiempos de espera, el almacenamiento, la privacidad y la depuración.

Establece límites explícitos para:

  • la longitud del prompt y de la conversación;
  • el tamaño de archivo y los tipos de medios aceptados;
  • la duración del audio o video;
  • la cantidad y resolución de imágenes;
  • la cantidad de documentos recuperados;
  • el máximo de tokens de salida;
  • la vida útil del contexto en caché;
  • el consumo del usuario y del inquilino.

Usa el conteo de tokens durante el desarrollo y antes de llamadas costosas cuando sea práctico. Google documenta el comportamiento de los tokens en su guía de tokens. Si un contexto largo repetido domina una carga de trabajo, evalúa el almacenamiento en caché de contexto, pero trata el contenido almacenado en caché como un activo de datos gestionado con reglas de propiedad, expiración, invalidación y eliminación.

No asuma que cada archivo debe enviarse completo. Extraiga las páginas relevantes, comprima las imágenes adecuadamente, elimine los metadatos no compatibles y rechace los archivos que superen los límites del producto. Haga seguimiento del recurso original, el recurso transformado, el estado de carga, la política de retención y el resultado de eliminación.

8. Diseñe los reintentos en torno a un presupuesto total de tiempo

Los reintentos pueden mejorar la confiabilidad o amplificar una interrupción. La diferencia está en si están limitados, son selectivos y observables.

Clasifique los fallos antes de reintentar:

Error Acción predeterminada
Clave o permiso no válidos No reintentar; alertar y usar el runbook de credenciales
Solicitud o esquema no válidos No reintentar sin cambios; corrija la solicitud
Bloqueo de seguridad Siga la política del producto; no reintente a ciegas
Límite de tasa Haga backoff con jitter; respete la orientación actual de cuota
Error del servidor Reintente dentro de un pequeño presupuesto de intentos y tiempo
Tiempo de espera de red Reintente solo si la operación es segura y el presupuesto sigue disponible
Cancelación del cliente Detenga el trabajo y libere recursos

Cada solicitud necesita tres límites:

  1. Tiempo de espera de conexión para establecer la solicitud.
  2. Plazo del intento para una llamada al proveedor.
  3. Plazo total del flujo de trabajo a lo largo de reintentos y mecanismos alternativos.

Use retroceso exponencial con jitter aleatorio. Limite el número de intentos. Respete la cancelación. Evite tormentas de reintentos con límites de concurrencia y un circuit breaker. Para interacciones orientadas al usuario, prefiera un fallback rápido o una respuesta degradada en lugar de un bucle de reintentos invisible de un minuto.

Los límites de Gemini varían según el modelo, el nivel y el proyecto, así que obtenga los valores actuales de los límites de tasa de la API de Gemini de Google en lugar de copiar un número en documentación permanente.

9. Haga observable el uso, la calidad y el fallo

Un panel de producción debería responder rápidamente a tres preguntas:

  1. ¿El proveedor está sano?
  2. ¿La integración de la aplicación está sana?
  3. ¿Los usuarios reciben resultados aceptables a un costo aceptable?

Registre metadatos estructurados para cada llamada:

  • marca de tiempo y entorno;
  • carga de trabajo y versión de la aplicación;
  • ID de modelo configurado;
  • ID interno de correlación;
  • latencia y tiempo hasta el primer token;
  • uso de tokens de entrada y salida cuando esté disponible;
  • categoría de estado y código de error normalizado;
  • conteos de reintentos y fallbacks;
  • resultado de la validación de esquema;
  • resultado de seguridad o rechazo;
  • usuario, inquilino o bucket de función usando identificadores seguros para la privacidad;
  • costo estimado o conciliado.

Evite registrar prompts y respuestas completos de forma predeterminada. Los registros de contenido pueden crear riesgos de seguridad, privacidad, cumplimiento y retención. Prefiera metadatos, hashes, muestras redactadas y capturas de depuración gobernadas explícitamente.

Genere alertas para fallos de autenticación, límites de tasa elevados, errores del proveedor, latencia, fallos de esquema, activación de fallback, picos de costo y deriva de seguridad. Incluya el modelo y la versión de la aplicación en cada panel para que los cambios puedan correlacionarse.

10. Mida el costo por resultado exitoso del producto

El precio por token por sí solo no te dice si una integración es eficiente. Una solicitud más barata puede costar más por tarea সফলida si requiere prompts más largos, más reintentos, más llamadas de reparación o más revisión humana.

Haz seguimiento de:

coste por tarea exitosa =
  solicitudes al modelo
  + reintentos
  + llamadas de reparación
  + llamadas de respaldo
  + recuperación y almacenamiento
  + revisión humana

Establece controles de presupuesto en varios niveles:

  • máximo de tokens por solicitud;
  • máximo de solicitudes por flujo de trabajo;
  • cuotas por usuario y por inquilino;
  • alertas diarias de anomalías;
  • límites de coste a nivel de función;
  • un interruptor de desactivación de emergencia.

Revisa la acceso y precios actuales del modelo antes de seleccionar un valor predeterminado para producción, y luego compara modelos con un conjunto de evaluación representativo en lugar de elegir solo a partir de una tabla de precios.

11. Crea un punto de control de evaluación antes de los cambios de modelo

Crea un conjunto de datos versionado a partir de escenarios reales del producto, ejemplos de producción sanitizados, casos extremos y fallos conocidos. Puntúa las propiedades que importan para el flujo de trabajo:

  • finalización de tareas;
  • consistencia factual;
  • validez del esquema;
  • seguridad y calidad del rechazo;
  • latencia;
  • uso de tokens;
  • coste por tarea exitosa;
  • preferencia humana cuando corresponda.

Define los umbrales antes de ejecutar un candidato. Mantén un conjunto de casos de “no debe empeorar” para el comportamiento crítico. Cuando cambie un modelo, un prompt, un esquema, un SDK, un ajuste de seguridad o una estrategia de recuperación, vuelve a ejecutar el mismo conjunto.

Para evaluaciones entre proveedores, usa un flujo de trabajo repetible de pruebas de prompts multmodelo para que cada candidato reciba entradas, límites y puntuación equivalentes.

12. Lanza con un canario y una reversión

No cambies todo el tráfico de inmediato solo porque una prueba en staging pasó.

Usa esta secuencia de despliegue:

  1. Evaluación sin conexión: pasa los umbrales de calidad, seguridad, esquema, latencia y coste.
  2. Staging: verifica credenciales, cuotas, archivos, callbacks, streaming y paneles.
  3. Tráfico en sombra: compara resultados sin afectar a los usuarios donde la política lo permita.
  4. Canario interno: expón la versión a empleados o inquilinos de prueba.
  5. Pequeño canario en producción: enruta un porcentaje controlado del tráfico elegible.
  6. Incremento progresivo: aumenta el tráfico solo mientras las métricas se mantengan sanas.
  7. Lanzamiento completo: conserva la capacidad de revertir la configuración de inmediato.

La reversión debe ser un cambio de configuración, no un despliegue de código. Mantén disponibles el modelo, el prompt, el esquema y la política de enrutamiento anteriores hasta que cierre la ventana de observación.

Los flujos de trabajo críticos necesitan una jerarquía de respaldo. Según el producto, eso puede ser:

modelo Gemini principal
→ modelo Gemini alternativo
→ proveedor compatible o ruta de gateway
→ experiencia degradada determinista
→ cola humana

Los respaldos deben probarse, no solo configurarse. Verifica que los esquemas de respuesta, el comportamiento de seguridad, la disponibilidad de herramientas y los controles de coste sigan cumpliéndose.

13. Prepara un manual de incidentes de Gemini

Escribe el manual antes del primer incidente. Incluye:

  • propietario de credenciales y pasos de rotación;
  • estado del proveedor y enlaces de escalamiento;
  • historial del modelo y de la configuración;
  • paneles y definiciones de alertas;
  • mapeos de errores conocidos;
  • controles de disyuntor y kill switch;
  • procedimiento de activación de fallback;
  • responsable de la comunicación con usuarios;
  • pasos de evaluación de exposición de datos;
  • validación del rollback;
  • actualizaciones de la evaluación posterior al incidente.

Ejecuta un game day para al menos cuatro escenarios: credenciales revocadas, límites de tasa sostenidos, latencia elevada y salida estructurada inválida. Confirma que el ingeniero de guardia pueda identificar el dominio de la falla y estabilizar el producto sin editar prompts en producción.

Production Readiness Worksheet

Copia esta tabla en el ticket de lanzamiento y asigna un responsable a cada fila.

Area Owner Evidence Status
API surface and project ownership Architecture decision record
Key migration and rotation Secret inventory and runbook
Model and SDK pinning Release manifest
Structured output validation Schema tests
Tool authorization Policy tests
Safety behavior Evaluation report
Context and file limits Load and boundary tests
Rate-limit and retry behavior Failure-injection results
Observability Dashboard and alerts
Cost controls Budget rules and anomaly alerts
Canary and rollback Deployment checklist
Incident response Game-day evidence

Common Questions

Can a production app call the Gemini API directly from the browser?

No. Coloca la llamada al proveedor detrás de tu backend autenticado para que la clave de API siga siendo secreta y puedas aplicar autorización, cuotas, validación, registro y controles de abuso.

Should I use a Gemini “latest” alias in production?

Prefer a intentional, documented model identifier and a controlled upgrade process. An alias can be useful for experimentation, but production workloads need reproducible evaluations and a rollback target.

Are structured outputs guaranteed to satisfy my business rules?

No. Structured output helps constrain syntax and shape. Your application must still validate permissions, ranges, ownership, state transitions, and every side effect.

Which Gemini API errors should I retry?

Retry transient network failures, rate limits, and selected server failures within a strict total time and attempt budget. Do not retry authentication, permission, or invalid-request errors unchanged.

When should I add a multi-model gateway?

Add a gateway when separate provider credentials, quotas, logs, billing, evaluations, and fallback paths are slowing delivery. Keep a direct integration when provider-native features are strategically important and your team can operate the additional complexity.

Lanza la integración que puedes operar

El lanzamiento más seguro de la API de Gemini no es el que tiene el prompt más elaborado. Es el que cuenta con propiedad explícita, credenciales protegidas, un contrato de modelo fijado, salidas validadas, comportamiento de fallo acotado, calidad medible, controles de costos y una reversión probada.

Empieza moviendo las llamadas detrás del backend y completando la hoja de trabajo de preparación para producción. Luego ejecuta el mismo conjunto de evaluación contra el modelo Gemini que hayas elegido y al menos un respaldo. Si las operaciones con varios proveedores se convierten en el cuello de botella, usa el Flatkey integration starter para probar cargas de trabajo compatibles mediante una sola clave y una única URL base compatible con OpenAI.

Referencias oficiales de Google