我是 Saymore 的作者。做这个项目的原因不复杂:我说话比打字快,但说出来的内容没法直接用。脑子里想的是完整句子,落到键盘上要一个字一个字敲;换成语音,屏幕上又会留下"嗯""那个""就是说"和半句改口。清理这些碎片的时间,往往比重新打一遍还长。
所以我想要的不是"把声音变成文字",而是一条能走完的路径:开口、识别、整理、落到光标处,中间不用再做搬运和删改。Saymore 就沿着这条路径做,定位是 Windows 上的本地中文语音输入与口述整理工具。
一段口述要经过几段,才算真的能用
口语和书面语之间隔着几件事:填充词、重复词、说到一半改口、缺少标点和断句。只做识别,这些都会原样留在输入框里。Saymore 的做法是在识别之后加一道整理,再把结果写进当前光标位置。
这里有个取舍:识别、整理、术语和历史热词都在本机跑,不是把你说的话传到远端再返回结果。代价是首次使用需要联网下载约 1.5 GB 的模型,之后就在本机运行。
整理这一段:四种方式对应四类场合
整理方式是可选的,不同的选择决定文字最后长什么样。
轻度整理只做减法:去掉口水词和重复词,纠错补标点,尽量保留你原本的说话节奏。适合即时消息、评论、聊天这类不需要太正式的地方。比如口述:"那个,这个接口的返回,呃,我看了,好像,那个,字段少了一个。"轻度整理后大致是:"这个接口的返回我看了,好像字段少了一个。"口语的松弛感还在,但碍眼的碎片没了。
深度整理换的是表达方式,把口语收成书面语,适合写文档、说明和总结。同一句话,深度整理后可能变成:"查看后发现,该接口的返回结果中缺少一个字段。"它会把"然后""就是说"这类连接词压掉,把松散的句子收拢。这里有个容易被忽略的细节:整理是按整段做的,不是逐句改完再拼回去。前后语气和断句能保持一致,段落才立得住。
邮件整理是单独的一类场景。把光标放进邮件正文框,口述:"嗯,张工,那个,部署文档我更新了,然后,麻烦你有空看一眼,有问题周五前告诉我,谢谢。"整理后会更接近邮件正文的样子,口水词被去掉,标点和收尾结构补上。适合不想打字但要写工作邮件的人。
此外还有 00 后风格整理,以及本机运行的术语和历史热词。这两项与本文主题关系不大,这里不展开。
落字这一段:光标在哪,就在哪说
很多语音工具的问题不在识别,而在落点:转写完的文字躺在自己的窗口里,你还得复制、切回去、粘贴。
Saymore 走的是另一条路。把光标点进任意输入框,直接说话,整理后的结果落在光标处,不用在两个窗口之间切换。浏览器里的在线文档、团队的即时通讯窗口、笔记软件、代码编辑器里的对话框,都是同一个动作:注意力留在当前应用,输入交给说话。
开发场景也一样。在编辑器里给 AI 编程助手提需求,把光标放进它的输入框,口述:"帮我写个函数,输入是用户 ID 列表,返回去重结果,然后按字母排序。"整理后落进去,再交给助手。省下的不是识别那一步,而是"说完还要手动删口头禅、顺手改语序"的那一步。
少碰键盘这一段:唤醒词加语音命令
如果每次都要按快捷键,键盘其实没被放下。Saymore 可以常驻后台,听到唤醒词才开始录音,默认唤醒词是"小咪",可以改。平时它只在后台等着,不会一直收音。
再往后是语音命令:说"发送"执行落字,说"回退"删词,说"清空"清屏,说"休眠"下线。这几条命令和唤醒词连起来,才是一条不碰键盘的完整流程——用说话开始,用说话输入,用说话控制输入框里的动作,最后用说话结束。
比如一段话说完了发现措辞不对,说"回退"删掉重说;想整段作废,说"清空";暂时不用了,说"休眠"。这些都是输入过程中很自然的动作,用嘴说比伸手找键更顺。
和别的做法比,差别在哪
系统自带的语音输入、各类语音输入法、专门的转写工具,都在解决声音到文字的某一段。有的听写准确度高,有的转写长音频更强,有的和操作系统结合得更紧。
Saymore 的区别只在流程衔接上:识别之后立刻整理,整理之后直接落到当前光标,整理方式可以按聊天、文档、邮件切换,还能用唤醒词和语音命令减少按键。它不是会议转写工具,也不是手机输入法。选哪个,取决于你更在意流程里的哪一段。
已知限制,以及不适合的人
先把限制讲清楚:
- 目前仅支持 Windows,具体是 Windows 10/11 x64;
- 首次使用需联网下载约 1.5 GB 模型;
- 安装包未签名,Windows 可能弹出安全提示;
- 普通 CPU 可以运行,有 4 GB 显存 GPU 可以加速。
不适合的人也很明确:主要用 macOS 或 Linux 的人;希望装完即用、不想等模型下载的人;对未签名安装包比较敏感的人;只需要手机端语音输入的人。如果你只是偶尔听写一次,也不介意手动删几个"嗯、那个",系统自带的工具可能就够用。
代码和下载
项目是开源的,仓库在 https://github.com/frankzch/Saymore ,安装包在 https://github.com/frankzch/Saymore/releases 。有反馈或想改唤醒词、整理方式这类设置,可以到仓库里提。
利益相关:作者参与 Saymore 项目。