WebLLM
WebLLM 是高性能浏览器内大语言模型推理引擎,借助 WebGPU 在浏览器中直接运行模型,无需服务器端处理。它兼容 OpenAI API,支持流式输出、JSON 模式、自定义模型和多种开源模型系列。
访问 mlc-ai/web-llm项目简介
WebLLM 是高性能浏览器内大语言模型推理引擎,将语言模型推理直接带入网页浏览器。它完全在浏览器内运行,使用 WebGPU 硬件加速,无需服务器端支持,目标是支持客户端个人 AI 助手,并带来降低成本、增强个性化与隐私保护等好处。
核心功能
- 功能包括:直接在网页浏览器内使用 WebGPU 硬件加速运行语言模型推理,无需服务器端处理;提供完整的 OpenAI API 兼容性,包括流式输出、JSON 模式、种子控制和初步的函数调用支持;原生支持 Llama、Phi、Gemma、Mistral、Qwen 等模型系列,并支持 MLC 格式的自定义模型;可通过 npm、Yarn、pnpm 或 CDN 集成,提供模块化 UI 接口和多种用例示例;支持流式聊天补全,便于聊天机器人和虚拟助手实时输出;可将计算卸载到专用 Web Worker 或 Service Worker,并提供 Chrome 扩展示例。
适用场景
- 可用于构建在浏览器中实时生成回复的聊天机器人和虚拟助手;创建在客户端本地运行模型的隐私导向个人 AI 助手;为 Chrome 扩展加入本地 LLM 功能;以及用开源模型原型化兼容 OpenAI 的 Web 应用。
快速开始
- 可通过 npm、Yarn 或 pnpm 安装 @mlc-ai/web-llm,或从 CDN 导入。随后使用 CreateMLCEngine 创建 MLCEngine,并指定受支持的模型,例如 Llama-3.1-8B-Instruct-q4f32_1-MLC。通过 engine.chat.completions.create 发送聊天消息,设置 stream: true 可启用流式响应。
部署与要求
- 需要支持 WebGPU 的浏览器环境和足够的硬件资源来进行模型推理。模型加载需要下载模型文件,在没有缓存的情况下首次运行可能耗时较长。浏览器 Cache API 是默认缓存后端,也可使用 IndexedDB 和 OPFS;OPFS 需要环境支持。跨源缓存后端需要安装并启用兼容的浏览器扩展。
采用前须知
- 许可证:Apache-2.0。在使用、修改或分发项目前,请确认其具体条款。