刚用opus4.5撸的一个新玩具,毛遂自荐一下。

智能替换网页词汇,创造沉浸式双语学习环境,在日常浏览中自然习得语言。
基于「可理解性输入」理论,让语言学习融入日常生活

image.png


核心设计理念

VocabMeld 基于语言学家 Stephen Krashen 的「可理解性输入 (Comprehensible Input) 」理论设计:

语言习得发生在我们理解比当前水平稍高一点的输入时 (i+1)

核心逻辑 :在用户浏览母语内容时,将部分词汇智能替换为学习语言,反之亦然。这种方式:

  • 保持内容可理解性(大部分词汇保持原文)
  • 在上下文中接触新词汇(自然语境记忆)
  • 控制语言接触压力(细水长流,避免认知负荷)

项目灵感与致敬

VocabMeld 从以下优秀项目中汲取灵感,并在多个维度上进行了显著改进:

参考项目对比

项目核心优势主要局限性
fies综合效果优秀,单词难度划分合理闭源架构、无法使用自定义大模型 API
illa-helper类似 fies 开源版本翻译质量一般、经常误译短语、难度划分不准、不支持标记已学单词
qiayi较早出现的沉浸式局部翻译插件长期未维护、无 AI 能力、整体效果一般

核心改进点

  1. 多 LLM 支持 :支持 OpenAI、DeepSeek、Moonshot 等主流 AI 服务,一次configuration(配置)即可使用
  2. 智能缓存策略 :2000词 LRU 缓存,显著提升响应速度,降低使用成本
  3. 精确难度控制 :基于 CEFR 标准的六级难度体系,本地过滤确保准确性
  4. 现代化架构 :持续维护,采用最新技术栈,提供更好的用户体验

核心算法流程

页面处理流程

  1. 智能分段与增量处理

    • 通过 ContentSegmenter 对页面 DOM 进行遍历,将内容按"语义单元"智能分段
    • 仅处理新增或变化的内容,通过 MutationObserver 监听 DOM 变化
    • 为每个内容段落生成唯一指纹,防止重复处理
  2. 精准且高效的 DOM 替换

    • 采用原生 Range API 精确定位和替换文本节点,保持页面结构完整
    • 自动排除代码块、脚本、样式、已处理内容等
    • 大页面采用懒加载(滚动才按需翻译),动态内容采用防抖优化
  3. 智能缓存与状态管理

    • LRU 缓存机制:2000词容量,自动淘汰最少使用的词汇
    • 并发控制:3个段落同时处理,平衡性能与稳定性
    • 状态追踪:防止重复处理,优化用户体验

使用技巧

  1. 推荐配置 :母语中文 + 学习英语 + B1难度 + 适中强度
  2. 快捷键Alt+T 快速处理当前页面(推荐)
  3. 右键标记 :遇到已掌握的词汇,右键标记为已学会,下次不再替换
  4. 选中添加 :遇到想记住的生词,选中后点击"添加到需记忆"
  5. 缓存加速 :第二次访问同一页面,响应速度显著提升(毫秒级)
  6. 智能过滤 :自动跳过停用词和已缓存词汇,节省 API 调用
  7. 自动保存 :设置页面所有修改自动保存,无需手动操作

更多细节移步:https://github.com/lzskyline/VocabMeld

如果觉得我的文章对你有用,请随意赞赏