Gemini Stream Generar contenido
Envíe una solicitud a través de la operación Stream Generate Content compatible con Gemini de RunAPI.
Descripción general
Usa la operación Stream Generate Content compatible con Gemini de RunAPI con un modelo compatible y las formas de solicitud y respuesta del protocolo.
Inicio rápido
- Cree una Clave de API y establézcala como RUNAPI_API_KEY.
- Elija un modelo compatible y envíe los parámetros de ruta y el cuerpo JSON documentados.
- Lea la respuesta JSON o los eventos enviados por el servidor que se muestran para esta operación y gestione los errores de protocolo.
Endpoint
- URL base
https://runapi.ai- Versión del contrato
v1- Autenticación preferida
x-goog-api-key: YOUR_API_TOKEN
Portadores de autenticación
RunAPI acepta cada uno de los carriers indicados a continuación. Los ejemplos generados utilizan el encabezado preferido del protocolo.
- header
Authorization: Bearer YOUR_API_TOKEN- header
x-api-key: YOUR_API_TOKEN- header - Preferido
x-goog-api-key: YOUR_API_TOKEN- query
?key=YOUR_API_TOKEN
Modelos compatibles
Abra una página de modelo para conocer los precios actuales, los límites de velocidad y los detalles de uso comercial.
Mostrar 56 modelos compatibles
- claude-fable-5-1
- claude-fable-5
- claude-sonnet-5
- claude-opus-5
- claude-opus-4-8
- claude-opus-4-7
- claude-opus-4-6
- claude-sonnet-4-6
- claude-opus-4-5-20251101
- claude-sonnet-4-5-20250929
- claude-haiku-4-5-20251001
- claude-opus-4-1-20250805
- gpt-5.5
- gpt-5.5-pro
- gpt-5.4
- gpt-5.4-mini
- gpt-5.4-nano
- gpt-5.4-pro
- gpt-5.3-codex
- gpt-5.3-codex-spark
- gpt-5.2
- gpt-5.6-luna
- gpt-5.6-sol
- gpt-5.6-terra
- gpt-6-astra
- gemini-3.7-flash
- gemini-3.6-flash
- gemini-3.5-flash
- gemini-3.1-pro-preview
- gemini-3-flash-preview
- gemini-2.5-pro
- gemini-2.5-flash
- deepseek-v4-flash-vision-exp
- deepseek-v4-pro
- deepseek-v4-flash
- glm-5.2
- glm-5.1
- glm-5-turbo
- glm-5
- glm-4.7
- glm-4.6
- glm-4.5
- glm-4.5-air
- kimi-k3
- kimi-k2.7-code
- kimi-k2.6
- kimi-k2.5
- MiniMax-M3
- MiniMax-M2.7
- MiniMax-M2.7-highspeed
- MiniMax-M2.5
- MiniMax-M2.5-highspeed
- MiniMax-M2.1
- MiniMax-M2
- grok-4.5
- grok-4.3
Contrato de solicitud
Solo se enumeran los campos con evidencia de protocolo público y compatibilidad con RunAPI. Los campos adicionales del cuerpo JSON se transmiten tal cual.
Cuerpo JSON4 campos
contentsarrayContenido de la conversación en formato Gemini Content and Part.
generationConfigobjectConfiguración de generación de Gemini para la solicitud.
systemInstructionobjectInstrucciones del sistema representadas como Content de Gemini.
toolsarrayHerramientas que el modelo puede llamar.
Parámetros de ruta1 campo
modelstringIdentificador de modelo de RunAPI situado en la ruta de la llamada.
Ejemplo de solicitud
{
"contents": [
{
"parts": [
{
"text": "Summarize one practical improvement for an API deployment."
}
],
"role": "user"
}
]
}
Evento SSE: chunk
Esquema
{
"additionalProperties": true,
"properties": {
"candidates": {
"items": {
"additionalProperties": true,
"properties": {
"content": {
"additionalProperties": true,
"properties": {
"parts": {
"type": "array"
},
"role": {
"type": "string"
}
},
"type": "object"
},
"finishReason": {
"type": "string"
},
"index": {
"type": "integer"
}
},
"type": "object"
},
"type": "array"
},
"modelVersion": {
"type": "string"
},
"responseId": {
"type": "string"
},
"usageMetadata": {
"additionalProperties": true,
"properties": {
"candidatesTokenCount": {
"type": "integer"
},
"promptTokenCount": {
"type": "integer"
},
"totalTokenCount": {
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
}
Ejemplo
{
"candidates": [
{
"content": {
"parts": [
{
"text": "Hello"
}
],
"role": "model"
},
"finishReason": "STOP",
"index": 0
}
],
"modelVersion": "gemini-3.5-flash",
"responseId": "resp_example",
"usageMetadata": {
"candidatesTokenCount": 8,
"promptTokenCount": 12,
"totalTokenCount": 20
}
}
Error de protocolo: invalid_request
Esquema
{
"additionalProperties": true,
"properties": {
"error": {
"additionalProperties": true,
"properties": {
"code": {
"type": "integer"
},
"message": {
"type": "string"
},
"status": {
"type": "string"
}
},
"required": [
"code",
"message",
"status"
],
"type": "object"
}
},
"required": [
"error"
],
"type": "object"
}
Ejemplo
{
"error": {
"code": 400,
"message": "contents is required",
"status": "INVALID_ARGUMENT"
}
}
Uso
Esquema
{
"additionalProperties": true,
"properties": {
"candidatesTokenCount": {
"type": "integer"
},
"promptTokenCount": {
"type": "integer"
},
"totalTokenCount": {
"type": "integer"
}
},
"type": "object"
}
Ejemplo
{
"candidatesTokenCount": 8,
"promptTokenCount": 12,
"totalTokenCount": 20
}
Ejemplos de código generados
Cada muestra de cURL, JavaScript y Python envía la solicitud validada de este contrato sin requerir un SDK específico del protocolo.
Instalar
pip install requests
import requests
response = requests.post(
"https://runapi.ai/v1beta/models/gemini-3.5-flash:streamGenerateContent?alt=sse",
headers={"x-goog-api-key": "YOUR_API_TOKEN", "Content-Type": "application/json"},
json={"contents": [{"role": "user", "parts": [{"text": "Summarize one practical improvement for an API deployment."}]}]},
stream=True
)
response.raise_for_status()
for line in response.iter_lines(decode_unicode=True):
if line:
print(line)