ko20
V2EX  ›  Linux

借助语音大模型,实现 Linux 下的语音输入,邀请 Linux 桌面用户试试

By ko20 at 8 月 18 日 · 7857 次点击

起因是昨天下午看到 IT 之家这个新闻:

识别、合成、实时交互全球第一,Qwen-Audio-3.0 系列语音模型上线阿里千问 AI 平台 https://www.ithome.com/0/990/679.htm

于是我搞了一套适用于大部分 linux 发行版和桌面环境的流程。平台送了 36000s (有效期 3 个月),到期后的话,我看了一下价格是每秒 0.00022 元

代码开源在 这里

截图如下,邀请用 linux 桌面的朋友们来试试。有用的话留个⭐呀。这套 flow 个人感觉在 linux 桌面环境很轻量,以后更换模型也很简单,稍微适配一下就可以了。

demo.webp

第 1 条附言  ·  8 月 19 日

流式语音识别,边听边写边上屏的功能搞出来了🎉

因为 ibus/fcitx5 可能不太好搞定,我想了另一招:使用 python(PyGObject) + GTK 构建了一个遮罩层用于控制“吐字”,最终上屏还是通过 ydotool 等包来实现。

大家可以观看这个 video

代码我明天再 push 到仓库。

21 条回复  •  2026-08-20 19:18:18 +08:00
ko20
   1
ko20  
OP
   8 月 18 日
效果还是不错的,对于冒号,顿号、文字中夹杂着 APP 、10000 这种字母和数字,识别都还 OK
enpitsulin
   2
enpitsulin  
   8 月 18 日
回去试试好不好使
ko20
   3
ko20  
OP
   8 月 18 日
@enpitsulin #2 谢谢欢迎反馈
ktyang
   4
ktyang  
   8 月 18 日
唉 可惜你搞出来的有点晚了 已经用别的产品了
ko20
   5
ko20  
OP
   8 月 18 日
@ktyang #4 也可以再用用这个,哈哈
ca2oh4
   6
ca2oh4  
   8 月 19 日
记得有个豆包输入法 linux 版本的
ko20
   7
ko20  
OP
   8 月 19 日
@ca2oh4 #6

查了一下是这样的

> GitHub 上有第三方开源项目( doubao‑murmur 、doubao‑voice‑input‑electron ),不是字节官方产品,只是调用豆包开放接口做的全局语音听写工具,只做语音转文字,没有拼音/双拼键盘输入能力,只能语音输入,不能当完整中文输入法使用
zjvbqla
   8
zjvbqla  
   8 月 19 日 via Android
@ko20 起码要做到边说边显示啊!
ko20
   9
ko20  
OP
   8 月 19 日
@zjvbqla #8 这个更换模型就行,支持 stream 那个
ko20
   10
ko20  
OP
   8 月 19 日
@zjvbqla #8 看了一下还需要改造传输和上屏逻辑,很好的想法。我准备改造看看
ko20
   11
ko20  
OP
   8 月 19 日
@zjvbqla #8

在 linux 下的光标处实现一个字一个字的蹦出来还能退格(比如删除一个逗号)再继续逐字输出还是太困难了。微信各端能做到可能是 IME 直接持有"预编辑区/组合区"( composing region ),可以随时显示文字、增删某个字/逗号、最终一次性"提交"。这大概是它在应用里"流式、可回改、标点合理"的根本原因。

什么时候 wechat for linux 支持了再来研究……
EvineDeng
   12
EvineDeng  
   8 月 19 日
已经在用 https://github.com/xifan2333/fcitx5-vinput 了,本地模型/在线大模型 均可。
ko20
   13
ko20  
OP
   8 月 19 日
@EvineDeng #12 这个我也安装了,但是之前配置的模型识别效果不太好后来没怎么用了 -_-
ko20
   14
ko20  
OP
   8 月 19 日
@zjvbqla #8 实现了,可以看看最新附言,以及那个 video

@EvineDeng #12 朋友可以看看我的最新实现,支持了流式语音识别和上屏,更好用了。
ko20
   15
ko20  
OP
   8 月 20 日
v1.0.1 版本已推送 https://github.com/hellodk34/voice_input_linux

还写了麦克风底噪监测脚本,比如如下输出

==================================================
麦克风底噪检测(推荐 vad_threshold 等配置)
==================================================

开始前请先完成:
1. 打开「系统设置 → 声音 → 输入」,选择你要用的麦克风,
并设为默认输入设备;
2. 对着它正常说话,观察电平条是否跳动,确认能正常收音。

本脚本只检测当前「系统默认」输入设备。
==================================================
设置好了?按回车开始检测( Ctrl+C 取消)

== 检测麦克风 ==
已检测到麦克风设备。

== 测量底噪 ==
接下来录制 3 秒,请保持安静(不要说话、不要敲键盘)。
样本数 48022 (约 3.0 秒)
底噪 RMS : 0.01163 (-38.7 dBFS )
底噪 95 分位 : 0.00589 (-44.6 dBFS )

底噪等级:低(麦克风比较安静干净,日常使用很舒服)
推荐配置(写入 ~/.config/qwen-voice-input/config.ini 的 [general] 段):
vad_threshold = 0.03
batch_silence_timeout = 2.0

说明:以上仅根据底噪自动估算,实际以说话测试为准——
说完仍不结束就把 vad_threshold 调大;小声识别不到就调小。
ko20
   17
ko20  
OP
   8 月 20 日
@devcxlcn #16 但是这个不能边听边写边上屏。
ByteCat
   18
ByteCat  
   8 月 20 日
不建议用作输入法,我自己也搓了一个还是挺满意的 https://github.com/imbytecat/voicepaste
devcxlcn
   19
devcxlcn  
   8 月 20 日
ko20
   20
ko20  
OP
   8 月 20 日
@devcxlcn #19 和我理解的“边听边写边上屏”还是不太一样,你看我这个视频 https://seafile.940304.xyz/f/e0a4b2cc0f324689ac5d/
ko20
   21
ko20  
OP
   8 月 20 日
@ByteCat #18 就是个语音输入工具的定位的…… 上屏了可能还需要正经输入法修改措辞。
Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
© 2026 V2EX · 49ms · 3.9.8.5