gemma-gem 是什么?

Gemma Gem 是一个 Chrome 浏览器扩展,把 Google 的 Gemma 4 模型完全跑在本地设备上(通过 WebGPU 推理),做成一个「住在浏览器里」的个人 AI 助手——无需 API key、不连云、数据不离开本机。它不仅能就当前网页答疑,还能读取页面内容、点击按钮、填写表单、滚动、甚至在页面上下文执行 JavaScript,是一个具备浏览器操作能力的本地 agent。用 TypeScript + WXT 扩展框架构建、用 @huggingface/transformers(transformers.js)做浏览器内 ML 推理,模型为 Gemma 4 E2B/E4B 的 ONNX q4f16 量化版、128K 上下文。Apache-2.0 开源。

⭐ 439 Stars 🍴 33 Forks TypeScript Apache-2.0 作者: kessler
来源:README 顶部简介、Tools、Tech Stack、GitHub meta(kessler/gemma-gem,TypeScript,Apache-2.0) 查看 GitHub 仓库 →

为什么值得关注

「本地、私有、不连云的浏览器 AI 助手」正契合对隐私与离线能力的需求,而 WebGPU + transformers.js 让在浏览器里跑像 Gemma 4 这样的小模型成为可能。Gemma Gem 把「on-device 推理 + 能操作网页的 agent」结合起来:模型权重首次下载后缓存,之后完全离线运行,数据全程留在本机;同时具备读页/点击/填表/执行 JS 的实际行动力。这种「隐私优先 + 可动手」的组合,加上贴近 Gemma 4 发布的热点,使它受到关注(约 900 星,属新兴小项目)。

来源:README 顶部简介与 Requirements、Tech Stack、GitHub meta(stars 918、created_at 2026-04-05)

核心功能

完全本地的 WebGPU 推理

通过 @huggingface/transformers 在浏览器的 offscreen document 里用 WebGPU 跑 Gemma 4,无需 API key、不连云、数据不离开本机;模型首次下载后缓存(E2B ~500MB、E4B ~1.5GB),之后可离线使用。

来源:README 顶部简介、Architecture(Offscreen document)、Tech Stack
可操作网页的 agent 工具集

提供 6 个工具:read_page_content(读页面或某 CSS 选择器的文本/HTML)、take_screenshot(截图)、click_element、type_text、scroll_page、run_javascript(在页面上下文执行 JS、可完整访问 DOM)。模型在 agent 循环里调用这些工具完成「问页面 + 替你操作」的任务。

来源:README Tools 表、Architecture
双模型与可调设置

可在 Gemma 4 E2B(~500MB)与 E4B(~1.5GB)间切换并持久化选择;支持开关 Gemma 4 原生 thinking、设置每次请求的最大工具调用迭代数、清空当前页对话上下文、按域名禁用扩展。

来源:README Settings 段
清晰的扩展三层架构

offscreen document 托管模型与 agent 循环(WebGPU 推理 + token 流式)、service worker 做消息路由并处理截图与 JS 执行、content script 注入 gem 图标与 shadow DOM 聊天浮层并执行 DOM 工具,分工明确、便于调试(日志按上下文分布)。

来源:README Architecture 与 Debugging 段、仓库目录(offscreen/background/content/entrypoints)

技术架构

项目是用 WXT(基于 Vite 的 Chrome 扩展框架)构建的 Manifest V3 扩展,按职能分目录:offscreen/(offscreen document,托管 Gemma 4 模型、用 @huggingface/transformers + WebGPU 做推理并运行 agent 循环、token 流式输出)、background/(service worker,作为消息路由器,负责截图 take_screenshot 与 run_javascript 执行)、content/(content script,注入右下角 gem 图标与 shadow DOM 聊天浮层,执行 read_page_content/click_element/type_text/scroll_page 等 DOM 工具)、entrypoints/、shared/、public/。三者通过消息互通:content↔service worker↔offscreen。模型用 onnx-community 的 gemma-4-E2B-it-ONNX / E4B q4f16 量化版、128K 上下文,首次加载后缓存。WebGPU 需要 shader-f16 特性,对 GPU 显存/共享内存有要求(E2B≈4GB、E4B≈6GB),长上下文下 KV cache 还会增加 10–20% 内存开销。

