我做了一个 Chrome 扩展,用浏览器内运行的小型本地模型过滤你的 YouTube 信息流(WebGPU,无需服务器)

Reddit r/LocalLLaMA 工具

摘要

一个 Chrome 扩展,使用在设备端运行的小型 ONNX 决策模型(opendecider-nano)过滤 YouTube 信息流,通过 WebGPU/WASM 运行,无需服务器或 API 调用。在 400 个视频上,针对“隐藏音乐”或“只看新闻”等规则,达到 0.934 的平衡准确率,还能对选中文本检测提示词注入。

我的 YouTube 信息流几乎全是歌曲、恶搞和名人剪辑,所以我做了一个过滤器,用在 Chrome 内部运行的小型决策模型对每个视频标题进行判断。任何数据都不会外发:没有服务器,没有 API 密钥,没有账号,下载一次之后即可离线使用。 **功能** - 隐藏你选择的视频类型(共 11 类:音乐、游戏、喜剧、Vlog、新闻、教程等),或者遵循你写的规则:“隐藏关于加密货币的视频”、“只显示关于烹饪的视频” - 一个开关即可隐藏 Shorts - 附加功能:选中任意文本,右键即可用同一模型检测提示词注入 **运行方式** - 模型是 opendecider-nano(ONNX),通过 ONNX Runtime Web 在离屏文档(offscreen document)中加载 - WebGPU 上使用 fp16(下载 755 MiB);无 GPU 时在 WASM 上使用 q8(569 MiB) - 处理 40 个视频标题:WebGPU 上 1.1 秒,CPU 上约 15 秒(M4 Max) - 加载时占用约 3 GiB 内存;空闲 10 分钟后自动卸载 - 模型权重固定到特定 revision 和 SHA-256。唯一的网络请求是向 Hugging Face 获取这些文件 **效果如何** - 在 400 个 YouTube 视频上,以创作者的类别作为标签,“隐藏音乐”、“隐藏游戏”和“只看新闻”等规则的平衡准确率平均达到 0.934 - 将视频归入 11 个类别更难:0.780。预计会有少量喜剧和脱口秀片段漏过 Focus 预设 - 仅在英文标题上评估过。如果你用其他语言观看,我非常想了解它在那些语言上的表现 **试用(Web Store 版本正在审核中):** - 从 https://github.com/manjunathshiva/opendecider/releases/latest 下载 opendecider-focus-0.8.1.zip 并解压 - chrome://extensions → 开发者模式 → 加载已解压的扩展程序 → 选择该文件夹 - 点击扩展图标 → 下载模型 Apache-2.0 许可。基准测试、代码及限制说明:https://manjunathshiva.github.io/opendecider/guides/chrome-extension/ 这个想法来自 Quietly,后者通过云端 API 实现同样的功能;我希望同样的功能能在设备端运行。欢迎反馈,尤其是它判断错误的地方。
查看原文

相似文章

直接在PC上运行Chrome的小型Gemma4(即Gemini Nano),无需GPU

Reddit r/LocalLLaMA

一位开发者创建了一个名为Dobby的Chrome扩展程序,可以在PC上本地运行谷歌的Gemma4(Gemini Nano),无需GPU,只需Chrome和16GB内存。该扩展提供了一个简单的界面,用于与模型交互,完成拼写检查或摘要等任务。