For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegación principal

Arquitectura

Comprende el arnés de ejecución, el entorno y el servidor de aplicaciones.

OpenAI ejecuta el arnés de ejecución del agente. Tu aplicación le envía trabajo y recibe resultados. Agrega un entorno cuando el agente necesite recursos de cómputo o archivos.

Los componentes

  • Arnés de ejecución: la instancia de Codex alojada en OpenAI que ejecuta el ciclo del modelo y las herramientas y mantiene la sesión del agente.
  • Entorno: donde el agente ejecuta comandos y código, y trabaja con archivos. Un entorno puede ser un sandbox remoto, tu laptop, un contenedor Docker o una función de AWS Lambda.
  • Servidor de aplicaciones: tu código que conecta el agente con tu producto. Envía tareas, recibe eventos y gestiona herramientas de función. Cuando proporcionas el entorno, tu código también gestiona su ciclo de vida.

Comienza con los componentes que necesita tu tarea. El arnés de ejecución puede funcionar sin un entorno, y tu aplicación puede recibir actualizaciones de progreso mediante transmisión continua o webhooks.

Comienza sin un entorno

Un agente que responde preguntas o usa herramientas para acceder a servicios externos puede no necesitar recursos de cómputo ni archivos propios. Establece environment.type en none. Este fragmento muestra la configuración del entorno. Para crear una sesión también se necesitan un agente y una entrada inicial:

{
  "environment": {
    "type": "none"
  }
}

Tu aplicación envía datos de entrada a una sesión. El arnés de ejecución llama al modelo, usa las herramientas configuradas y devuelve resultados. OpenAI conserva la sesión para continuar el trabajo más adelante.

El arnés de ejecución puede llamar directamente a herramientas MCP remotas. En el caso de las herramientas de función, tu código recibe cada llamada, ejecuta la función y devuelve su resultado.

Sin un entorno, no están disponibles las herramientas integradas Bash y apply-patch, los archivos del espacio de trabajo ni los MCP del ejecutor.

Sin un sandbox, la aplicación proporciona herramientas de función o un shell virtual, y la API de agentes puede llamar a servidores MCP remotos. No hay un ejecutor ni un shell integrado.

El entorno de ejecución virtual opcional que se muestra aquí proporciona archivos y comandos de shell a través de las herramientas de función de tu aplicación.

Agrega un entorno alojado en OpenAI

Cuando el agente necesite ejecutar scripts, editar archivos o crear artefactos, establece environment.type en openai_hosted. OpenAI crea y gestiona un sandbox para la sesión.

Tú configuras los paquetes, los archivos y el acceso a la red que necesita el agente. El arnés de ejecución ejecuta comandos directamente en el sandbox. Tu aplicación sigue enviando tareas, recibiendo eventos y gestionando las herramientas de función que haya.

Una aplicación inicia sesiones y recibe eventos de la API de agentes, que ejecuta el arnés de ejecución administrado de Codex e intercambia llamadas a herramientas y resultados con un sandbox. La aplicación controla los recursos de cómputo solo en el caso de los sandboxes autoalojados.

La flecha discontinua se aplica solo cuando tú gestionas el entorno, como se describe a continuación.

Consulta Entornos alojados en OpenAI para conocer las opciones de configuración.

Conecta tu propio entorno

Usa environment.type: "self_hosted" cuando el agente necesite tu infraestructura, tu red privada o software personalizado.

Tu código inicia el entorno y conecta un ejecutor a la sesión. El ejecutor ejecuta los comandos y las herramientas que solicita el arnés de ejecución. Tu aplicación gestiona la conexión y el ciclo de vida sin reenviar cada comando.

Tú eres responsable del aprovisionamiento, la reconexión, el apagado y los archivos que necesites conservar. Tu servidor de aplicaciones o un controlador de webhooks pueden gestionar este trabajo.

La aplicación crea una sesión autoalojada, inicia los recursos de cómputo y conecta un ejecutor. Recibe eventos y comprueba el resultado del turno antes de detener los recursos de cómputo.

Antes de detener los recursos de cómputo, coordina el trabajo entrante y confirma que no haya ninguna ejecución pendiente.

Consulta Conectar un sandbox y Ciclo de vida del sandbox para conocer los requisitos de configuración y apagado.

Recibe actualizaciones de progreso y resultados

Sea cual sea el entorno que elijas, puedes usar una de estas opciones o ambas:

  • Transmisión continua: recibe eventos detallados mientras el agente trabaja, como datos de salida para mostrar en tu producto.
  • Webhooks: recibe cambios en el estado de la sesión sin mantener abierta una transmisión. Tu controlador puede recuperar resultados, ejecutar herramientas de función o gestionar un entorno autoalojado.

Las herramientas de función necesitan un controlador que reciba llamadas y devuelva resultados. Si ese controlador no está disponible, el agente puede quedarse esperando un resultado. Las fallas en los controladores de eventos o del ciclo de vida también pueden interrumpir las actualizaciones de progreso o la gestión del entorno.

Consulta Eventos de sesión y Webhooks para conocer los detalles de integración.