编程 Transformers.js:浏览器端直接跑700多个AI模型,无需后端服务器

2026-09-05 18:44:40

Transformers.js:浏览器端直接跑700多个AI模型,无需后端服务器

Transformers.js 是一个把 Transformer 模型搬进浏览器的机器学习库。它对标 Hugging Face 的 Python transformers 库,提供了功能相近的 API,让开发者在纯前端环境下就能运行预训练模型,覆盖自然语言处理、计算机视觉、音频处理以及多模态等多个方向。

核心特点

这个库最大的优势在于便捷性——所有推理都在客户端完成,不需要搭建后端服务。底层通过 ONNX Runtime 执行模型,PyTorch、TensorFlow 或 JAX 训练的模型可以转换为 ONNX 格式后直接在浏览器中高效运行。

目前项目在 GitHub 上已获得超过 10K Star。

主要功能

  • 自然语言处理:文本分类、命名实体识别、问答、语言建模、文本摘要、翻译、文本生成等。
  • 计算机视觉:图像分类、目标检测、图像分割。
  • 音频处理:自动语音识别、音频分类。
  • 多模态任务:零样本图像分类等。

支持的模型架构

Transformers.js 兼容多种主流 Transformer 架构,包括 ALBERT、BERT、RoBERTa、CLIP、GPT-2、T5 等,这些模型由各领域顶尖研究机构开发,在各类基准测试中表现稳定。

典型应用示例

社区基于 Transformers.js 构建了不少有趣的项目:

  • Whisper Web:浏览器内语音识别
  • Doodle Dash:实时草图识别小游戏
  • Code Playground:在线代码补全网站
  • Semantic Image Search:客户端图文语义搜索
  • Browser extension:文本分类浏览器插件
  • Electron 桌面应用:基于 Electron 的文本分类工具
  • Next.js 全栈方案:分别支持客户端和服务端推理

快速上手

通过 NPM 安装:

npm i @xenova/transformers

纯 JavaScript 项目也可以直接用 CDN 引入:

<script type="module">
  import { pipeline } from 'https://cdn.jsdelivr.net/npm/@xenova/transformers@2.17.2';
</script>

官方提供了丰富的示例和模板,涵盖语音识别、草图识别游戏、代码补全网站等场景,可以快速上手开发。

总的来说,Transformers.js 为需要在浏览器中实现机器学习能力的开发者提供了一个强大且灵活的选择,真正做到了开箱即用、零后端依赖。

推荐文章

程序员茄子在线接单