Introducción
Chat compatible con OpenAI para Gemini 3.7 Flash. Ventana de lectura de 1.048.576 tokens, tres niveles de esfuerzo, 128 esquemas de herramienta y salida JSON en una sola llamada síncrona, con streaming SSE si lo pides.
Gemini 3.7 Flash es el modelo Flash de alta velocidad de Google, pensado para el código del día a día, las llamadas a herramientas de los agentes y la ejecución fiable de varios pasos, y aquí se publica como un único endpoint de chat compatible con OpenAI. Una solicitud lee hasta 1.048.576 tokens y responde con hasta 65.536, el esfuerzo de razonamiento cambia turno a turno entre low, medium y high, y las llamadas a herramientas y la salida JSON se escriben al estilo de OpenAI.
Funciones y aspectos destacados
Rápido como para vivir dentro del bucle
Un agente que planifica, llama a una herramienta, lee el resultado y vuelve a decidir pasa casi todo su tiempo real esperando al modelo. Esta es justo la forma de trabajo para la que está hecho el modelo — código del día a día, uso de herramientas, ejecución de varios pasos —, así que el bucle se cierra rápido en vez de atascarse en cada salto.
Tres niveles, elegidos turno a turno
low, medium y high, con medium por defecto. Es una cadena en el mismo cuerpo de la solicitud: el paso rutinario corre en low mientras el paso que tiene que acertar sube a high. Este modelo no tiene nivel minimal: la propia API de Google lo rechaza, y este endpoint también lo rechaza en lugar de reescribirlo en silencio.
1.048.576 tokens en una solicitud
Un módulo entero con sus pruebas, un registro largo de agente con todos los resultados de herramienta todavía adjuntos, o un conjunto de documentos leído de una vez. El tope cuenta juntos el mensaje de sistema, el historial y la salida de las herramientas: el presupuesto es del hilo, no del último mensaje.
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
messages | Sí | Turnos ordenados, del más antiguo al más reciente. El contenido es una cadena o un arreglo de partes text, |
max_tokens | No | Limita la respuesta a 65.536; el valor por defecto es 16 384. |
reasoning_effort | No | minimal, low, medium o high; medium es el valor por defecto. Los pasos rutinarios van bien en low, y el paso que tiene que acertar se sube a high por separado. |
stop | No | Hasta 4 secuencias, como cadena o como arreglo. La respuesta termina en cuanto el modelo escribe una de ellas, y el texto que coincide no se devuelve. mínimo 1 caracteres · mínimo 1 elementos · máximo 4 elementos |
seed | No | Cualquier entero. |
temperature | No | De 0 a 2, 1 por defecto. Google recomienda dejar los modelos Gemini 3 en 1,0: por debajo, la generación puede entrar en bucle o degradarse. |
top_p | No | De 0,01 a 1. Ajusta este o temperature, nunca los dos en la misma comparación. |
tools | No | Hasta 128 definiciones de función por solicitud. máximo 128 elementos |
tool_choice | No | auto, none, required, o un objeto que nombre una función. |
response_format | No | Pide un objeto JSON y nombra cada clave en el mensaje de sistema: así vuelven analizables los resultados de extracción. |
Precios
Entrada $0.675 / Salida $3.375 por 1 millón de tokens
Casos de uso
Trabajo de código diario
Leer un diff y decir qué cambia, escribir la prueba que faltaba, convertir una traza de pila en un parche. Son solicitudes cortas y frecuentes en las que el tiempo hasta el primer token decide si la herramienta llega a usarse.
Bucles de herramientas para agentes
Hasta 128 definiciones de función por solicitud, con tool_choice para forzar una llamada concreta o ninguna. Las llamadas a herramientas vuelven con la forma de OpenAI, así que un entorno de agente ya montado solo necesita otro identificador de modelo.
Ejecución de varios pasos sobre un hilo largo
Un agente que ya ha llamado a seis herramientas lleva los seis resultados a su siguiente solicitud. Una ventana de 1.048.576 tokens mantiene ese hilo entero en vez de obligar a un paso de resumen a media faena.
Extracción estructurada en volumen
Pide un objeto JSON con response_format, nombra cada clave en el mensaje de sistema. Líneas de registro a campos, tickets a etiquetas, texto libre a un esquema: el costo por llamada es lo que decide si el trabajo merece la pena.
Guía de prompts y consejos prácticos
Deja sitio al pensamiento antes de limitar la respuesta
Con el esfuerzo medium por defecto el modelo piensa antes de escribir, y ese pensamiento sale del mismo presupuesto de max_tokens que la respuesta. Un tope ajustado gasta el presupuesto en deliberar y devuelve una cadena vacía. Dale a max_tokens margen de verdad — unos miles para una respuesta de código — o baja reasoning_effort a low cuando quieras una respuesta corta y ninguna deliberación.
Cambia el esfuerzo por turno, no por integración
Corre los pasos rutinarios del bucle en low para tener antes el primer token y manda en high el paso que tiene que acertar. Mismo endpoint, mismo cuerpo, una cadena distinta.
Límites a tener en cuenta
reasoning_effort solo acepta low, medium y high. La API de Google rechaza minimal en este modelo, así que este endpoint también lo rechaza en lugar de cambiarlo en silencio por otra cosa. El tope de respuesta son 65.536 tokens y un max_tokens por encima falla de entrada en la validación. El contenido de los mensajes es texto, imágenes y video; las partes de audio se rechazan. El video se envía como archivo subido, y el video de una solicitud puede sumar 14 MB en total.
Inicio rápido de la API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "google/gemini-3.7-flash/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
Consulta la referencia de la API para autenticación, el esquema completo, sondeo y gestión de errores.












