LO ESENCIAL EN 30 SEGUNDOS
- Cada contrato reúne un pequeño modelo de prueba creado a partir de la configuración de un checkpoint real, un caso de uso ejecutable y salidas de referencia revisadas por una persona.
- Según Hugging Face, la versión reducida de Llama 4 Scout pasa de 108.600 millones a 44,7 millones de parámetros conservando todos los tipos de capa, y estos modelos se ejecutan en máquinas con CPU.
- A 1 de noviembre, la tarea de CI informa de los fallos pero no bloquea las pull requests; la cobertura sigue siendo parcial.
Hugging Face ha presentado los Model Integration Contracts (MIC), una nueva forma de probar su biblioteca Transformers. En una entrada del 3 de noviembre, Tarek Ziadé explica que se busca detectar regresiones mientras una pull request sigue en revisión, y no tras fusionarse. Herramientas, contratos y datos son públicos; la empresa presenta los MIC como un estándar abierto en desarrollo.
El problema
Transformers admite más de 750 tipos de modelos. Según la entrada, su rama principal ejecuta más de 88.000 pruebas en CPU y una tarea diaria lanza más de 200.000 en GPU. Las pruebas de integración completas, con checkpoints reales en aceleradores reales, son demasiado lentas y caras para cada cambio, así que algunos errores pasan inadvertidos. El texto cita un cambio en UMT5 del 30 de julio que permitía al decodificador ver tokens futuros durante el entrenamiento; no se corrigió hasta el 28 de septiembre.
Cómo funciona un contrato
Cada contrato tiene tres piezas. El modelo de prueba (fixture) es una versión reducida generada a partir de la configuración del checkpoint real: menos capas y más estrechas, pero al menos una de cada tipo, como atención deslizante y completa o bloques densos y de mezcla de expertos, con los archivos del tokenizador y del procesador intactos. El caso de uso es un ejemplo ejecutable en Markdown de una tarea habitual (generar texto, un paso de entrenamiento). Las referencias son salidas registradas con una versión correcta y revisadas por una persona. El contrato se cumple si el caso de uso sigue reproduciéndolas sobre el modelo reducido.
Los pesos parten de una inicialización aleatoria con semilla fija; si el modelo no reacciona a los cambios en su entrada, se sobreajusta con unos pocos ejemplos. Hugging Face indica que el modelo de prueba de UMT5 ocupa 66 MB frente a los 1.227 MB del original. En un experimento con Whisper, las versiones con pesos aleatorios detectaron 18 de 24 fallos introducidos a propósito y las sobreajustadas, los 24, aunque ambas pasaron por alto un error real de decodificación asistida. Una herramienta de línea de comandos, tmic, prepara los contratos y puede pedir a un modelo de lenguaje el código de uso, pero una persona aprueba cada resultado esperado. La organización huggingface-mic muestra ahora 234 modelos de prueba en el Hub.
Preguntas abiertas
Por ahora, la tarea de CI es solo informativa: señala fallos sin impedir las fusiones. Hugging Face aún debe medir los errores reales detectados, las falsas alarmas, el tiempo de revisión de las referencias y si algunos fallos solo aparecen con los pesos reales. Prevé enlazar las páginas de los modelos del Hub con sus contratos e invita a la comunidad a cubrir más modelos.
