1. Empieza con un contrato de respuesta estructurada
La reparación de respuestas solo sirve cuando la solicitud ya pide una salida estructurada. Casos adecuados:response_format.type = "json_object"- salida con formato de esquema JSON
- una forma de objeto estable que usan varios clientes
2. Activa el plugin en la capa adecuada
Puedes activarresponse-healing en tres lugares:
- política de plugins predeterminada del espacio de trabajo
- configuración de plugins de un ajuste predefinido
pluginsde la solicitud
- espacio de trabajo
- ajuste predefinido
- solicitud
3. Mantén acotada la salida del modelo
La reparación funciona mejor cuando la forma solicitada ya está restringida. Recomendaciones:- un solo objeto, no varios bloques sin relación
- claves obligatorias explícitas
- una temperatura determinista, si es posible
- no solicites texto explicativo fuera de la carga JSON
4. Conoce los límites de la reparación de respuestas
La ruta de reparación actual es determinista y solo funciona sin streaming. Las solicitudes de streaming omiten por completo la reparación. Puede corregir:- bloques de código Markdown alrededor del JSON
- comas finales
- cierres seguros que falten
- claves de objeto sin comillas en objetos recuperables de otro modo
strict. Este modo solo extrae JSON ya válido de bloques de código o texto circundante y omite las transformaciones de reparación sintáctica más amplias.
Cuando la solicitud usa una salida basada en JSON Schema, la reparación también valida la carga recuperada antes de reescribirla. El validador actual cubre restricciones habituales como:
- claves obligatorias
- tipos básicos escalares y de contenedor
- enums y valores const
- límites de matrices y
uniqueItems - longitud de cadenas, expresiones regulares y formatos comunes como
email,uri,uuidydate-time - límites numéricos y
multipleOf - límites de propiedades de objetos y
additionalProperties: false
- inventar campos semánticos que falten
- adivinar valores de negocio
- convertir prosa arbitraria en datos válidos
5. Comprueba que el plugin se haya ejecutado
Cuando se activa la reparación, los detalles de la solicitud deben mostrar información de ejecución del plugin. Comprueba:- el ID del plugin
- si intentó transformar la respuesta
- si la carga cambió
- el motivo del fallo si no se pudo recuperar la respuesta
- si la solicitud no usaba streaming, como se esperaba
6. Distingue los errores del analizador de los errores de contenido
Si la reparación no ayuda, determina qué tipo de fallo se produjo:- JSON mal formado pero estructuralmente cercano a lo esperado
- JSON válido según el esquema, pero con campos incorrectos
- prosa en lugar de JSON
- salida truncada porque el límite de tokens es demasiado bajo
7. Despliega el cambio poco a poco
- activa la reparación en un ajuste predefinido con una salida estructurada estable
- observa los metadatos de ejecución del plugin en los registros
- confirma que las cargas recuperadas coincidan con el esquema esperado
- amplía la configuración a ajustes predefinidos similares solo cuando los registros sean correctos
8. Elige el modo adecuado
- Usa
safesi el flujo de trabajo se beneficia de una limpieza sintáctica limitada, como quitar comas finales o añadir comillas a claves sin comillas. - Usa
strictsi el flujo de trabajo solo debe aceptar JSON ya válido una vez eliminados los envoltorios. - Comprueba los detalles de la solicitud para confirmar qué modo se ejecutó.