De señales a confianza calibrada: la evolución del marco de fiabilidad de anyformat
En un artículo anterior presentamos cómo anyformat calcula la confianza a partir de señales del modelo como las log-probabilidades de los tokens, la entropía y las diferencias de probabilidad. Aquella primera versión se centraba en construir una señal con significado: una forma de estimar cuándo el modelo dudó durante la generación.
Desde entonces, hemos hecho evolucionar nuestra metodología de una confianza basada en señales a una confianza totalmente calibrada, fundamentada en datos etiquetados y validación estadística. El objetivo ya no es solo ordenar las salidas de más seguras a menos seguras, sino garantizar que:
Una puntuación de confianza del 90% significa que aproximadamente el 90% de esas predicciones son correctas.
Este salto, de señal a probabilidad calibrada, es lo que hace que la confianza sea accionable en sistemas en producción.
La confianza no es solo una señal. Es una probabilidad
Los LLM modernos exponen señales internas de incertidumbre: logprobs de tokens, distribuciones de tokens alternativos, entropía, diferencias de probabilidad. Estas señales son extremadamente informativas.
Pero no son probabilidades de acierto.
Los logprobs miden la verosimilitud lingüística bajo la distribución interna del modelo. No miden directamente si un valor extraído coincide con la verdad de referencia del documento.
Para cerrar esa brecha necesitamos calibración. Calibrar significa:
Entre las predicciones con confianza p, aproximadamente el p% debería ser correcto.
Formalmente, aprendemos una función:
f(señales de logprob) ≈ P(Y = 1 | señales)
Donde:
Y = 1denota que la predicción es correcta.- Las señales provienen de estadísticas a nivel de token agregadas sobre unidades con significado.
La calibración es:
- Post-hoc: se aplica después de que el modelo genere sus salidas.
- Agnóstica al modelo: no requiere reentrenar el LLM base.
- Supervisada: requiere datos etiquetados de acierto.
Sin datos etiquetados, no hay forma de saber si una puntuación en bruto de 0,7 corresponde a un 70%, un 40% o un 95% de acierto real.
Calibración por modelo
No todos los modelos expresan la incertidumbre de la misma manera.
Las distribuciones de logprobs de los modelos de la familia GPT difieren significativamente de las de la familia Gemini. Un logprob de -0,1 en un modelo no significa lo mismo que un -0,1 en otro.
Por esta razón:
- Calibramos la confianza por separado para cada modelo.
- Una confianza del 90% significa lo mismo tanto si la extracción la produjo un modelo de la familia GPT como uno de la familia Gemini.
- Cambiar de modelo no altera silenciosamente tu perfil de riesgo operativo.
La calibración es siempre específica de cada modelo.
Calibración por tarea: parsing vs extracción
También calibramos la confianza de forma independiente para nuestras dos tareas principales:
- Parsing de documentos
- Extracción de valores estructurados (a partir de un documento parseado)
Estas tareas difieren en granularidad y en qué significa acertar.
Parsing: confianza a nivel de span
Para el parsing, nuestra unidad de calibración es el span, que puede ser una celda de tabla, una línea de texto con significado y otras unidades similares.
Elegimos los spans deliberadamente porque representan las unidades semánticas del documento relevantes para el negocio. La extracción posterior opera sobre estas unidades. Calibrar a nivel de token no reflejaría cómo se consumen los datos en realidad.
Extracción: confianza a nivel de valor
Para la extracción, la unidad es una instancia de valor: una hoja individual del JSON de salida, como invoice.total o vendor.address.city.
Es la unidad más pequeña en la que el acierto importa para la lógica de negocio. La confianza debe reflejar si ese valor concreto es correcto, no si los tokens individuales eran probables.
Verdad de referencia: por qué los datos etiquetados son necesarios
Para calibrar nuestro sistema utilizamos un dataset de referencia etiquetado y diverso, que cubre una amplia variedad de tipos de documentos reales como formularios, tablas y facturas.
En lugar de apoyarnos en anotaciones estándar de terceros, revisamos y curamos el dataset internamente para alinearlo con la forma en que anyformat parsea y extrae. Cada documento se procesó de principio a fin y se validó manualmente para garantizar que:
- La representación parseada refleja la estructura real del documento.
- Los valores extraídos siguen un esquema consistente y bien definido.
- Las etiquetas de acierto son precisas y fiables.
Este dataset nos permite calibrar y evaluar tanto la confianza del parsing como la de la extracción de forma controlada y estadísticamente significativa.
Tenemos previsto publicar más detalles sobre este benchmark en el futuro.
De documentos a unidades etiquetadas de calibración
Una vez tenemos los documentos del benchmark y las predicciones del modelo, descomponemos ambos en unidades relevantes para el negocio:
- El parsing opera a nivel de span semántico.
- La extracción opera a nivel de valor hoja del JSON.
Estas unidades reflejan cómo se consumen los datos en flujos de trabajo reales. Cada unidad predicha se compara con la verdad de referencia y se etiqueta como correcta o incorrecta. Así se crea un dataset etiquetado de unidades con significado.
Solo en este punto puede empezar la calibración.
Dos problemas distintos: discriminación y calibración
Es importante distinguir entre dos pasos.
1. Construcción de la puntuación (discriminación)
Primero, construimos una señal que separe las unidades correctas de las incorrectas.
Mantenemos el espíritu de nuestro enfoque original basado en señales y usamos características interpretables derivadas de los tokens, como:
- Logprob máximo medio
- Logprob mínimo dentro de la unidad
- Diferencia media y mínima respecto al token alternativo
- Entropía normalizada
Estas características capturan la confianza global del modelo, el punto de mayor duda, la decisión frente a la ambigüedad y la incertidumbre distribucional.
Construimos una fórmula paramétrica que combina estos términos. Mantenemos la expresión interpretable y de baja dimensión de forma intencionada, en lugar de entrenar un clasificador opaco de alta capacidad, para preservar la interpretabilidad, reducir el riesgo de sobreajuste y garantizar la robustez ante cambios de distribución y de dominio.
Después elegimos los parámetros que maximizan nuestra métrica de separación (por ejemplo, ROC AUC o PR AUC).
En esta fase estamos resolviendo un problema de clasificación estándar:
Ordenar las unidades correctas por encima de las incorrectas con la mayor eficacia posible.
Esto produce una puntuación, pero todavía no necesariamente una probabilidad calibrada.
2. Calibración (mapeo a probabilidad)
Una vez tenemos una puntuación discriminativa, aplicamos una función de calibración que la convierte en una probabilidad real. Usamos calibración post-hoc (por ejemplo, escalado logístico o de Platt) aprendida a partir de datos etiquetados.
Tras la calibración, la interpretación pasa a ser operativa:
Si devolvemos una confianza de 0,9, aproximadamente el 90% de esas unidades son correctas.
Para evaluar la calidad de la calibración usamos diagramas de fiabilidad adaptativos y el Adaptive Expected Calibration Error (Adaptive ECE). El binning adaptativo garantiza estimaciones estables incluso cuando las distribuciones de confianza están sesgadas.
La calibración reduce la brecha entre la confianza predicha y el acierto empírico.
Esto es lo que convierte una señal de ordenación en una herramienta de decisión.
Por qué esto importa en producción
Con confianza calibrada:
- Puedes definir umbrales que reflejen el riesgo real.
- Puedes activar la revisión humana solo cuando la confianza cae por debajo de una probabilidad determinada.
- Puedes automatizar con seguridad los valores de alta confianza.
- Puedes comparar modelos sin cambiar tus criterios de aceptación.
La calibración desacopla la incertidumbre del modelo de los umbrales de decisión operativos. El modelo puede evolucionar; tu política de riesgo permanece estable.
Este artículo también está publicado en LinkedIn, junto con el resto de nuestro blog. Sigue a anyformat allí para estar al día de nuevos posts.

