什么是 WebLLM?

WebLLM 是 MLC AI 开源的浏览器端语言模型推理引擎。它加载兼容的 MLC 模型制品,通过 WebGPU 执行模型 Kernel,并在 JavaScript 中提供 OpenAI 风格的 Chat API。推理可以不依赖远程推理服务器,但浏览器支持、模型兼容、下载体积、存储、内存、隐私、许可证和回退行为仍由应用负责。

快速了解

全称WebLLM 浏览器端大模型推理引擎
创建时间随着 WebGPU 标准在主流浏览器中的落地而逐渐成熟
规范文档官方规范

工作原理

WebLLM 把推理运行时移动到浏览器 Origin。应用加载 JavaScript 与 WebAssembly Runtime,从当前 AppConfig 支持列表选择模型,下载对应 Model Library 与 Weight Artifact,创建 WebGPU Device,再在本地生成 Token。项目支持 Streaming、Structured JSON Generation、部分 Tool Calling 行为、自定义 MLC 制品,以及 Dedicated Web Worker 或 Service Worker 集成;具体能力取决于版本和模型。

首次加载可能需要较大下载量,而且是异步过程。当前 WebLLM 通过 AppConfig.cacheBackend 提供 Cache API、IndexedDB、OPFS 与实验性 Cross-Origin 选项,它们的支持范围、删除方式、配额和生命周期不同。缓存仍可能被淘汰、损坏、撤销或因版本升级失效。应用因此需要加载进度、取消、完整性、版本迁移、显式删除和重新下载状态,不能承诺永久的一次性下载。

WebGPU 可用只是必要条件,不是充分条件。MDN 仍将 WebGPU 标为 Limited Availability;navigator.gpu 存在也不能证明 Adapter 可以创建所需 Device、目标制品能够装入内存,或延迟与温度表现满足工作负载。生产选型应在真实浏览器、操作系统、驱动、设备、模型、量化、上下文长度和并发矩阵上测试。Device Loss、OOM、Worker 终止、后台节流与存储淘汰都需要明确恢复或经用户同意的回退路径。

本地推理改变了数据流边界,但不能证明隐私或合规。页面脚本、浏览器扩展、Analytics、远程 Retrieval、Crash Reporting、模型下载、Prompt History 与 Cloud Fallback 仍可能传输或保留数据。WebLLM 应用应列出全部网络路径,使用 Content Security Policy 与依赖控制,在支持时固定并校验模型制品,最小化 Telemetry,保护本地对话,并对远程服务重新执行授权与留存策略。

WebLLM 提供的是 OpenAI 风格接口,不保证与所有托管 OpenAI Endpoint 完全相同。模型在创建或 Reload Engine 时选择,参数和能力由 Runtime 与 Artifact 决定。迁移时要针对 Streaming Chunk、JSON Schema、Cancellation、Usage Accounting、Tool Call、Error 和 Context Limit 做契约测试。只有实测质量、首次使用成本、设备覆盖、能耗、无障碍、支持和回退符合工作负载时,浏览器推理才适合上线。

主要特点

  • WebGPU 执行:在 Secure Context 中通过浏览器 GPU 实现运行兼容的 MLC 语言模型制品
  • 版本化模型契约:Model ID、Library、Weight、Tokenizer、Quantization、Context Limit 与 License 必须匹配已测试的 WebLLM 版本
  • Worker 隔离:Dedicated Web Worker 与 Service Worker 可以把推理移出 UI 线程,但生命周期和恢复语义不同
  • 多种缓存后端:Cache API、IndexedDB、OPFS 与实验性 Cross-Origin Storage 具有不同支持、配额、淘汰和删除行为
  • OpenAI 风格接口:Chat Completion、Streaming、JSON Mode 等能力需要按模型和版本做契约测试
  • Local-first 边界:可以不使用远程推理,但仍需审计 Telemetry、下载、Retrieval、Extension 与 Fallback

常见用途

  1. 已下载并校验模型制品后的离线可用草拟或摘要
  2. 本地模型在质量、启动、延迟、内存和能耗预算内的交互式浏览器功能
  3. 在代表性设备矩阵上比较本地、远程与混合推理的客户端原型
  4. 保持指定推理输入在本地,同时独立控制 Analytics、Storage、Retrieval 与 Fallback 流量的应用
  5. 明确浏览器、设备、模型与许可证要求的 WebGPU 推理教学演示

示例

loading...
Loading code...

常见问题

WebLLM 能在所有现代浏览器中运行吗?

不能。部分常用浏览器、操作系统、驱动和硬件组合仍不提供或限制 WebGPU。应在真实支持矩阵中验证 `navigator.gpu`、Adapter 与 Device 创建、必要 Feature 与 Limit、模型加载、推理和 Device Loss 恢复。

WebLLM 能保证绝对隐私吗?

不能。本地推理可以避免把 Prompt 发送给远程推理 Provider,但页面脚本、扩展、Analytics、模型下载、Retrieval、Crash Report、同步存储或 Cloud Fallback 仍可能暴露数据。必须审计完整应用数据流。

WebLLM 模型是否只需下载一次?

不保证。兼容缓存可能复用制品,但浏览器配额、淘汰、隐私模式、Origin 变化、缓存后端支持、损坏和应用升级都可能触发重新下载。应用要提供进度、取消、版本、删除与恢复体验。

WebLLM 是否完全兼容 OpenAI API?

WebLLM 提供 OpenAI 风格 Chat 接口,但不保证覆盖每个 Endpoint、Parameter、Model 或 Error 行为。模型在 Engine 加载时选择,JSON Mode、Tool Calling 等能力应针对选定 Runtime 与 Artifact 做契约测试。

哪些场景不适合使用 WebLLM?

目标设备无法稳定支持 WebGPU、模型质量或许可证不满足要求、首次下载不可接受、内存与能耗超限、无障碍体验受损,或业务要求经审计的集中控制和服务保证时,应避免使用或提供明确回退。

相关术语

相关文章

WebLLM实战:在浏览器中运行大语言模型的工程架构

一份来源意识明确的 WebLLM/WebGPU 浏览器端大模型工程指南:覆盖编译与模型下载、Worker 架构、运行时能力检测、缓存配额、隐私边界、云端回退和工作负载评测,帮助前端团队在真实设备、网络、浏览器和模型版本差异下做可复现选型,避免把浏览器推理误写成零成本、绝对隐私、通用离线或固定显存阈值方案。

2026-04-03

小语言模型端侧部署:从设备适配到发布门禁

系统讲解小语言模型与端侧 AI 的生产评估方法:不以参数量代替设备适配,而是固定模型制品、Tokenizer、量化格式、运行时和设备身份,测量峰值内存、首字延迟、逐字延迟、任务质量、热降频、能耗、离线成功率与云端回退,并通过隐私、许可证、完整性和设备群发布门禁决定本地、混合或云端部署,适合规划移动端、浏览器、车载与工业边缘 AI 的开发和平台团队。

2026-04-22

AI 推理成本经济学:API、自部署与端侧 TCO

建立可核验的 AI 推理成本模型,统一比较托管 API、自部署与端侧 TCO,覆盖计费账本、GPU 有效利用率、SLO 合格吞吐、小模型路由、缓存、量化、重试、回退与质量门禁。使用可运行的 Python 敏感性模型计算单次验收结果成本,帮助平台团队在相同工作负载、质量、延迟、安全和可靠性契约下完成容量规划、预算评审与迁移决策,避免固定价格表、通用盈亏点和参数量等价误判。

2026-06-28