news 2026/9/26 3:03:30

OpenLess自学习词典实战:热词注入与同音字自动纠正,让你的人名、产品名再也不被识别错

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
OpenLess自学习词典实战:热词注入与同音字自动纠正,让你的人名、产品名再也不被识别错

OpenLess自学习词典实战:热词注入与同音字自动纠正,让你的人名、产品名再也不被识别错

【免费下载链接】openlessHold a key, speak, release — AI-polished text appears at your cursor in any app. Open-source voice input for macOS & Windows. (按住快捷键说话,松开即得润色后的文字)项目地址: https://gitcode.com/gh_mirrors/op/openless

OpenLess 是一款支持 macOS、Windows 与 Linux 的开源语音输入工具:按住快捷键说话,松开后 AI 润色的文字会直接落在光标处。它的自学习词典通过热词注入与同音字自动纠正两道关卡,把你的人名、产品名、技术术语从"每次都要改一遍"变成"说一次就记住"。

为什么人名和产品名总被识别错?

语音转写(ASR)本质上是声学模型在做"猜字",它有三个天然弱点:

  1. 同音字分不清——"接口/借口""大鱼/大禹"听起来一模一样,声学层面无法区分;
  2. 偏向高频词——你说的冷门产品名,模型会优先输出它"觉得更常见"的字;
  3. 中英混读易串音——比如把"ZIP"听成"VIP"。

OpenLess 的对策不是把问题全部丢给模型硬猜,而是做了双通道纠正:

通道作用时机原理
① ASR 热词注入识别阶段启用的词典条目作为热词随识别请求发出,语音还没转成字就被"偏置"到正确写法
② 润色语义纠正转写之后条目注入润色提示词,模型逐句判断:转写出"Cloud",而上下文明显在说 Claude,就纠正;真指云计算则保持原样

热词注入在 volcengine.rs 中随会话发送;润色端的热词块组装见 prompt_compose.rs。不同 ASR 提供方各有对应参数(Volcengine 的context.hotwords、StepFun 的hotwords、Whisper 兼容的prompt、百炼的vocabulary_id)。

实战 1:三步手动添加词条

最快见效的方式是直接把词喂给词典:

  1. 打开主窗口 →词典页;
  2. 点击右上角「新词」,输入正确拼写(分类与备注可选,你无需维护错误拼写或上下文提示);
  3. 确认条目处于启用状态即可,下一次听写自动生效。

词条会持久化在本机的dictionary.json中,Vocab.tsx 实现了词条卡片网格、筛选(全部/手动添加/自动添加)、搜索与批量删除。首页还会展示词典参与统计——你能直观看到热词到底"救"了多少次识别。

实战 2:场景预设,一键批量导入

不想一个个敲?词典页内置了场景预设模板,一键批量导入一组词条。内置预设定义在 vocab-presets.json:

预设内置词条示例
👨‍💻 程序员PR、CI、tag、release、Rust、TypeScript、Claude、Copilot、Cursor、ChatGPT、Gemini、DeepSeek
👨‍🍳 厨师出品、备料、火候、刀工、摆盘、sous vide
🏛️ 公务员公文、批示、督办、政务、会签、材料

你也可以新建自定义预设(比如"我的团队人名"),之后换机器或重开应用都能一键复用。

实战 3:让词典从你的手改中"自学习"

这是 OpenLess 词典最有趣的能力——词典会自己长:

当你手动改掉 OpenLess 刚打出来的某个词,屏幕角落会弹一张小卡片问一句"要不要记住它",点一下就进词典了。

  • 学习到的条目带"从手改中自动收集"标记,在词典页可单独筛选(Vocab.tsx 中通过该备注识别自动条目);
  • 每一条建议都由你过目,没有任何东西是悄悄学进去的;
  • 该能力依赖光标上下文:设置 → 隐私 → 数据存储 → 光标上下文(默认关闭,目前仅 macOS)。开启后,每次听写会读取光标附近几百个字随润色请求发出——只有看得见自己刚打出去的文字,它才能发现你把某个词改掉了;
  • 隐私红线:密码输入框、Secure Input、密码管理器、终端永远不读,开关关闭时连一次辅助功能调用都不会发生。

热词预算怎么分配?命中越高的词越优先

发给 ASR 的热词预算是有限的(几百字符),条目多了不能全塞。OpenLess 在 vocabulary.rs 中实现了一套纯规则排序:

  • 🪑新词保底席位:最近手动添加的词条预留 5 个优先席位(FRESH_VOCAB_SEATS = 5),新加的词不会被老词挤出去;
  • 📊按命中次数排序:其余条目按历史命中从高到低排列——真正在用的词永远排在冷门词前面;
  • 🔤大小写去重:claude与Claude只保留命中最多的写法占一个位置,不浪费预算。

