web-llm-chat

浏览器里直接跑大模型,离线私密聊天零延迟

开源 🏷️完全免费 ✅ 目前可打开 对话助手 🍴 复刻 233 🐛 待处理 38 👀 关注 16
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1139
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 完全免费,所有功能永久免费,无付费版本

项目预览

web-llm-chat 项目界面预览图
图片来源:项目官网

项目数据

分类对话助手
开发团队mlc-ai
定价模式🏷️完全免费
价格说明完全免费,所有功能永久免费,无付费版本
访问状态✅ 目前可打开
是否开源是
开源协议Apache-2.0
主要语言TypeScript
技术栈/模型ai,chat,chat-application,chatbot,chatgpt,gemma,generative-ai,hermes,large-language-models,llama,llm,mistral,nextjs,phi2,privacy,qwen,redpajama,tinyllama,webgpu
GitHub 星标★ 1139
上线时间2024-05-15 00:00:00
代码更新2026-11-02
仓库体积23.9 MB
本站数据更新2026-11-08
维护状态活跃
收录时间2026-08-09
浏览次数2

项目介绍

web-llm-chat 是一个基于 Next.js 和 TypeScript 构建的浏览器端 AI 对话助手,它利用 WebLLM 技术将大语言模型(如 Llama、Mistral、Gemma 等)直接运行在浏览器中,无需服务器。该项目解决了传统 AI 聊天应用依赖云端 API、数据隐私受限和网络延迟的问题,通过 WebGPU 和 WASM 实现本地推理,提供完全私密、离线可用的对话体验。核心能力包括:支持多种开源模型切换、流式输出、多轮对话管理、对话历史持久化,以及可自定义的系统提示词。用户只需打开网页即可享受 AI 服务,所有数据留在本地,特别适合注重隐私或需要离线使用的场景。项目代码结构清晰,易于二次开发,适合开发者快速集成或定制自己的浏览器端 AI 助手。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1139

使用教程

难度:入门 约 10 分钟 部署方式:本地安装 6 步

环境要求

  • Node.js(README 要求先安装 Node.js)
  • Yarn 包管理器
  • 支持 WebGPU 的现代浏览器(用于浏览器内本地推理)
  • Docker(仅在选择 Docker 部署时需要)

安装与启动步骤

  1. 1准备 Node.js 与 Yarn

    README 明确要求先安装 Node.js 和 Yarn,请到各自官网完成安装并确保 node、yarn 命令可用。

  2. 2安装项目依赖

    在项目根目录执行,根据 package.json 下载全部依赖,网络慢时可先配置镜像源。

    yarn install
  3. 3启动开发服务

    以开发模式启动应用,README 给出的启动命令,运行后保持终端窗口开启。

    yarn dev
  4. 4构建 Docker 镜像

    如需容器化部署,在项目根目录构建名为 webllm_chat 的镜像。

    docker build -t webllm_chat .
  5. 5运行 Docker 容器

    后台启动容器并把容器 3000 端口映射到宿主机 3000 端口。

    docker run -d -p 3000:3000 webllm_chat
  6. 6带代理运行容器

    当需要走本地代理访问模型资源时,通过 PROXY_URL 环境变量传入代理地址。

    docker run -d -p 3000:3000 \
       -e PROXY_URL=http://localhost:7890 \
       webllm_chat

关键配置

配置项必填说明示例
PROXY_URL否Docker 容器运行时指定代理地址,用于下载或访问模型资源http://localhost:7890
PROXY_URL(含账号密码)否代理需要认证时,在地址后空格追加用户名和密码http://127.0.0.1:7890 user pass

如何确认成功

浏览器打开 http://localhost:3000(Docker 映射端口),能看到 WebLLM Chat 聊天界面即启动成功。

常见问题

Q:必须联网才能使用吗?

A:项目强调离线可用:模型在浏览器本地通过 WebGPU 运行,但首次加载模型权重仍需联网下载,之后可离线使用。

Q:为什么部署时要配置 PROXY_URL?

A:当网络无法直连模型下载地址时,可在 Docker 运行时传入 PROXY_URL 让容器走代理;代理需要认证时在其后空格补用户名和密码。

Q:本地开发默认访问哪个地址?

A:README 只给出 Docker 的 3000 端口映射,本地开发请以 yarn dev 终端输出的实际地址和端口为准。

Q:用哪种方式更简单?

A:只想体验可直接访问官网 chat.webllm.ai;需要自行部署时,本地 yarn dev 适合调试,Docker 更适合长期运行。

注意事项

  • README 未给出 Node.js/Yarn 的具体安装命令,请按官方文档自行安装。
  • 项目所有推理与对话数据都留在浏览器本地,不经过服务器。
  • Docker 部署示例固定使用 3000 端口,如被占用可自行调整宿主机端口映射。
  • 代理地址含账号密码时用引号包裹,格式为「地址 用户名 密码」。

核心亮点

  • 完全本地推理,数据不出浏览器,隐私性极强
  • 支持 Llama、Mistral、Gemma 等多种主流开源模型,可灵活切换
  • 基于 Next.js 和 TypeScript,代码结构清晰,易于扩展和集成

不足之处

  • 受限于浏览器性能和 WebGPU 支持,模型规模有限,推理速度较慢
  • 文档/社区待观察

适用场景

  • 隐私敏感场景:企业内部数据对话,避免数据外泄
  • 离线环境:无网络或弱网下使用 AI 助手
  • 低成本部署:无需服务器,直接静态托管即可提供服务

替代项目

WebLLM、Transformers.js、llama.cpp

上一篇:st-chat

下一篇:HacxGPT-CLI

同类项目推荐

jan 开源

下载即用,离线跑大模型,数据全在自己电脑上

Jan is an open source alternative to ChatGPT that runs 100% offline on your computer···

★ 45576 2026-08-09
GPTInterviewer 开源

上传简历和职位描述,AI 模拟面试官陪你练。

GPT Interviewer - Practice interview with AI interviewer based on job descriptions a···

★ 264 2026-08-09
Stream-Omni 开源

一个模型搞定语音+视觉+文本,实时对话像 GPT-4o

Stream-Omni is a GPT-4o-like language-vision-speech chatbot that simultaneously supp···

★ 394 2026-08-09
HuixiangDou 开源

把技术问答机器人拉进群,自动翻文档答问题,省去人工重复答疑。

HuixiangDou: Overcoming Group Chat Scenarios with LLM-based Technical Assistance

★ 2500 2026-08-09
buildship-chat-widget 开源

几行代码接入 AI 聊天,自由对接数据库和工具

AI Chat Widget - flexible and lite chat widget that can connect to OpenAI Assistant,···

★ 71 2026-08-09
warp-yg 开源

一键搞定 WARP 配置、升级与解锁检测

warp多功能一键脚本,支持warp-go与wgcf切换,无限生成warp配置文件,支持升级warp+、warp···

★ 4656 2026-08-09
gpt4free-ts 开源

免费用上 GPT-4,TypeScript 开发者快速集成

Providing a free OpenAI GPT-4 API ! This is a replication project for the typescri···

★ 7643 2026-08-09
csml-engine 开源

用简洁语言快速构建聊天机器人,告别复杂逻辑。

CSML is an easy-to-use chatbot programming language and framework.

★ 718 2026-08-09
Voice-Chat-Bot 开源

用语音和 AI 实时聊天,说句话就能得到回答。

Real-time AI ChatBot and voice-enabled AI VoiceBot using Deepgram (STT ↔ TTS) and G···

★ 80 2026-08-09