Saltar al contenido principal

Salida estructurada

Hacer que un LLM dé la respuesta en una forma fija como JSON, para usarla tal cual en tablas o programas

La salida estructurada consiste en hacer que un LLM dé la respuesta en una forma fija como JSON. Si se le pasan como esquema (la definición de la forma) los nombres de los campos, sus tipos y los valores posibles, el modelo queda limitado a escribir solo respuestas que encajan en esa forma. Al usar resultados de clasificación o extracción en tablas o programas, la forma es la misma cada vez y hay menos fallos al leerlos. Pero que la forma se respete no significa que el contenido sea correcto, así que los valores se comprueban con tu propio programa o con ejemplos cuya respuesta correcta conoces.

Hacer que responda en una forma fija

La salida estructurada consiste en hacer que un LLM dé la respuesta en una forma fija como JSON (un formato de datos que coloca nombres de campos y valores con una escritura fija). Para meter la respuesta en una tabla, leerla con un programa o pasarla a otro sistema, hace falta que la forma sea la misma cada vez. Por ejemplo, el trabajo de sacar de una consulta 3 campos: el tipo, si es urgente y el nombre del producto.

Solo con pedir en la instrucción “responde en JSON”, la forma ya tiende a ser regular. Pero según la explicación de Anthropic, con eso solo pueden aparecer errores de escritura, faltar campos obligatorios o no coincidir los tipos.

Cómo se indica la forma

Muchas API tienen una función para indicar la forma de la respuesta. Se pasan como esquema (la definición de la forma) los nombres de los campos, sus tipos (número o texto) y la lista de valores posibles. El modelo queda limitado a escribir solo respuestas que encajan en esa forma.

OpenAI dice que esta función hace que la respuesta siga siempre el esquema dado y evita que falten campos obligatorios o que aparezcan valores fuera de las opciones fijadas. Anthropic y Google también tienen funciones con el mismo fin. Cada servicio pone límites a la forma de escribir el esquema que se puede usar.

Aunque la forma sea correcta, comprueba el contenido

Que la forma se respete no significa que el contenido sea correcto. La guía de Google recomienda comprobar siempre los valores con tu propio programa, aunque la salida sea un JSON con la sintaxis correcta. También pide prepararse para respuestas con la forma correcta pero el sentido equivocado. Estas son formas de comprobarlo.

  • Revisar que los valores estén dentro del rango o de la lista fijados
  • Cotejar los valores extraídos con ejemplos cuya respuesta correcta conoces
  • Volver a enviar cuando la forma o los valores no cuadren

Acortar los nombres de los campos y quitar los que no hacen falta también reduce los tokens de salida.

¿Te resultó útil esta página?

Términos relacionados

Usos relacionados