给家分享一款超轻量级(约300KB+)沉浸式AI翻译工具,支持任意网页及YouTube双语字幕。纯原生JavaScript构建,零冗余,极致精简。

核心亮点(不只是普通的划词翻译):

  • :puzzle_piece: 原生极简,不吃资源:纯原生 JavaScript 编写,核心体积仅 300KB+,极大幅度降低浏览器内存占用。

  • :shield: 绝对隐私安全:所有 API Key 都只保存在本地浏览器中,没有中间服务器,你的浏览记录和翻译内容完全不会经过第三方。

  • :brain: AI 语境翻译:基于上下文语境进行翻译,而不是生硬地翻译孤立的词汇,句意更自然。

  • :electric_plug: 多引擎自由切换:完美兼容 ChatGPT/OpenAI(及任何 OpenAI 兼容接口)、Claude、Gemini、DeepL、SiliconFlow、Ollama 本地模型等。支持自定义 API 端点,甚至可以给不同的场景分配不同的引擎(比如网页用一个,视频用一个)。

  • :television: YouTube 深度集成:除了双语字幕渲染、播放器调节、字幕下载外,还有默认AI智能断句,可以按照语境把长句自动切分成更符合中文阅读习惯的自然句子,且完全保留字幕时间轴。

  • :keyboard: 输入框直达翻译:支持直接在文本输入框(比如聊天框、搜索框)内快速翻译,按下快捷键就能直接翻译,不用离开当前输入界面。

  • :memo: 生词本与多端同步:可一键将生词存入本地生词本,支持 Google Drive ,OneDrive和 WebDAV 云同步,方便复习和管理。

  • :mobile_phone: 移动端支持:兼容 Android 端的 Microsoft Edge 和 Firefox 浏览器,出门用手机也能保持沉浸式阅读。

  • :musical_keyboard: 键盘快捷键:支持高度自定义快捷键,比如鼠标悬停即可翻译段落或单词,完全契合个人的工作流。

获取方式: 直接在 Chrome 应用商店 / Edge 商店搜索 Mira 翻译 即可。

