Cuando ejecutas un agente, el resultado contiene más que la respuesta final. También indica qué agente queda a cargo tras una transferencia, aporta los datos para continuar en el siguiente turno y contiene una instantánea que permite reanudar la ejecución si se pausa para una revisión.
Elige la propiedad del resultado que necesitas
A la mayoría de las aplicaciones les bastan unas pocas propiedades del resultado.
| Si necesitas | Usa |
|---|---|
| La respuesta final que se mostrará al usuario | finalOutput in TypeScript or final_output in Python |
| El historial local listo para volver a enviarlo como entrada | history in TypeScript or to_input_list() in Python |
| El agente especialista que normalmente debería encargarse del siguiente turno | lastAgent in TypeScript or last_agent in Python |
| El encadenamiento de respuestas gestionado por OpenAI | lastResponseId in TypeScript or last_response_id in Python |
| Las aprobaciones pendientes y una instantánea para reanudar la ejecución | interruptions junto con state in TypeScript or to_state() in Python |
Estas son las propiedades que conviene conocer primero. Para obtener más información sobre los elementos de la ejecución, las respuestas sin procesar del modelo y los diagnósticos detallados, consulta la documentación del SDK y el material de referencia.
Qué reutilizar en el siguiente turno
Usa el resultado según la estrategia que sigas para continuar la conversación.
- Si tu aplicación gestiona todo el historial de forma local, reutiliza
.historyin TypeScript orto_input_list()in Python - Si usas una sesión, sigue pasando la misma sesión y deja que el SDK cargue y guarde el historial por ti.
- Si el servidor gestiona la continuación, pasa solo la nueva entrada del usuario y reutiliza el ID guardado en lugar de volver a enviar toda la conversación.
- Después de una transferencia, reutiliza
si ese agente especialista debe seguir a cargo en el siguiente turno.lastAgentin TypeScript orlast_agentin Python
Las ejecuciones interrumpidas devuelven el estado en lugar de una respuesta final
Los flujos de aprobación son el caso más común en el que el resultado se deja incompleto de forma intencional.
puede quedar vacío porque la ejecución aún no ha terminado.finalOutputin TypeScript orfinal_outputin Pythoninterruptionsindica qué llamadas a herramientas están pendientes de una decisión. es la instantánea guardada que vuelves a pasar al entorno de ejecución después de aprobar o rechazar esas llamadas.statein TypeScript orto_state()in Python
Ese mismo estado es el que serializas si la revisión puede tener lugar más adelante, fuera de la solicitud actual.
Elementos de ejecución y diagnósticos detallados
El SDK también ofrece elementos de ejecución y diagnósticos más detallados para las aplicaciones que necesitan más información de la que aportan las propiedades anteriores. Entre ellos se incluyen registros de llamadas a herramientas y transferencias para cada elemento, respuestas sin procesar del modelo, resultados de los controles de seguridad y detalles de uso.
Esta información sirve para realizar auditorías, crear interfaces personalizadas y depurar problemas en profundidad, aunque la mayoría de los desarrolladores puede empezar por otros temas de este sitio.
Próximos pasos
Una vez que sepas qué partes del resultado necesitas, consulta la guía que explica cómo se generan o cómo puedes inspeccionarlas.
Revisa cómo se relaciona el manejo de resultados con el ciclo de ejecución y la estrategia para continuar la conversación.
Consulta cómo las ejecuciones en pausa devuelven las interrupciones y el estado necesario para reanudarlas.
Usa trazas cuando necesites inspeccionar el registro detallado del flujo de trabajo.