Las salidas estructuradas permiten exigir una respuesta legible por máquina en lugar de texto libre.
Compatibilidad de endpoints
Usa las salidas estructuradas en:
/v1/chat/completions con response_format
/v1/responses con text.format
/v1/messages puede seguir devolviendo texto JSON, pero no usa el mismo contrato de response_format.
Solicitud
Respuesta
Notas sobre el contrato
response_format.type debe ser text, json_object o json_schema.
- Para
json_schema, incluye un objeto de esquema (response_format.json_schema.schema en solicitudes tipo chat o text.format.schema en solicitudes tipo Responses).
- Valida el JSON en tu servidor antes de usarlo en otros sistemas.
Diseña tu esquema
Empieza con un objeto pequeño, marca explícitamente los campos obligatorios y usa enumeraciones para las categorías conocidas. Define additionalProperties: false cuando deban rechazarse las claves adicionales. Mantén sincronizados el esquema solicitado y el validador del servidor; versiónalos juntos.
Valida el resultado
Analiza y valida el resultado completo antes de usarlo posteriormente. Este ejemplo de TypeScript usa Zod y coincide con el esquema meteorológico anterior:
Gestiona rechazos, contenido ausente y respuestas truncadas antes de analizar. Si falla la validación, permite como máximo un número limitado de reintentos correctivos y después devuelve un fallo seguro. Las generaciones reintentadas pueden generar cargos adicionales. Un JSON válido no demuestra que los valores sean correctos ni autoriza una acción.
Registra los fallos de validación por modelo y versión del esquema. Vuelve a comprobar tus casos de evaluación cuando cambie cualquiera de los dos. Para recuperar JSON mal formado, consulta reparación de respuestas. Última modificación el 2 de octubre de 2026