xifan2333/fcitx5-vinput
Voice input for Fcitx5 — local and cloud ASR, LLM rewriting, cross-distro packages
fcitx5-vinput 为 Fcitx5 输入法框架(许多 Linux 桌面环境中处理打字的软件)添加了语音输入功能。您无需打字,只需说话,插件就会将您的语音转换为文本,插入到光标所在位置——或修改您已选中的文本。
功能
语音转文字,两种选择
- 本地 / 离线:使用内置的 sherpa-onnx 语音识别模型,无需互联网连接。
- 云端:连接云端语音服务(豆包、阿里云百炼、ElevenLabs 或任何兼容 OpenAI 的提供商)。
您可以通过命令面板(Shift_R 然后 /asr)随时在本地和云端之间切换。
基于 LLM 的智能后处理
将语音转换为文本后,它可以将转录文本传递给大型语言模型,以:
- 修复识别错误
- 重新格式化文本
- 翻译文本
这些行为被配置为场景(针对不同情况的预定义流程,例如“写一封电子邮件”或“翻译这段文字”)。
命令模式——通过语音控制
选择任意文本,按住命令键(Control_R),说出指令(如“让这更正式”),然后松开——LLM 会执行您的指令并替换所选内容。这使其成为一个免提编辑快捷方式。
两种触发录音的方式
- 点按触发键(
Alt_R)开始/停止录音。 - 按住触发键进行按住说话(仅在按住时录音)。
GUI 和 CLI
vinput-gui— 图形化设置向导(下载模型、配置提供商)。vinput— 命令行界面,可完全控制所有选项。
按键绑定(均可在 Fcitx5 配置中自定义)
| 按键 | 默认值 | 功能 |
|---|---|---|
| 触发键 | Alt_R |
点按 = 切换录音;按住 = 按住说话 |
| 命令键 | Control_R |
选中文本后按住,通过语音修改 |
| 命令面板键 | Shift_R |
打开统一命令面板(/model、/asr、/scene、/proc) |
如何获取
有两种软件包变体:
- 完整版 — 包含本地 sherpa-onnx 语音引擎(可完全离线工作)
- 精简版 — 仅云端,无本地语音引擎(占用更小)
该项目为大多数主流 Linux 发行版和打包系统提供预构建软件包:
- Arch Linux(通过
archlinuxcn仓库或 AUR) - Fedora(通过 COPR)
- Ubuntu 24.04(通过 PPA)
- Ubuntu/Debian(手动下载
.deb) - Nix(flake,带 Cachix 二进制缓存)
- Flatpak
- openSUSE/Fedora(
.rpm) - 通用 Linux(
.tar.gz)
您也可以从源码构建(需要 cmake、fcitx5、pipewire、libcurl、CLI11、Qt6)。
快速开始
systemctl --user enable --now vinput-daemon.service
fcitx5 -r
然后打开 Vinput GUI → 资源 → 模型,下载并激活一个模型。之后,点按或按住 Alt_R 即可开始语音输入。
更多详情
- 完整文档(ASR 设置、场景与 LLM 配置、CLI 参考、贡献模型注册表)位于文档站点。
- 许可证:GPL-3.0
- README 还列出了贡献者和赞助页面。
相关
- 项目
- 项目
- 项目
- 项目
- 项目