Validar es comprobar fuera del modelo que una salida cumple el contrato antes de usarla. El LLM puede proponer; tu aplicación decide si la propuesta es admisible. Esa frontera debe existir incluso cuando usas salidas estructuradas.
Un schema puede validar que amount es un número. Sólo el dominio sabe si ese monto corresponde a la orden, y sólo la autorización sabe si el actor puede reembolsarlo.
Trátala como tratarías una petición externa:
Esto también aplica a los argumentos de tool calling. Un schema describe una llamada; no la autoriza.
Si la salida falla, puedes devolver errores precisos al modelo: «confidence debe estar entre 0 y 1» es mejor que «inténtalo otra vez». Limita los reintentos y distingue:
Cada fallo real debería convertirse en caso de evaluación, no esconderse detrás de reintentos silenciosos.
Una respuesta puede cumplir el schema y ser falsa. Para hechos necesitas fuentes, grounding o consultar el sistema de registro. Para código necesitas ejecutarlo y probarlo.
La salida estructurada hace validable el contrato; Evaluaciones miden la calidad a lo largo del tiempo y Permisos gobiernan las acciones.