V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
JackalZhao

[自荐] CapsWriter-Offline v2.5 好用的 PC 端的语音输入工具,高准确率、低延迟,支持热词、LLM 后处理

  •  
  •   JackalZhao · 11h 38m ago · 334 views

    demo

    按住 CapsLock 或 鼠标 X2 说话,松开就上屏。就这么简单。

    CapsWriter-Offline 是一个专为 Windows 打造的完全离线语音输入工具。

    ✨ 核心特性

    • 语音输入:按住 CapsLock 键鼠标侧键 X2 说话,松开即输入,超低延迟,默认去除末尾逗句号。支持对讲机模式和单击录音模式。
    • 文件转录:音视频文件往客户端 exe 一丢,字幕 (.srt)、文本 (.txt)、时间戳 (.json) 统统都有。
    • 数字 ITN:自动将「十五六个」转为「 15~16 个」,支持各种复杂数字格式。
    • 热词替换:在 hot.txt 记下偏僻词,通过音素模糊匹配,相似度大于阈值则强制替换。
    • 正则替换:在 hot-rule.txt 用正则或简单等号规则,精准强制替换。
    • LLM 角色:预置了润色、小助理等角色,当识别结果的开头匹配任一角色名字时,将交由该角色处理。
    • 托盘菜单:右键托盘图标即可添加热词、复制结果、清除 LLM 记忆。
    • C/S 架构:服务端与客户端分离,虽然 Win7 老电脑跑不了服务端模型,但最少能用客户端输入。
    • 日记归档:按日期保存你的每一句语音及其识别结果。
    • 录音保存:所有语音均保存为本地音频文件,隐私安全,永不丢失。

    CapsWriter-Offline 的精髓在于:完全离线(不受网络限制)、响应极快高准确率高度自定义。我追求的是一种「如臂使指」的流畅感,让它成为一个专属的一体化输入利器。无需安装,一个 U 盘就能带走,随插随用,保密电脑也能用。

    以下为支持的模型:

    引擎名 准确性 速度 格式 显卡加速
    Paraformer ★★★☆☆ ★★★★★ ONNX
    SenseVoice-Small ★★★☆☆ ★★★★★ ONNX
    Fun-ASR-Nano ★★★★☆ ★★★★☆ ONNX + GGUF
    Qwen3-ASR ★★★★★ ★★★☆☆ ONNX + GGUF

    性能参考( 20s 音频转录延迟):

    模型 CPU U9-285H GPU RTX5050
    Paraformer 0.6s -
    SenseVoice-Small 0.6s 0.15s
    Fun-ASR-Nano 2.0s 0.5s
    Qwen3-ASR-1.7B 4.0s 1.0s

    功能文档:

    下载地址:

    Supplement 1  ·  48 mins ago

    CapsWriter-Offline 起源

    2020年10月,因手机上的语音输入法很好用,但电脑上却没有足够好用的语音输入法,我手写了一个工具 **CapsWriter**,通过长按大写锁定键录音,松开后,调用阿里云的一句话识别 API,识别后上屏。12月的时候,还加入图形化界面。但当时大学宿舍的校园网经常抽风,没有稳定的网络环境,转录延迟飘忽不定。有时候说完话了,等了好几秒,才发现 WiFi 没有连接,毁心态。但是当时并没有识别率能满足要求的离线中文 ASR 模型。

    后来 Whisper 发布,中文识别率确实不错,但是模型延迟很高,无法满足本地语音输入。

    到了2023年5月,在B站看到了 极客湾 的视频 我们做了个能对话的AI派蒙,免费给大家玩! ,他们实现的效果非常好,其中提到 ASR 模型用了阿里 FunASR 团队发布的开源 Paraformer 模型,于是就拿来测试了下,果然识别准确率很棒、延迟超低,于是弃坑 CapsWriter ,立马新开了 CapsWriter-Offline ,用 sherpa-onnx 调用 Paraformer 进行转录,效果非常好。

    2025年12月09日,我看到阿里 FunASR 团队开源了 Fun-ASR-Nano 模型,拿来一测,果然准确率又上一个台阶,在 sherpa_onnx 支持后,我赶紧更新了 CapsWriter-Offline v2.1,一次性加入了 SenseVoice-Small 和 Fun-ASR-Nano 模型的支持。但问题是当时 sherpa_onnx 是用 ONNX 实现的 Fun-ASR-Nano,速度有些慢。

    我研究了 Fun-ASR-Nano 的架构,发现它的 Decoder 是 LLM 架构,而推理 LLM 最快的是 LLama.cpp 。虽然我编程能力差,但刚好此时,Google 推出了 Antigravity AI 编程 IDE,里面有 Gemini 和 Claude 模型,在他们的帮助下,我成功写出了 Fun-ASR-GGUF,用 onnx 和 gguf 格式混合运行 Fun-ASR-Nano,用 LLama.cpp 加速它的 LLM Decoder 部分,在我的笔记本上实现了最快的推理速度:

    设备 RTF
    GPU RTX5050 0.025
    CPU U9-285H 0.1

    2026年01月21日,Qwen3-TTS 开源发布了,生成效果极其优异,让我特别想要,但官方版本推理速度很慢,于是基于 Fun-ASR-GGUF 的加速推理经验,在 Antigravity 的帮助下,我又实现了 Qwen3-TTS-GGUF ,也是用 LLama.cpp 加速它的 LLM Decoder 部分。

    2026年01月28日,间隔没几天,Qwen3-ASR 开源发布了,本来没抱太大预期的,但下载 1.7B 一测后,又给我震惊了,准确率竟比 Fun-ASR-Nano 还上一个台阶,能吊打闭源模型!于是在 Qwen3-TTS-GGUF 经验的帮助下,我马不停蹄地实现了 Qwen3-ASR-GGUF 加速推理,实现了最快的推理速度:

    设备 RTF
    GPU RTX5050 0.05
    CPU U9-285H 0.2

    这就是 CapsWriter-Offline 大致的来路。总体就是这几个组件:

    • 模型推理
    • 热词替换
    • 按键监听与录音

    当前只有 Windows 的打包,是因为我只有 Windows 电脑,没有 Linux 与 MacOS 的需求。在 Vibe Coding 时代,我相信需求的小伙伴在 Claude Code 的帮助下,也能在其系统上做出类似功能的实现。

    2 replies    2026-05-10 09:51:53 +08:00
    yukminnie
        1
    yukminnie  
       11h 22m ago
    “如臂使指”是一个汉语成语,拼音为 rú bì shǐ zhǐ,意为像胳膊支配手指一样。它比喻指挥顺畅、运作得心应手、行动无阻、没有牵制。

    对不起,看成臀了。心想怎么有这么刁钻的成语。
    JackalZhao
        2
    JackalZhao  
    OP
       46 mins ago
    @yukminnie 想描述得心应手的输入状态,让 Gemini 推荐的词
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3000 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 02:38 · PVG 10:38 · LAX 19:38 · JFK 22:38
    ♥ Do have faith in what you're doing.