Certificar las etiquetas de un LLM con una muestra humana ciega
Conserva las etiquetas de un LLM solo si una muestra humana aleatoria y ciega sitúa el error bajo el objetivo, y da prevalencias con intervalos corregidos.
Para decidir qué etiquetas de un LLM conservar sin revisarlas todas, haz que las personas etiqueten una muestra aleatoria y ciega, elige un umbral de confianza con la mitad de esa muestra y comprueba con la otra mitad que la tasa de error entre las etiquetas por encima del umbral está por debajo de tu objetivo. Para las cifras de prevalencia, corrige la estimación del modelo con sus errores en esa misma muestra, lo que da un intervalo que sigue siendo válido por bueno o malo que sea el modelo.
Una forma habitual de comprobar las etiquetas de un LLM es leer unas cuantas decenas de salidas y, si parecen correctas, publicar el conjunto de datos con una frase del tipo «un LLM etiquetó los datos y los revisamos por muestreo». Esa frase no dice con qué frecuencia son incorrectas las etiquetas, y un revisor no puede saber si la comprobación habría detectado una tasa de error del 15%. Una comprobación que respalda una cifra responde a tres preguntas: qué etiquetas de máquina conservar, cuánto se desvía una tasa calculada a partir de etiquetas de máquina y si un modelo puede sustituir a una persona.
El sesgo de las revisiones por muestreo y de las preetiquetas revisadas
Dos hábitos hacen que una etiqueta de máquina parezca mejor de lo que es. El primero es revisar los ítems sobre los que el modelo estaba menos seguro. Revisar esos ítems encuentra errores rápido, pero los ítems revisados no son una muestra del conjunto de datos, así que su tasa de error no estima nada sobre el resto. El segundo es medir el acuerdo en etiquetas que las personas dieron con la respuesta del modelo en pantalla. Una sugerencia atrae la respuesta hacia ella, así que el acuerdo medido en preetiquetas revisadas sale más alto que el medido a ciegas. Preanotación con LLM trata ese sesgo de automatización con más detalle.
Por eso, una comprobación que respalda una cifra necesita tres propiedades. Los ítems revisados se extraen al azar, con probabilidades de inclusión conocidas. Las personas que los etiquetan no pueden ver la respuesta del modelo. Las etiquetas que eligen una regla son distintas de las que la ponen a prueba.
Predicción selectiva y riesgo selectivo
Predicción selectiva significa que un modelo etiqueta solo los ítems en los que su confianza supera un umbral y se abstiene en el resto, que van a las personas. La magnitud que hay que controlar es el riesgo selectivo, la tasa de error entre las etiquetas que el modelo conserva. Por ejemplo, un umbral que conserva el 70% de los ítems con un 4% de error puede ser más útil que un modelo que lo etiqueta todo con un 12%.
Elegir el umbral y probarlo con las mismas etiquetas exagera lo bien que funciona, así que la muestra humana se divide. Una mitad, la partición dev, elige el umbral. La otra mitad, la partición cert, lo pone a prueba con una prueba binomial unilateral de la afirmación de que el error entre las etiquetas aceptadas está por encima del objetivo. Si esa afirmación se rechaza, el umbral queda certificado con la confianza indicada. Learn-then-Test (Angelopoulos et al., 2025) trata la elección de un umbral como un problema de pruebas múltiples. Uno de sus procedimientos prueba los umbrales candidatos en un orden fijo y se detiene en el primero que falla, lo que le permite probar varios umbrales sin perder la garantía.
Estas pruebas necesitan muestras más grandes que la mayoría de las revisiones por muestreo. Supongamos que el objetivo es como mucho un 10% de etiquetas incorrectas con un 90% de confianza, y que se trata de la primera prueba de un único modelo sin división por clases, que Potato ejecuta con un nivel de aproximadamente 0.06 (la siguiente sección explica por qué). Con 100 etiquetas aceptadas en la partición cert, la prueba solo se supera si como mucho 5 son incorrectas. Un objetivo del 5% exige como mucho 1 etiqueta incorrecta de cada 100, o como mucho 4 de cada 200. Un modelo cuya tasa de error real es del 7% supera esa primera prueba aproximadamente el 29% de las veces con 100 etiquetas cert aceptadas, y aproximadamente el 56% de las veces con 300.
Pruebas repetidas y el presupuesto de error
Las personas siguen etiquetando después de la primera prueba, y repetir la prueba hasta que se supere convertiría una probabilidad del 10% de emitir un certificado erróneo en algo mucho mayor. Una solución es dar a cada prueba una parte decreciente del presupuesto de error. Potato da a la prueba número k la parte 6 / (pi^2 k^2) del error permitido, así que la primera prueba recibe el 61%, la segunda el 15%, y las partes suman el presupuesto completo a lo largo de todas las pruebas posibles. Probar un prompt nuevo o un modelo nuevo cuenta como una prueba nueva, porque es una oportunidad más de superarla por suerte.
Prevalencia con inferencia potenciada por predicciones
Muchos estudios necesitan una tasa más que un conjunto de datos, como la proporción de publicaciones tóxicas o la proporción de ejecuciones de agentes que tienen éxito. Contar las etiquetas de máquina da una tasa sesgada siempre que los errores del modelo se inclinan hacia un lado. Contar solo la muestra humana da una tasa insesgada con un intervalo ancho.
La inferencia potenciada por predicciones (Angelopoulos et al., 2023) combina las dos. Calcula la tasa a partir de las etiquetas de máquina de todos los ítems y luego la corrige con el error medio del modelo en la muestra etiquetada por personas. El intervalo es válido sea cual sea la calidad del modelo. PPI++ ajusta cuánto peso reciben las etiquetas de máquina, de modo que un buen modelo hace el intervalo más estrecho de lo que conseguirían las personas solas y uno malo no lo hace más ancho. Cuando la muestra humana se extrajo con probabilidades desiguales, un estimador de diferencia de Horvitz-Thompson cumple la misma función.
En el ejemplo de trazas de agentes que viene con Potato, un juez LLM evaluó 288 trazas sintéticas de agentes escritas para el ejemplo, cada una con un resultado de referencia, y dijo que el 76% habían tenido éxito. El intervalo de inferencia potenciada por predicciones obtenido con el mismo juez y una muestra humana fue 0.66 [0.57, 0.76], y la tasa de referencia en los datos era 0.60. El juez acertó en el 80% de las trazas individuales y aun así sobrestimó la tasa en 16 puntos, porque sus errores se inclinaban hacia «éxito».
La prueba del anotador alternativo
Un objetivo de precisión fijo puede ser la pregunta equivocada cuando las personas discrepan. Si dos anotadores cuidadosos coinciden en el 85% de los ítems, no se puede demostrar que ningún etiquetador «acierte» el 95% de las veces, porque la referencia también tiene ruido. La prueba del anotador alternativo (Calderon et al., 2025) plantea en su lugar una pregunta relativa. Dejando fuera a cada persona por turnos, prueba si el modelo coincide con las personas restantes al menos con la misma frecuencia que la persona excluida, dentro de un margen. Necesita ítems etiquetados por varias personas, y la implementación de Potato espera a tener al menos tres anotadores con 30 ítems cada uno. Acuerdo entre un juez LLM y personas trata la versión de esta comparación basada en kappa y cómo comprobar la calibración de un juez.
Contratos en el motor de etiquetado de Potato
Desde la versión 2.11, el motor de etiquetado de Potato ejecuta estas pruebas como contratos. Extrae la muestra aleatoria y ciega, la sirve a los anotadores con todas las respuestas de máquina ocultas, la divide en dev y cert, y certifica a medida que llegan las etiquetas. Esta configuración conserva las etiquetas de sentimiento de un LLM allí donde como mucho el 10% son incorrectas con un 90% de confianza, e informa de la prevalencia de cada etiqueta con un intervalo del 90%:
assignment_strategy: engine
labeling_engine:
enabled: true
sources:
- id: llm
kind: llm
endpoint_type: vllm
model: google/gemma-4-12B-it-qat-w4a16-ct
base_url: http://localhost:8001/v1
confidence: {method: logprob}
contracts:
- id: accuracy
kind: selective_risk
schema: sentiment
error: 0.1
confidence: 0.9
- id: prevalence
kind: ppi
schema: sentiment
confidence: 0.9
budgets:
human_labels: 400Una confidence de 0.9 es el valor por defecto de Potato para todos los contratos. La fuente lee la confianza de las log probabilidades de los tokens porque un umbral necesita una confianza que separe las respuestas correctas de las incorrectas, y una confianza que el modelo declara con palabras es el método menos fiable de los que ofrece Potato. El ejemplo de texto de Potato procesa 481 reseñas con Laya primero y este LLM como último nivel. En esa ejecución, el contrato del 10% se cumplió con 165 etiquetas humanas, y el motor aceptó 316 etiquetas de máquina, todas del LLM, porque el umbral de Laya nunca llegó a fijarse. Su error medido frente a las etiquetas de referencia fue del 7.6%. potato label certificate config.yaml muestra qué se probó, con cuántas etiquetas y con qué versiones de modelo y de prompt.
Los límites de la certificación con una muestra ciega
Todas estas garantías se refieren al acuerdo con las personas que etiquetaron la muestra. Si son descuidadas o no están bien formadas, un contrato cumplido certifica el acuerdo con personas descuidadas, así que comprueba a los anotadores con solapamiento y control de calidad antes de fiarte de un certificado.
Una confianza que nunca varía no le da a un umbral nada que separar. El juez del ejemplo de trazas de agentes dio una confianza de 1.0 a todas las trazas, así que ningún umbral podía superar la prueba, y Potato marca un contrato así como infeasible en lugar de aceptarlo todo. El intervalo de prevalencia siguió funcionando con los mismos datos, porque no depende de la confianza.
En las tareas subjetivas, en las que las personas discrepan por razones que forman parte de los datos, puede que no exista una única respuesta correcta por ítem. En ese caso, compara la distribución de etiquetas del modelo con cómo se reparten las personas, que es lo que el contrato distributional de Potato mide frente a un techo de ruido por mitades. Ejecuta potato label status config.yaml después de la primera pasada para ver cuántas etiquetas humanas más necesita cada contrato antes de poder superar la prueba.
Lecturas adicionales
- Contratos del motor de etiquetado, con las opciones y los modos de fallo de cada contrato
- Acuerdo entre un juez LLM y personas y Preanotación con LLM
- Etiquetas con barras de error, sobre la incertidumbre de las propias etiquetas humanas
- Etiquetado automático con IA, comparado, sobre lo que seis herramientas de anotación informan acerca de las etiquetas de máquina
Referencias
- Angelopoulos, A. N., Bates, S., Candès, E. J., et al. (2025). Learn then test: Calibrating predictive algorithms to achieve risk control. The Annals of Applied Statistics. https://doi.org/10.1214/24-AOAS1998
- Angelopoulos, A. N., Bates, S., Fannjiang, C., et al. (2023). Prediction-powered inference. Science, 382(6671). https://doi.org/10.1126/science.adi6000
- Angelopoulos, A. N., Duchi, J. C., and Zrnic, T. (2023). PPI++: Efficient prediction-powered inference. arXiv. https://arxiv.org/abs/2311.01453
- Calderon, N., Reichart, R., and Dror, R. (2025). The alternative annotator test for LLM-as-a-judge: How to statistically justify replacing human annotators with LLMs. Proceedings of ACL 2025. https://aclanthology.org/2025.acl-long.782/