El 30 de julio de 2026, Transformers activó para T5 la atención scaled dot-product (SDPA) de PyTorch. Este efecto secundario permitió al decodificador de UMT5 consultar los tokens futuros, es decir, la respuesta que debía predecir, durante el entrenamiento. Nada se bloqueó, y el error permaneció en la rama main durante casi dos meses. Hugging Face presenta Model Integration Contracts (MIC), un formato de pruebas basado en modelos pequeños, que permitió detectarlo durante una reproducción de los commits.
- Transformers activó SDPA para T5 el 30 de julio de 2026, y el decodificador de UMT5 vio los tokens futuros durante el entrenamiento.
- Las pruebas de integración completas son demasiado costosas para cada solicitud, así que una regresión puede llegar a la rama principal.
- Los Model Integration Contracts usan un fixture pequeño que corre en CPU, con un ejemplo de uso y baselines validadas por un humano.
- El fixture de UMT5 detectó el error durante cinco meses de commits, pero la CI aún no bloquea las solicitudes.
Transformers admite más de 750 tipos de modelos, y su conjunto de pruebas es considerable: más de 88 000 pruebas CPU en la rama principal, y más de 200 000 pruebas GPU en una ejecución diaria. Las pruebas de integración cargan puntos de control reales y utilizan la API de los modelos en hardware real. Ejecutarlas en cada solicitud de modificación monopolizaría una gran cantidad de GPU todo el día, lo cual no es realista. Una regresión puede, por tanto, llegar a la rama principal antes de ser detectada por una ejecución programada.
Reducir el modelo en lugar de probar el grande
El enfoque consiste en crear un fixture, es decir, un modelo pequeño construido a partir de la configuración del punto de control real, con menos capas, más estrechas, pero de todos los tipos presentes en el modelo original. Sus archivos de tokenizer y procesador permanecen sin cambios. Este fixture se publica una vez y luego se reutiliza, y las pruebas rápidas se ejecutan sobre él en un simple procesador CPU. En el estudio CPU del equipo, el fixture experimental de UMT5 pesaba 66 MB, frente a 1 227 MB para el punto de control fuente. Este método se aplica también a los modelos muy grandes, algunos de los cuales no caben en las GPU estándar pero cuyo fixture funciona en CPU.
Las pruebas van más allá de la simple carga y un paso de inferencia. El error de UMT5 habría superado este paso sin dificultad. Los fixtures no reemplazan las pruebas de integración completas, pero dan una oportunidad de detectar los errores antes de que lleguen a la rama principal.
Un MIC incluye tres elementos: el fixture, un usage path (un ejemplo ejecutable, como la generación de texto o un paso de entrenamiento) y unas baselines, las salidas registradas durante la ejecución de ese ejemplo y validadas por un humano. El contrato se respeta si la ejecución sobre el fixture produce siempre esas salidas de referencia.
El retorno sobre el error de UMT5
El equipo reprodujo MIC congelados sobre cinco meses de commits de Transformers. El fixture de UMT5 señaló la regresión desde su introducción, el 30 de julio de 2026, hasta su corrección, el 28 de septiembre. Las probabilidades logarítmicas de las etiquetas diferían de la referencia validada en 1,22, y la pérdida de entrenamiento en aproximadamente 0,20. Un detalle importó: el contrato usaba SDPA, el camino de atención por defecto. La ejecución de la única variante de atención « eager » no revelaba el error. Durante una demostración en una rama de prueba de la CI de Transformers, habiendo sido revertida la corrección, la verificación falló con las mismas diferencias, y el paso del runner T5 tomó 13,4 segundos en CPU, sin contar la instalación.
Generar los contratos con agentes
Una herramienta de línea de comandos, tmic, crea el contrato y construye el fixture. Para un nuevo modelo, un LLM redacta el código de uso y el manifiesto, luego ejecuciones CPU y GPU miden las baselines candidatas. Según el equipo, el LLM redacta pero no aprueba: cualquier modificación de las expectativas requiere validación humana. El informe de reducción del modelo Llama 4 Scout ilustra este método: 108,6 mil millones de parámetros se convierten en 44,7 millones, la parte visión pasa de 34 a 2 capas y la parte lenguaje de 48 a 4.
Para los modelos de prueba, el equipo comparó pesos aleatorios con pesos entrenados en unos pocos ejemplos. En el estudio sobre la inicialización de pesos, los fixtures Whisper aleatorios detectaron 18 fallos inyectados de 24, frente a 24 de 24 para los fixtures entrenados. Estos fallos eran sintéticos, y ambas versiones pasaron por alto un error de decodificación asistida revelado por el punto de control real de Whisper.
Al 1 de noviembre de 2026, el trabajo MIC de la CI de Transformers reporta los fallos sin bloquear las solicitudes de modificación. La cuestión de hacerlo bloqueante sigue abierta, por falta de medidas sobre el número de errores reales detectados y de falsas alarmas.