(浏览器扩展的文件 size 也可以当作是轻量化与否的衡量标准吗

最近的分享都太 vibe 了……

体积确实不是唯一标准,但它是基础标准。如果一个插件连基础包体积都控制不住(比如直接塞个巨型框架进去),那它在用户机器上的“轻量化”就是一句空话。我们说的轻量化是指:不依赖冗余框架、不窃取隐私、不无故占用内存。欢迎拿数据对比,而不是对别人的辛勤付出打上“Vibe”的标签。

我来反馈了,我在edge使用了这个扩展,很不错,翻译的迅速且无感,我说的无感指的是不像其他扩展那样在使用双语对照翻译时突然因为翻译的插入导致布局的混乱(但某些情况还是会出现这种情况的这个是不可避免的)
我想说的是:

  1. 界面很好看,我非常喜欢,虽然不得不说透着一股AI味(实话,没有任何其他意思,仅代表我个人审美)但是还是挺有感觉的

  2. 设置界面有没有更全的一个界面?就是我可以在这个界面全部配置好了之后再一齐应用配置,不然点哪个设置再跳转,或者只在一方小小的界面操作有点麻烦

  3. 那个自定义翻译区域确实不错,上面虽然提示了说有些部分无法翻译我清楚,但是无法翻译的话能否给个反馈提示啥的?比如说我点了某个区域翻译,然后不能翻译会弹出小消息说无法翻译啥的,不然我也不知道是翻译失败了我配置问题,还是这块就不能翻译

  4. 听说能翻译字幕,我找了个有字幕的视频,但是似乎不能翻译?我也不知道哪里设置错了,设置里开的好好的,但就是没有字幕显示,奇怪。

感谢 RainyGrass 的详细反馈!

能收到这么认真且具体的反馈非常开心。针对你提到的四个问题,我一一回复:

  1. 关于界面AI味
    哈哈,能看出来其实挺敏锐的.因为我不太喜欢过多的线条边框,喜欢简洁的排版,在浏览器里确实显得稍微"未来感"了一些.不过你的评价很中肯,这主题设置, 以后再考虑

  2. 设置界面的易用性
    这个确实, 因为我就是因为用别的插件发现所有设置都在一个页面(当然没有贬低的意思, 设计理念不同), 觉得不太方便, 比如高频操做:当前页面是否翻译,是否开启划词翻译,是否要翻译某些区域, 是否要开启字幕, 这个如果需要每次都打开新页面, 都混到一起, 不是很方便. 所以把低频操作放到高级菜单了. 主要目的: 用到什么功能, 能尽快找到, 不想在一个页面排一个列表.

  3. 自定义翻译区域的反馈机制
    这个建议很好, 元素是肯定能找到,主要区域 段落一般没问题, 但是如果页面排版有的非常复杂,比如菜单其实已经把译文放进去了,但是由于网页人家有自己的页面元素排版限制,导致无法显示(另外对于有些导航菜单, 这种的如果都加上翻译, 回导致页面排版很乱,个人觉得没多大必要, 这里也可以通过快捷键快速翻译). 我的考虑是尽可能减少网页入侵程度, 所以我也不喜欢那个悬浮球,尽可能减少干扰.

  4. 关于 YouTube 字幕无法显示
    看到你说"设置里开的好好的,就是没有字幕显示", 需要你提供具体地址, 我来测试, 因为这个是需要开启网页原生cc按钮的, 也需要设置原生语言, 另外需要设置目标语言. (我在我这边测试从来没问题, 非常稳定).
    但如果某个YouTube 视频本身如果没有提供字幕轨(CC),那么是无法翻译的,本质就是需要检测到有字幕轨道,然后翻译.

由于设计的代码很多, 可能有的问题排查起来非常难!不过我一定会去调查.

再次感谢,你的宝贵意见!

1 个赞

2哦哦,原来就是这样设计的啊,那好吧,我是用之前的扩展用习惯了,所以这样哈哈

3额,那个反馈不是说干扰啥的,就是,额,能不能翻译会弹出一个像是小弹窗气泡那样(过一会消失)提示一下这块不能翻译的意思

4我用这个视频测试的:https://youtu.be/63jkaB0bof8?si=8uc6CLyrGdByR-6S 确实有原字幕,但我似乎没懂咋操作,如果有个按钮(想沉浸式那样)其实多个按钮在那里没啥大的影响,因为看视频时鼠标移开后就都隐藏了,也看不见。

没事,您慢慢做,看来是个不错的插件,我之前用过好多,像是流畅阅读,简约翻译,陪读蛙、Trancy等等等等,但没啥满意的,希望这个将会是我唯一的选择!

“体积不是唯一标准,但它是基础标准”——这句话本身我没什么意见。

但从“它是一个基础指标”跳到“体积控制不好,所以轻量化就是一句空话”,中间其实还缺了一段论证。

就像一个程序只有 300KB,并不能仅凭这个数字证明它运行时就一定比 3MB 的程序更省内存、更低 CPU、更少请求。安装包大小和运行时开销本来就是两个维度。

所以我原来的问题其实很简单:你可以说“核心包只有 300KB+,这是我们追求轻量化的一个体现”,这很严谨;但如果说“300KB+ → 轻量化”,那我觉得确实有点 marketing language 了。

至于“vibe”,我也就随口吐槽了一句宣传文案。没想到你这么认真地替它赋予了一层道德意义,反而让我有点意外。

  1. 哈哈, 是的要不然我也不会自己费这么大劲自己开发一个(真的非常累).
  2. 我刚才懂你的意思, 可能我说的有点啰嗦, 我之前也发现这个问题, 有时候是这种情况: 明明翻译了, 也把翻译结果作为dom放到原文元素下了, 但是就是不显示, 因为有时候原网页, 我怎么跟你形容呢, 就是说咱们的翻译结果有了, 也放到浏览器网页了, 人家原网页也没给咱这个翻译结果屏蔽掉, 就是因为人家自己的结构问题,咱们这个不显示, 但是技术上不太容易知道(除非是对方改了我们的代码, 那很容易知道)(html元素不知道你是否懂前端技术) , 当然这个技术上得研究研究.
  3. 那个视频我打开了,秒出字幕, 你是否能把下面的视频的工具栏的截图给我看看,你是怎么设置的?youtube, 我一直测试都非常稳定, 比网页处理的问题稍微容易点,网页非常难.

真的很感谢你的建议! 很宝贵很诚恳!

哦对了,我在翻译的时候有时候会出现这种:

image

这非常常见,但是我想让它重新翻译的话该怎么做?关闭重新翻译整个页面吗?有点麻烦吧?要不设置个按钮啥的像是:

image

这样的,因为这样比显示一行文字简洁多了,我可以点击蓝色圈圈重新只翻译这一句话,我也可以鼠标悬浮到红色感叹号那里看看是咋回事,为啥报错。

您看看是哪里我设置错了?

我也是随口一回复, 扯来了不少逻辑,懒得看了…,这款工具确实不太适合你,不必勉强。祝好。

“懒得看了”当然没问题,不过既然懒得看,前面又何必替我补充这么多我没说过的意思呢?

我从头到尾讨论的是“300KB+ 是否足以作为轻量化的依据”,你可以不同意,甚至完全可以说这是你的宣传口径,我都没意见。

至于“不太适合你,不必勉强”,倒是挺有意思的——一个对产品体积提出疑问的人,突然就变成了“不适合使用这款工具的人”。

看来这次确实是我一句随口回复,承载了太多东西。

祝好。

因为这个是接口返回的错误码,这里的简洁其实比这个提示容易做,但是我接收错误码之后给它做了个友好化提示, 避免用户不知道原因, 因为原因会有很多种,希望马上就能看到原因. (当然别的是这么设计的,个人觉得用户可能会比较茫然, 当然还可以再考虑如何设计) .

这是AI接口反应慢导致的,或者同时翻译的频率稍高,回导致接口反应不过来, 虽然这一块我已经反复尽最大努力做了频率限制, 唉,我再研究一下吧

拿着几句文案脑补出长篇大论,确实挺有意思的, 不劳您分心了, 祝好

那正好问下有没有啥比较快的,免费,翻译质量差不多的AI啊?:rofl:,一直找不到,求推荐

@os9sur 这个您看我哪设置错了没?

感谢澄清,之前是我误把宣传文案当成技术描述了

唉, 我给你发不了图,半天审核不通过. 我打开了多个这个账号的视频都是秒出字幕.

有点奇怪的是 我的subtitles/cc 显示的是 English(United states),没有 English 这个.

你试一下换成 English(Auto-generated),然后从popup面板的那个绿色 开关左边的刷新按钮点一下试试,或者换成 google翻译引擎, 强制刷新页面, 或者换个视频试试.

请看这个, 比如这个, 我刚刚打开了一个, 秒出字幕,开启cc键,并设置源语言字幕为英语.

我还不太会用这个平台, 就在这回复吧, 在AI 配置翻译服务的那个页面, 上面有个提示绿色的(AI感的那个长条)是不是没加载出来? 哈哈哈,我刚加的. 我用的 groq 不是grok , 速度很快,但是免费版的每分钟的频率限制,但已经是目前我觉得最良心的,目前是长期免费. 是目前我个人觉得最快的 ,但是能力可能不如其他的 比如gemini clauld, 但是120b的模型我个人觉得还够用,翻译的挺好