Насколько быстро ваше устройство выполняет настоящую AI-модель? Языковая модель на 135 млн параметров (SmolLM2-135M-Instruct, int8) целиком работает в браузере и генерирует ровно 64 токена по одинаковому для всех промпту, в один поток через WebAssembly. Меньше — лучше.
Запуск AI-модели раньше означал отправку запроса на сервер со стойкой видеокарт за ним. WebAssembly и квантованные веса ONNX позволяют удержать настоящую языковую модель — не игрушку, а действительно дообученный на инструкциях трансформер со 135 миллионами параметров и 30 слоями — внутри вкладки браузера и выполнить её на том CPU, что есть у посетителя. Этот тест измеряет ровно это: насколько быстро ваша машина проделывает ту арифметику, которую языковая модель проделывает во время письма.
Модель — SmolLM2-135M-Instruct, квантованная до 8-битных целых чисел и запущенная через бэкенд WebAssembly в ONNX Runtime, закреплённая за одним потоком, чтобы результат каждого посетителя зависел от скорости ядра, а не от их количества. Каждому участнику даётся один и тот же фиксированный промпт и задача сгенерировать ровно 64 токена жадным декодированием — без сэмплирования, без случайности, без промпта, который можно отредактировать и сместить сравнение. Сначала проходит короткий, отбрасываемый разогревочный прогон, чтобы замеряемый запуск не оплачивал одноразовые издержки на выбор ядер внутри сессии ONNX.
Результат — время в миллисекундах на эти 64 токена, замеренное через performance.now() от первого сгенерированного токена до последнего — меньше значит лучше. Ориентир: у современного ноутбучного CPU обычно выходят низкие сотни миллисекунд на токен, если свободных ядер немного, и быстрее при большем запасе; телефон обычно в несколько раз медленнее. Сам сгенерированный текст показан просто из любопытства и никак не оценивается — здесь измеряется скорость, а не качество письма модели.