Repolode
mlc-ai

mlc-ai/web-llm

基于 WebGPU 在浏览器内直接运行大语言模型推理的引擎,提供 OpenAI 兼容接口。

Star
19,291
Fork
1,401
未关闭 Issue
154
最近提交
10天前

这是什么?

WebLLM 是一个在浏览器中运行大语言模型推理的引擎。推理过程完全在客户端完成,无需服务器参与,并借助 WebGPU 进行硬件加速。项目以 npm 包(@mlc-ai/web-llm)形式发布,也可以通过 CDN 直接引入。

引擎提供与 OpenAI API 相同的聊天补全接口,已有的 OpenAI 风格代码可以直接对接在浏览器本地运行的开源模型。它支持流式输出、JSON 模式输出、通过 seed 复现结果以及 logit 级别控制;函数调用功能目前仍在开发中。

模型采用 MLC 格式,已支持 Llama 3、Phi 3、Gemma、Mistral、通义千问(Qwen)等系列。引擎可运行在 Web Worker、Service Worker 或 Chrome 扩展中,并可选择 Cache API、IndexedDB、OPFS 等浏览器缓存后端。

核心功能

  • 01借助 WebGPU 在浏览器内运行大模型推理,无需服务器。
  • 02提供兼容 OpenAI 的聊天补全接口,支持流式输出和 JSON 模式。
  • 03支持 Llama 3、Phi 3、Gemma、Mistral、Qwen 等 MLC 格式模型。
  • 04可运行在 Web Worker、Service Worker 或 Chrome 扩展中。
  • 05支持基于 SRI 哈希校验已下载的模型文件。

适用场景

  • 构建提示词不离开用户设备的隐私友好型聊天机器人。
  • 在 Web 应用中用 OpenAI 风格的客户端接入本地 AI 助手。
  • 开发在本地调用语言模型的 Chrome 扩展。
  • 在不部署推理后端的情况下验证浏览器端大模型功能原型。

快速上手

  1. 1

    使用 npm 安装该包

    npm install @mlc-ai/web-llm
  2. 2

    在代码中导入引擎

    import { CreateMLCEngine } from "@mlc-ai/web-llm";
  3. 3

    使用模型 ID 创建引擎(首次加载会下载模型)

    const engine = await CreateMLCEngine("Llama-3.1-8B-Instruct-q4f32_1-MLC", { initProgressCallback });

使用前须知

  • 需要支持 WebGPU 的浏览器。
  • 首次加载模型需要下载较大的模型文件,可能耗时较长。

标签

常见问题

web-llm 是什么?
基于 WebGPU 在浏览器内直接运行大语言模型推理的引擎,提供 OpenAI 兼容接口。 WebLLM 是一个在浏览器中运行大语言模型推理的引擎。推理过程完全在客户端完成,无需服务器参与,并借助 WebGPU 进行硬件加速。项目以 npm 包(@mlc-ai/web-llm)形式发布,也可以通过 CDN 直接引入。
web-llm 可以免费使用吗?用的什么许可证?
web-llm 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
web-llm 还在维护吗?
活跃维护中。web-llm 最近一次提交是在 2026年10月11日。
web-llm 适合用来做什么?
构建提示词不离开用户设备的隐私友好型聊天机器人。 在 Web 应用中用 OpenAI 风格的客户端接入本地 AI 助手。 开发在本地调用语言模型的 Chrome 扩展。 在不部署推理后端的情况下验证浏览器端大模型功能原型。
web-llm 怎么安装和运行?
使用 npm 安装该包: npm install @mlc-ai/web-llm 在代码中导入引擎: import { CreateMLCEngine } from "@mlc-ai/web-llm"; 使用模型 ID 创建引擎(首次加载会下载模型): const engine = await CreateMLCEngine("Llama-3.1-8B-Instruct-q4f32_1-MLC", { initProgressCallback });
在哪里获取 web-llm?
源代码和安装说明在 GitHub 上:https://github.com/mlc-ai/web-llm

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目