Background Mode OpenAI API: ejecuta respuestas en segundo plano
Background Mode OpenAI API permite iniciar
una respuesta de OpenAI y dejar que continúe procesándose
aunque tu aplicación no mantenga abierta la conexión original.
Mediante Responses API, puedes utilizar
background: true, guardar el ID de la respuesta
y consultar posteriormente su estado hasta obtener
el resultado final.
¿Qué es Background Mode OpenAI API?
Background Mode OpenAI API es una modalidad de Responses API que permite ejecutar una respuesta en segundo plano. En lugar de esperar a que el modelo termine dentro de la misma conexión HTTP, la aplicación recibe un objeto Response con un identificador y puede consultar ese recurso posteriormente hasta que su estado cambie a completado.
Qué permite hacer Background Mode OpenAI API
Background Mode resulta especialmente útil para respuestas que pueden necesitar más tiempo de procesamiento.
Ejecutar en segundo plano
Iniciar una respuesta sin esperar a que termine en la conexión original.
Guardar el Response ID
Utilizar el identificador para consultar posteriormente el resultado.
Consultar estado
Recuperar el objeto Response mientras sigue procesándose.
Cancelar
Solicitar la cancelación de una respuesta que todavía continúa ejecutándose.
Tareas largas
Evitar timeouts en razonamientos o workflows complejos.
Agentes
Ejecutar procesos de varios pasos sin bloquear una solicitud web.
Cómo funciona Background Mode en OpenAI API
El flujo consiste en iniciar la respuesta, guardar su ID y recuperarla después.
Creas la respuesta
Envías
background: true
en Responses API.
Consultas su estado
Utilizas el Response ID para recuperar el objeto.
Obtienes el resultado
Cuando termina, procesas el output de la respuesta.
Background Mode funciona con Responses API
La creación
de una respuesta
admite un parámetro
booleano llamado
background.
Ejecutar una Response en segundo plano
Si utilizas
background: true,
la respuesta puede
continuar procesándose
después de que
la llamada inicial
haya retornado.
OpenAI recomienda Background Mode para ciertos modelos capaces de tardar varios minutos en completar tareas difíciles.
Ver Responses API →Cómo activar Background Mode OpenAI API
Basta con añadir
background: true
al crear
la respuesta.
Crear una respuesta en segundo plano
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5.6-sol",
input="Analiza este problema técnico y propone una solución detallada.",
background=True
)
print(response.id)
print(response.status)
El identificador es la referencia que utilizarás para recuperar posteriormente el estado y resultado.
Qué devuelve la llamada inicial
Una Response contiene información suficiente para seguir el procesamiento.
| Campo | Función |
|---|---|
id |
Identificador único de la respuesta |
status |
Estado actual de la ejecución |
background |
Indica si la respuesta se ejecutó en segundo plano |
created_at |
Momento de creación |
completed_at |
Momento de finalización cuando corresponda |
output |
Contenido generado cuando está disponible |
Cómo recuperar una respuesta en Background Mode
Responses API dispone de un endpoint específico para recuperar una Response mediante su ID.
Consultar por Response ID
response = client.responses.retrieve(
"resp_123"
)
print(response.status)
La operación corresponde a:
GET /v1/responses/{response_id}.
Ejemplo de polling en Python
Una aplicación puede consultar periódicamente el estado hasta que la ejecución termine.
Esperar la finalización
import time
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5.6-sol",
input="Realiza un análisis detallado.",
background=True
)
while response.status not in [
"completed",
"failed",
"cancelled",
"incomplete"
]:
time.sleep(3)
response = client.responses.retrieve(
response.id
)
print(response.status)
if response.status == "completed":
print(response.output_text)
Espera algunos segundos entre consultas y aplica backoff cuando el trabajo pueda tardar bastante tiempo.
Estados de una Response en segundo plano
Tu aplicación debe comprobar el estado antes de asumir que existe un resultado final.
| Estado | Interpretación general |
|---|---|
queued |
La respuesta espera procesamiento |
in_progress |
El modelo continúa trabajando |
completed |
La respuesta finalizó correctamente |
failed |
La ejecución terminó con un error |
incomplete |
La respuesta terminó sin completarse totalmente |
cancelled |
La ejecución fue cancelada |
Evita esperar
únicamente
por completed.
Tu sistema
también debe manejar
errores,
cancelaciones
y respuestas incompletas.
Cancelar una respuesta en Background Mode
Responses API dispone también de una operación para cancelar respuestas activas.
Cancelar por Response ID
cancelled = client.responses.cancel(
"resp_123"
)
print(cancelled.status)
La operación
de cancelación
utiliza:
POST /v1/responses/{response_id}/cancel.
Background Mode y el almacenamiento de Responses API
Recuperar posteriormente una respuesta requiere que la plataforma conserve estado suficiente para permitir esa consulta.
Responses API almacena respuestas por defecto
El parámetro
store
controla si
la respuesta generada
queda disponible
para recuperación posterior.
Actualmente su valor
predeterminado
es true.
Antes de utilizar Background Mode con información sensible, revisa las políticas de retención aplicables a tu organización.
Background Mode y Zero Data Retention
Esta es una limitación importante para organizaciones con requisitos estrictos de retención.
No es compatible con Zero Data Retention
OpenAI indica que Background Mode necesita almacenar temporalmente datos de la Response para permitir el polling posterior. Por ello, no es compatible con Zero Data Retention.
OpenAI indica que proyectos con Modified Abuse Monitoring pueden continuar utilizando Background Mode.
Background Mode vs respuesta normal
Ambos utilizan Responses API, pero cambia cómo espera tu aplicación el resultado.
| Aspecto | Background Mode | Respuesta normal |
|---|---|---|
| Esperar finalización | No en la llamada inicial | Sí |
| Polling | Sí | No normalmente |
| Response ID | Esencial para recuperar | También existe |
| Tareas largas | Especialmente útil | Puede provocar timeout en el cliente |
| Uso típico | Procesos complejos | Respuestas rápidas |
Background Mode vs streaming
Aunque ambos pueden mejorar la experiencia en tareas largas, resuelven necesidades diferentes.
| Aspecto | Background Mode | Streaming |
|---|---|---|
| Conexión abierta | No necesita mantenerse | Sí mientras llegan eventos |
| Resultado parcial | Normalmente consultas el estado | Se entrega progresivamente |
| Uso principal | Procesamiento asíncrono | UX interactiva |
| Cliente desconectado | La tarea puede continuar | Se pierde el stream abierto |
Background Mode vs Batch API OpenAI
Esta diferencia es importante: ambas capacidades son asíncronas, pero sirven para escenarios distintos.
| Aspecto | Background Mode | Batch API |
|---|---|---|
| Unidad | Una Response | Muchas requests |
| JSONL | No | Sí |
| Uso | Tarea individual larga | Procesamiento masivo |
| Resultado | Response object | Archivo de resultados |
| Prioridad | Continuar una tarea compleja | Volumen y costo |
Si tienes una tarea larga, piensa en Background Mode. Si tienes miles de tareas independientes, considera Batch API.
Ver Batch API →Background Mode con tools de Responses API
Background Mode puede resultar especialmente útil cuando una respuesta incluye varias etapas o herramientas.
Web Search para investigación con varias búsquedas.
File Search para consultar documentación extensa.
Code Interpreter para análisis y cálculos.
MCP para workflows con servicios externos.
Hosted Shell para procesos de desarrollo más extensos.
Background Mode con tareas de razonamiento largo
Algunos modelos pueden necesitar varios minutos para resolver problemas especialmente difíciles.
Evita depender de un timeout HTTP
Background Mode permite desacoplar la duración del razonamiento de la duración máxima de una conexión entre tu frontend y backend.
OpenAI recomienda explícitamente Background Mode en determinados modelos Pro porque algunas tareas pueden tardar varios minutos.
Cómo usar Background Mode en una aplicación web
Una arquitectura sencilla puede separar la creación del trabajo y la consulta del resultado.
El frontend solicita iniciar el análisis.
Tu backend
crea una Response
con
background: true.
Guardas
response.id
en tu base de datos.
Devuelves al frontend un identificador del trabajo.
El frontend consulta periódicamente tu propio endpoint.
Tu backend recupera la Response desde OpenAI.
Qué datos guardar para una tarea en Background Mode
Para producción, conviene asociar la Response con tu propio registro interno.
| Dato | Uso |
|---|---|
response_id |
Recuperar la Response desde OpenAI |
user_id |
Relacionar la tarea con un usuario |
status |
Guardar el último estado conocido |
created_at |
Conocer cuándo comenzó el trabajo |
completed_at |
Registrar cuándo terminó |
Diseña correctamente el polling
Consultar el estado demasiadas veces no hace que el modelo termine antes.
Espera unos segundos entre consultas.
Incrementa el intervalo para trabajos largos.
Detén el polling en un estado terminal.
Evita que múltiples pestañas consulten el mismo trabajo.
Guarda el último estado en tu backend.
Cómo manejar respuestas fallidas o incompletas
Una tarea
en segundo plano
no está garantizada
a terminar siempre
con estado
completed.
Revisa el error
Guarda la información disponible antes de decidir si reintentar.
Comprueba la causa
La respuesta puede finalizar sin completar toda la generación.
No continúes esperando
Marca el trabajo como cancelado en tu aplicación.
Cuánto cuesta Background Mode OpenAI API
Background Mode cambia la forma de ejecutar una Response, pero el costo principal sigue dependiendo del modelo, tokens y herramientas utilizadas.
Mide el trabajo completo
Una tarea larga puede consumir muchos tokens de razonamiento, generación y tool calls. El hecho de ejecutarla en background no significa que sea automáticamente más barata.
No confundas el procesamiento en segundo plano con el descuento específico de Batch API.
Ver precios OpenAI API →Casos de uso de Background Mode OpenAI API
Background Mode encaja especialmente bien en tareas individuales largas o complejas.
Investigación: análisis que requiere múltiples búsquedas y razonamiento.
Programación: revisar proyectos o resolver errores complejos.
Documentos: analizar grandes cantidades de contexto.
Agentes: completar workflows de múltiples pasos.
Análisis: tareas de razonamiento intensivo.
Automatización: procesos donde el usuario puede volver más tarde por el resultado.
Cuándo conviene usar Background Mode
Tarea larga
Puede tardar varios minutos en finalizar.
No necesitas streaming
El usuario puede esperar y consultar más tarde.
Workflow complejo
Hay varias etapas o tools involucradas.
Cuándo no necesitas Background Mode
Respuesta en segundos
Una Response normal suele ser más sencilla.
Necesitas mostrar progreso
Streaming puede ofrecer mejor UX para texto generado en vivo.
Miles de tareas
Si tienes gran volumen de requests independientes, Batch API puede encajar mejor.
Background Mode y los límites de OpenAI API
Ejecutar una respuesta en segundo plano no elimina los límites del modelo o proyecto.
La ejecución sigue consumiendo capacidad
Tokens, tool calls y solicitudes continúan sujetos a los límites aplicables al modelo seleccionado.
Ver límites OpenAI API →Documentación oficial de Background Mode OpenAI API
Background Mode forma parte de Responses API y puede evolucionar junto con los modelos y políticas de retención.
Responses API
Consulta
background,
recuperación,
cancelación,
almacenamiento
y modelos compatibles.
Guías relacionadas con Background Mode OpenAI API
Continúa explorando procesamiento, agentes y Responses API.
FAQ sobre Background Mode OpenAI API
Respuestas sobre background, polling, Response IDs, cancelación y Batch API.
Background Mode OpenAI API permite ejecutar una Response en segundo plano y recuperar posteriormente su estado y resultado.
Añade
background: true
al crear
la respuesta
mediante Responses API.
Guarda
el Response ID
y utiliza
GET /v1/responses/{response_id}
para recuperar
el recurso.
Sí. Responses API dispone de un endpoint para cancelar una respuesta mediante su ID.
No. Background Mode está pensado principalmente para una Response individual larga, mientras Batch API procesa muchas requests de forma asíncrona.
No. Streaming mantiene una conexión para entregar eventos progresivos. Background Mode permite que la ejecución continúe sin mantener esa conexión abierta.
Sí. Es uno de sus principales casos de uso, especialmente cuando una tarea puede tardar varios minutos.
No. OpenAI indica que Background Mode necesita almacenar temporalmente datos de la Response para permitir el polling posterior.
No necesariamente. El costo sigue dependiendo del modelo, tokens y herramientas utilizadas.
Como mínimo, conviene guardar el Response ID, usuario asociado, estado y fecha de creación.
Continúa con Streaming en OpenAI API
Ya sabes cómo dejar una tarea ejecutándose en segundo plano. El siguiente paso es aprender cómo recibir los resultados progresivamente mediante streaming y eventos de Responses API.
Ver Streaming →