¿Con qué rapidez ejecuta tu dispositivo un modelo de IA real? Un modelo de lenguaje de 135 M de parámetros (SmolLM2-135M-Instruct, int8) se ejecuta por completo en tu navegador y genera 64 tokens fijos a partir de un mismo texto, con un solo hilo mediante WebAssembly. Cuanto menor el tiempo, mejor.
Ejecutar un modelo de IA solía significar enviar la petición a un servidor con una hilera de GPU detrás. WebAssembly y los pesos ONNX cuantizados permiten alojar un modelo de lenguaje real —no de juguete, sino un transformer ajustado a instrucciones con 135 millones de parámetros y 30 capas— dentro de una pestaña del navegador y ejecutarlo en la CPU que tenga el dispositivo del visitante. Este benchmark mide justo eso: qué tan rápido puede tu propio equipo hacer la aritmética que hace un modelo de lenguaje al escribir.
El modelo es SmolLM2-135M-Instruct, cuantizado a enteros de 8 bits y ejecutado con el backend WebAssembly de ONNX Runtime, limitado a un solo hilo para que el resultado de cada visitante dependa de la velocidad de la CPU y no del número de núcleos. A todos los participantes se les da el mismo texto fijo y se les pide generar exactamente 64 tokens con decodificación voraz: sin muestreo, sin azar y sin texto editable que falsee la comparación. Antes corre una generación breve de calentamiento que se descarta, para que la medición no pague el coste único de selección de kernels de la sesión ONNX.
La puntuación es el tiempo real en milisegundos de esos 64 tokens, medido con performance.now() desde el primer token generado hasta el último: cuanto menor, mejor. Como referencia, una CPU de portátil reciente suele quedar en unos pocos cientos de milisegundos por token si hay pocos núcleos libres, y más rápido con más margen; un móvil suele ser varias veces más lento. El texto generado solo se muestra por curiosidad y nunca se evalúa: esto mide velocidad, no la escritura del modelo.