opensquad-ai
dsh-voice-input
SenseVoice 语音输入插件 for DeepSeek Harness (dsh-plugin)
- Stars
- 0
- Language
- Python
- Created
- Aug 16, 2026
- Updated
- Aug 16, 2026
Introduction
@opensquad/dsh-voice-input
DeepSeek Harness 语音输入插件:在 Web 对话输入框旁添加一个麦克风按钮,录音后调用本地 SenseVoice 服务转写成文本,自动填入输入框。首次使用会引导下载模型并显示实时进度。
英文版 / English: README_EN.md
功能
- 🎤 输入框旁麦克风按钮,一键录音转文字
- ⬇️ 首次使用自动下载模型(约 230MB),按钮上显示圆环进度 + 实时百分比
- ⚙ 独立管理按钮:查看/卸载已安装的语音模型
- 自动拉起本地 SenseVoice 服务(模型就绪时)
依赖
这是一个全自动插件:Python 后端(依赖安装 + 进程启动)由插件在 dsh 启动时自动完成,首次使用模型也自动下载。 你只需要:
| 前置 | 说明 |
|---|---|
| Python 3.10+ | 唯一需要手动装的软依赖(插件会自动 pip install 其余依赖) |
| ffmpeg(可选/推荐) | 仅用于异常音频的兜底转码,正常使用不需要;winget install ffmpeg 或官网安装并加入 PATH |
手动安装 Python 3.10+
插件会自动安装剩下的 Python 依赖(flask / onnxruntime 等),你只需装好 Python 本身。
- 打开 python.org/downloads,下载最新的 Python 3.10+(Windows 选
Windows installer (64-bit))。 - 运行安装程序,务必勾选底部的
Add python.exe to PATH,再点Install Now。 - 安装完成后,重新打开一个终端(PowerShell / CMD),验证安装成功:
python --version # 期望输出类似: Python 3.12.x(3.10 或更高即可)
手动安装 ffmpeg(可选)
浏览器端会把录音转成标准 WAV,正常使用不需要 ffmpeg。它仅在服务端收到异常/无法识别的音频时作为兜底转码使用,建议安装以免个别浏览器录音无法转写。
- Windows:在 PowerShell 里执行
安装完成后重启终端,验证:winget install ffmpegffmpeg -version - macOS(需先装 Homebrew):
brew install ffmpeg - Linux (Debian/Ubuntu):
sudo apt update && sudo apt install -y ffmpeg - 通用方式:也可访问 ffmpeg.org/download.html 下载,解压后把
bin目录加入系统的 PATH 环境变量。
插件启动时自动完成:
- 探测 Python → 自动安装
flask / onnxruntime / librosa / soundfile / pyyaml等依赖(首次较慢) - 自动拉起下载网关(
gateway.py:7102) - 首次使用 → 自动下载模型(约 230MB)并启动转写服务(
service.py:7101)
安装插件
dsh plugin --profile web add @opensquad/dsh-voice-input
重启 dsh 后,插件会在后台自动准备后端,输入框旁会出现麦克风按钮。
使用
- 重启 dsh 后稍等片刻(首次会自动装 Python 依赖并启动后端)。
- 点击麦克风 → 首次会确认下载模型 → 等待进度完成 → 自动启动服务。
- 再次点击麦克风开始录音,再点一次停止并转写,文字自动填入输入框。
模型已安装时,点旁边的 ⚙ 可卸载后重新下载。
兼容性
- Node.js ≥ 22.19.0
- Python 3.10+(且
python在 PATH) - DeepSeek Harness(Web profile)
- 浏览器需支持
MediaRecorder/getUserMedia