来源:README Architecture/Tech Stack/Hardware Requirements、仓库目录(offscreen/background/content/entrypoints/shared、wxt.config.ts)

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) @huggingface/transformers(transformers.js,浏览器内 ML 推理)@huggingface/t… WebGPU(需 shader-f16)WebGPU(需 sha… Gemma 4 E2B/E4B(onnx-community ONNX,q4f16 量化,128K 上下文)Gemma 4 E2B/E4… marked(聊天 Markdown 渲染)marked(聊天 Ma… 完全本地的 WebGPU 推理 可操作网页的 agent 工具集可操作网页的 agent 工… 双模型与可调设置 清晰的扩展三层架构 gemma-gem 项目本体 核心功能 关键依赖

中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成

技术栈

语言TypeScript框架WXT(Vite 的 Chrome 扩展框架,Manifest V3)
@huggingface/transformers(transforme…WebGPU(需 shader-f16)Gemma 4 E2B/E4B(onnx-community ONNX,…marked(聊天 Markdown 渲染)
纯本地浏览器扩展,无服务端;模型在设备 WebGPU 上推理,权重首次下载后缓存;需 Chrome/Edge 113+ 且支持 WebGPU
来源:README Tech Stack/Requirements/Hardware Requirements

快速上手

需要支持 WebGPU 的 Chrome(113+)与足够显存(E2B 约 4GB、E4B 约 6GB)。本地构建:`pnpm install && pnpm build`,然后在 chrome://extensions 打开开发者模式,从 .output/chrome-mv3-dev/ 加载已解压扩展。使用:打开任意网页,点右下角 gem 图标开聊天,等模型加载完(图标与聊天框显示进度),即可就页面提问或请它执行操作(读内容、点击、填表、滚动、跑 JS)。可在聊天头部齿轮里切换 E2B/E4B、开关 thinking、设最大迭代数、清空上下文或按站点禁用。生产构建用 pnpm build:prod。
来源:README Setup/Usage/Settings/Development 段

使用场景

适合注重隐私、想要离线本地浏览器助手的用户:在不把数据发往云端的前提下,让它总结/解读当前网页、抽取页面信息、就页面内容答疑;也可让它替你执行轻量网页操作(按选择器点击、填表单、滚动、跑 JS)做小型自动化。对开发者,它还是一个学习「WebGPU + transformers.js 跑本地 LLM」「Manifest V3 扩展里搭 agent 循环与 DOM 工具」的完整参考实现。适用于隐私敏感、需离线或不愿配 API key 的场景。

来源:README 顶部简介、Tools、Architecture

优势与局限

优势

  • 隐私优先:模型完全在本地 WebGPU 上推理,无需 API key、不连云、数据不离开本机,缓存后可离线。
  • 不只是问答,具备读页/点击/填表/截图/执行 JS 的实际 agent 行动力,工具与三层架构设计清晰。
  • 工程现代:WXT + transformers.js + ONNX q4f16,双模型可选、设置可调、调试文档完善,Apache-2.0 开源。
  • 对想本地跑小模型 agent 的开发者是很好的参考实现。

局限

  • 硬件门槛与性能:依赖 WebGPU 与 shader-f16,需数 GB 显存,集成显卡上较慢、长上下文还有额外内存开销;首包下载 0.5–1.5GB。
  • 能力受小模型限制:E2B/E4B 量化模型的推理与工具使用能力,远不及云端大模型,复杂任务表现有限。
  • 安全需谨慎:扩展能在页面上下文执行任意 JS 并操作 DOM,授予这类能力本身有风险,应在可信站点谨慎使用。
  • 尚属早期小项目(约 900 星),需自行构建加载、未上架商店,硬件需求也只是估算未实测。
来源:README Hardware Requirements/Tools/Setup、Tech Stack;项目规模与构建方式

最新版本

项目较新(2026-04 创建),以仓库形式迭代,未上架扩展商店,需自行 pnpm build 后在 chrome://extensions 加载。已支持 Gemma 4 E2B/E4B 双模型、6 个网页操作工具与可调设置。最近一次更新在 2026-05-08,变更见 CHANGELOG。

来源:README Setup/Settings、GitHub meta pushed_at 2026-05-08、created_at 2026-04-05

总结评价

Gemma Gem 是一个把「本地、私有、能动手」三点结合得很干净的浏览器 AI 助手实验:用 WebGPU 在设备上跑 Gemma 4、数据不离开本机,又给了它读页、点击、填表、执行 JS 的真实操作能力,架构清晰、对隐私敏感或想离线使用的人很有吸引力,也是学习浏览器内本地 LLM agent 的好范例。现实约束同样明确——要支持 WebGPU 的较强 GPU、首包下载不小、小模型能力有限,且赋予扩展执行任意 JS 的权限需谨慎使用。作为一个还年轻、需自行构建加载的开源项目,它更适合喜欢折腾本地 AI 与隐私方案的开发者尝鲜,而非开箱即用的大众工具。

来源:综合 README、架构、硬件要求与 GitHub meta 的事实判断
透明度声明
本页内容由 AI(大语言模型)基于以下公开材料自动生成:GitHub README、代码目录结构、依赖文件、Release 信息。 分析时间: 2026-05-23 18:31. 质量评分: 100/100.

数据来源:README、GitHub API、依赖文件