前言¶
在 DeepSeek Harness(DSH)里跑智能体时,助手往往一次输出大段 Markdown:代码块、表格、链接混在一起。若你想「边听边盯日志」或减轻长时间盯屏的负担,常见做法是接云端 TTS API,但文本与音频会离开本机,且要单独管密钥与计费。
下面介绍社区插件 dsh-dania-voice(维护者 xcw520,GitHub 仓库 xcw520/dsh-dania-voice):在本地跑 GPT-SoVITS,把助手最终回复读出来,界面顶部有一个可拖动的小挂件作开关;推理与合成都在本机完成,README 写明音频与文本不离开你的机器。插件归类为「模型推理」,适合愿意为本机 GPU 与磁盘空间付出成本的 DSH 用户。
这是什么¶
dsh-dania-voice 是 DSH 的语音朗读插件:监听会话里助手消息的结束事件,清洗正文(去掉代码块、表格、链接等),分段后请求本机 GPT-SoVITS 服务合成语音,再由浏览器播放。Host 进程本身没有音频设备,因此播放故意放在浏览器端,声音从你正在使用的这台机器扬声器出来。
数据流(与 README 一致)如下:
DSH session events (assistant/message + turn/end)
│ 取最终回复文本,剥离代码块 / 表格 / 链接
▼
Host:清洗并合并为 ≤120 字符的片段
│ POST http://127.0.0.1:9880/tts
▼
GPT-SoVITS api_v2.py(本机,GPU)
│ wav → 缓存目录 → 队列
▼
Browser:轮询 /dania-voice/next → Web Audio 播放
语音模型侧使用社区训练的 Dania 音色(鸣潮角色相关;README 标明为粉丝向项目,角色版权归库洛游戏)。安装器会从原始仓库拉取模型,本仓库不二次分发模型文件。
核心功能¶
- 朗读助手回复:默认在读助手侧内容;可在配置里打开
speakUser,一并朗读你自己的消息。 - 可拖动挂件:窗口顶部居中悬挂;单击开关朗读,拖动后位置会记住;朗读时挂件会轻微摆动。右键或 Shift+单击打开设置面板。
- 面板参数:音量、语速、
temperature(越低越稳、气息感越少)、句间停顿;另有「重复上一句回复」和「试读一行」便于调试。 - 一键安装引擎:面板内 One-click setup 会单独起进程安装 Python 虚拟环境、PyTorch(检测到
nvidia-smi时用 CUDA 构建)、推理依赖,并下载 GPT-SoVITS 源码、预训练底座与音色包;步骤可幂等,中断后重点会跳过已完成步骤。 - 缓存:合成结果按「文本 + 参数」缓存,相同设置下重复播放可即时命中。
环境与要求¶
| 项目 | 说明 |
|---|---|
| DSH | >= 0.1.7-rc.1(package.json 中 engines 为 <0.3.0-0) |
| Python | 3.10 – 3.12(安装器会查找,不会替你装 Python) |
| GPU | 建议 NVIDIA 8 GB+ 显存;CPU 可用但明显更慢 |
| 磁盘 | 约 5 GB(PyTorch、底座模型、音色模型) |
安装与启用¶
插件通过 DSH 官方插件命令安装(须使用资料原文命令,不要自行拼接 GitHub 路径):
dsh plugin --profile web add dsh-dania-voice
安装插件代码后,打开挂件面板,点击 One-click setup。安装器大致会:
- 在安装目录下创建 Python venv
- 安装 PyTorch(有 NVIDIA 驱动时用 CUDA 构建)
- 安装推理依赖
- 下载 GPT-SoVITS 源码(约 50 MB)
- 下载预训练底座(约 1.6 GB)
- 下载音色模型与参考音频(约 320 MB)
默认安装目录为 $DSH_HOME/dania-voice;若希望放到其他盘,可在配置里设置 installDir。
进度与失败信息会写回同一面板;也可查看 $DSH_HOME/dania-voice/install.log。
说明:插件以当前 DSH 进程的用户与权限运行;一键安装会下载数 GB 资源并在本机起 HTTP 服务。安装前建议在 GitHub 阅读源码与 MIT 许可证,确认符合你的安全与合规要求。DSH 社区插件目录(如 SkillHub 上的条目)为独立站点,与 DeepSeek / 幻方无官方从属关系。
典型用法¶
- 完成插件安装与 One-click setup,待面板显示就绪。
- 单击挂件开启朗读;与助手正常对话,一轮结束后会自动读最终回复。
- 在设置面板调节音量、语速、
temperature、句间停顿;改动作用于下一次合成。 - 需要验收时,用「试读一行」或「重复上一句回复」检查本机链路。
若浏览器拦截自动播放,面板显示就绪却无声,按 README 提示:先单击挂件一次 解除自动播放限制。
配置说明¶
面板会把配置写入 $DSH_HOME/dania-voice/config.json;在 profile 的 config: 块里写同名项也可以,面板保存会覆盖 profile 中的值。
| 键 | 默认值 | 含义 |
|---|---|---|
enabled |
true |
总开关 |
volume / speed / temperature |
1 / 1 / 0.7 |
播放与采样 |
speakUser |
false |
是否朗读用户消息 |
installDir |
$DSH_HOME/dania-voice |
引擎安装位置 |
pythonPath / root / cacheDir |
派生 | 仅手工安装时需要 |
baseUrl |
http://127.0.0.1:9880 |
GPT-SoVITS 端点 |
autostart |
true |
需要时自动启动服务 |
适用场景与注意¶
适合:已在用 DSH Web profile、本机有 NVIDIA GPU(或接受 CPU 慢速)、希望助手回复本地 TTS、且能接受首次加载模型约 20–40 秒、之后每句约 1–3 秒的延迟。
注意:
- 首次合成慢、后续快,属于模型载入 VRAM 的正常现象(README Troubleshooting)。
- 挂件红框:插件路由未响应,检查插件是否启用。
- 显示「Not installed yet」:执行一键安装或查
install.log。 - 底座与音色下载体积大,网络不稳时依赖安装器的幂等重试。
结尾¶
dsh-dania-voice 把 DSH 会话事件、本机 GPT-SoVITS 与浏览器播放串成一条闭环:助手回复在本机变成语音,用挂件即可开关与调参。若你要从目录页或仓库核对版本与 issue,可参考:
- 目录页:https://www.skillhub.cn/plugins/xcw520/dsh-dania-voice
- GitHub:https://github.com/xcw520/dsh-dania-voice