WebLLM: инференс больших языковых моделей прямо в браузере
Hacker News · оригинал
Материал подготовлен автоматизированной редакционной системой. Факты можно сверить по указанному первоисточнику.

Проект WebLLM позволяет выполнять вычисления LLM локально в веб-браузере с аппаратным ускорением через WebGPU, не требуя серверной инфраструктуры. Библиотека обеспечивает полную совместимость с OpenAI API и поддерживает работу с популярными открытыми моделями.
Технология снижает зависимость от облачных сервисов, обеспечивая приватность данных и возможность интеграции ИИ-ассистентов в веб-приложения без затрат на серверные мощности.
Разработчики из проекта MLC AI представили WebLLM — высокопроизводительный движок для инференса больших языковых моделей, работающий непосредственно внутри веб-браузера. Ключевой особенностью решения является использование стандарта WebGPU для аппаратного ускорения вычислений. Это позволяет выполнять операции с нейросетями локально на устройстве пользователя, полностью исключая необходимость в серверной обработке данных. Такой подход обеспечивает высокий уровень конфиденциальности, так как информация не покидает браузер, при этом сохраняя скорость работы благодаря GPU-ускорению.
WebLLM позиционируется как полноценная замена облачным API для многих сценариев использования. Библиотека поддерживает полный набор функций OpenAI API, включая стриминг ответов, генерацию структурированного JSON и управление логитами. Разработчики отмечают, что это позволяет легко интегрировать локальные модели в существующие приложения, используя привычные методы вызова. Функция вызова инструментов (function-calling) находится на стадии активной разработки, но базовые возможности уже доступны для тестирования.
Поддерживается широкий спектр популярных открытых моделей. В список входят семейства Llama 3, Phi 3, Gemma, Mistral и Qwen. Пользователи могут выбирать между различными вариантами квантования и размерами моделей в зависимости от возможностей своего оборудования. Для тех, кто нуждается в специфических решениях, предусмотрена возможность интеграции собственных моделей, скомпилированных в формате MLC. Это расширяет гибкость системы и позволяет адаптировать её под узкоспециализированные задачи.
С технической точки зрения WebLLM предлагает модульный интерфейс, который легко подключается к любым UI-компонентам. Интеграция возможна через популярные менеджеры пакетов, такие как NPM или Yarn, а также напрямую через CDN. Это упрощает процесс добавления ИИ-функциональности в веб-проекты. Библиотека поддерживает работу в Web Worker и Service Worker, что позволяет вынести тяжелые вычисления из основного потока выполнения. Такой подход предотвращает блокировку интерфейса пользователя и оптимизирует производительность приложения.
Для управления кэшированием моделей доступны несколько бэкендов: стандартный Cache API браузера, IndexedDB, Origin Private File System (OPFS) и экспериментальный Cross-Origin Storage. Выбор конкретного метода зависит от требований приложения и возможностей среды выполнения. Например, использование Service Worker позволяет сохранять загруженные модели между сессиями, улучшая опыт работы в офлайн-режиме и ускоряя запуск при последующих обращениях.
Проект также включает механизмы безопасности для верификации целостности загружаемых артефактов моделей. С помощью хешей SRI (Subresource Integrity) разработчики могут убедиться, что файлы конфигурации, WASM-библиотеки и токенизаторы не были изменены во время передачи. Это важный аспект для корпоративных приложений, где безопасность цепочки поставок имеет критическое значение.
WebLLM является частью экосистемы MLC LLM, которая направлена на универсальный деплой языковых моделей на различные аппаратные платформы. Разработчики подчеркивают, что проект открывает новые возможности для создания приватных ИИ-ассистентов, доступных каждому пользователю с современным браузером. Источник: rss:Hacker News: Front Page — https://github.com/mlc-ai/web-llm