命中次数由 vocabulary.rs 的record_hits在每次最终输出中统计,词典页打开时命中数会实时累加。

同音字自动纠正:纠正规则实战

对于"热词解决不了"的固定错误模式(比如 ASR 总把"几例"听成"几粒"),还有纠正规则这张确定性底牌:

  • 入口:主窗口 →工具 → 纠正规则(Corrections.tsx);
  • 规则是「模式 → 替换」的纯文本替换,在转写/润色之后按顺序应用(correction.rs);
  • 支持{num}数字通配符,且认识中文数字。例如规则{num}粒 → {num}例能同时命中"2粒样品"和"两粒样品"。

两个例子:

规则:几粒 → 几例 "这里有几粒样品" → "这里有几例样品" 规则:{num}粒 → {num}例 "两粒样品和幾粒对照" → "两例样品和幾例对照"

规则语法有严格校验(空模式、多通配符等会被拒绝),无效规则不会生效也不会报错,保守且安全。

常见问题速查 💡

Q:加了词条还是不生效?确认条目已启用;注意讯飞实时语音转写标准版没有请求级热词参数,需在讯飞控制台配置个性化热词。详见 USAGE.md。

Q:同一个词大小写不同会占两个位置吗?不会。排序时按小写去重,保留命中最高的那个写法。

Q:词典数据安全吗?数据只保存在本机,不上传。OpenLess 坚持本地优先:你的词典、听写历史都留在自己的机器上(README.zh.md 有完整说明)。

Q:热词纠正会不会"用力过猛"?不会。润色提示词明确要求"不做无关词的机械替换",人名、品牌名、含义会变化的词一律原样保留——热词纠偏只对热词的同音/形近误识别生效。

小结

OpenLess 的自学习词典把"语音输入总错专有名词"这个问题拆成了四层:

  1. 手动词条 + 场景预设——冷启动就能用;
  2. ASR 热词注入——识别阶段就偏置正确;
  3. 润色语义纠正——转写后的同音字按上下文纠回;
  4. 手改自学习 + 纠正规则——用着用着自动变聪明。

四道关卡层层兜底,你的人名、产品名,说一次,就再也不会被识别错。

【免费下载链接】openlessHold a key, speak, release — AI-polished text appears at your cursor in any app. Open-source voice input for macOS & Windows. (按住快捷键说话,松开即得润色后的文字)项目地址: https://gitcode.com/gh_mirrors/op/openless

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/26 3:02:00

智能图像分析与目标检测系统构建实战:卷积神经网络与边缘部署

简介:面向计算机视觉开发者与深度学习初学者的智能图像分析与目标检测系统资源包,覆盖从卷积神经网络建模、数据增强、模型优化到迁移学习、边缘计算及多模态融合的完整技术链路,适合用于智能监控、自动驾驶等场景的视觉识别原型搭建。压缩包…

作者头像 李华
网站建设 2026/9/26 3:01:48

YOLOv8+状态机:老人服药提醒系统从检测到行为判定的实战指南

简介:面向计算机相关专业学生及毕业设计开发者,基于YOLOv8的智能家居老人服药提醒系统提供了一站式可运行方案,解决智能药盒场景下的目标检测与提醒需求。资源内包含完整Python源码、预训练模型权重、配置文件、可视化页面及部署说明&#xf…

作者头像 李华
网站建设 2026/9/26 3:01:17

基于Python+Vue的协同过滤图书推荐系统:从算法选型到前后端联调实战

简介:这份资源是面向高校计算机相关专业毕业设计的完整项目包,主题为PythonVue基于协同过滤算法的图书推荐系统,适合正在准备毕设、需要机器学习与前后端分离实战案例的学生参考。系统涵盖用户模块、图书模块、推荐算法模块与推荐结果展示模块…

作者头像 李华
网站建设 2026/9/26 2:59:57

团子翻译器字体适配指南:让仿宋等中文字体真正可用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/26 2:59:31

从告警研判到入侵溯源:HW攻防演练防守岗位实战解析

又到了安全圈最热闹的时段,各个群里都在聊排班、夜班和监控大屏。你要是刚入行,或者从开发/运维转岗过来,最容易被塞过去的岗位,一个叫监控研判,另一个叫应急溯源。很多人分到HW相关任务时,脑子里全是问号&…

作者头像 李华