Transformers.js v4 预览版登陆 NPM,WebGPU 加速开启浏览器本地大模型时代
•39 阅读•4分钟•开源
Hugging FaceTransformers.jsWebGPUTokenizers.js
•39 阅读•4分钟•开源

重大发布
Hugging Face 正式将 Transformers.js v4(预览版) 推至 NPM,用户只需执行 npm i @huggingface/transformers@next 即可获取。该版本在过去一年持续迭代,首次实现 WebGPU 完全加速,支持在浏览器、Node、Bun、Deno 等多种 JavaScript 环境离线运行数十种最新模型。
性能与运行时升级
- 全新 WebGPU Runtime,核心用 C++ 重写,结合 ONNX Runtime Contrib Operators,实现约 4 倍 的 BERT 嵌入速度提升。
- 支持
com.microsoft.GroupQueryAttention、MatMulNBits、QMoE等算子,显著提升大模型推理效率。 - 通过缓存 WASM 文件,实现 离线运行,首次在浏览器中完整离线加载模型。
代码库重构与模块化
- 将单仓库转为 pnpm workspaces,拆分出多个子包,核心库体积更小,依赖管理更清晰。
models.js从 8000 行拆分为若干专属模块,模型逻辑与工具函数分层,后期新增模型成本大幅降低。- 引入 Prettier 统一代码风格,所有 PR 自动遵循同一格式,维护成本下降。
新模型与架构
v4 通过扩展 ONNX 自定义算子,新增以下前沿模型:
- GPT-OSS、GraniteMoeHybrid、LFM2‑MoE、FalconH1
- 支持 Mamba(状态空间模型)和 Multi‑head Latent Attention(MLA)等前沿架构
- 所有模型均兼容 WebGPU,可在浏览器端实现硬件加速推理。
构建系统与体积优化
- 构建工具从 Webpack 替换为 esbuild,构建时间从 2 秒降至 200 ms,提升约 10 倍。
- 产出包体积整体下降约 10%,其中
transformers.web.js减少 53%,下载与启动更快。
独立 Tokenizers.js 库
为满足轻量化需求,Hugging Face 将分词逻辑抽离至 @huggingface/tokenizers,体积仅 8.8 KB(gzip),零依赖且完整 TypeScript 类型支持。示例代码:
import { Tokenizer } from "@huggingface/tokenizers";
const modelId = "HuggingFaceTB/SmolLM3-3B";
const tokenizerJson = await fetch(`https://huggingface.co/${modelId}/resolve/main/tokenizer.json`).then(r=>r.json());
const tokenizer = new Tokenizer(tokenizerJson);
const tokens = tokenizer.tokenize("Hello World");
行业影响与展望
Transformers.js v4 的发布降低了前端开发者使用大模型的门槛,WebGPU 的跨平台加速让浏览器本地推理成为可能,进一步推动生成式 AI 向 边缘计算 与 隐私保护 场景渗透。随着社区贡献的加速,预计未来会出现更多基于 JavaScript 的 AI 产品,如实时对话助手、文生图/文生视频前端应用等。
“开源工具的迭代速度直接决定了创新生态的活力。”——Hugging Face 团队
本文是对第三方新闻源的主观解读。消息可能出现过时、不准确、歧义或错误的地方,仅供参考使用。点击此处查看消息源。