关键要点
- Whisper 是一个在本地运行的开源语音转文字模型——没有音频离开你的硬件
- 使用 Whisper(faster-whisper)加载项;它经由 Wyoming 连接到 Assist
- 模型大小为 tiny → base → small → medium → large;越大越准、越慢
- 在仅 CPU 的硬件上,优先 tiny/base/small;有 GPU 时 medium/large 才实用
- Whisper 支持多语言,因此非英语命令也能在没有云服务的情况下转写
- 在加大之前,先用更好的麦克风和合适的模型来调优精度
- Home Assistant 官方 Whisper 应用基于 faster-whisper(wyoming-faster-whisper);whisper.cpp 没有官方 Home Assistant 应用
- 目前没有在 Home Assistant 硬件上条件一致的速度对比:已发布的数据来自各不相同的配置
- Piper 通过 Wyoming 负责语音合成;MacWhisper 是 Mac 桌面应用,不是 Home Assistant 组件
为何使用本地语音转文字?
本地语音转文字把你的语音录音留在你自己的硬件上,因此没有音频被上传给第三方。 它还能离线工作,并且没有按次费用。
- 隐私: 云端助手会传输并可能保留录音;本地 Whisper 不会——参见智能家居隐私风险。
- 离线: 转写在断网期间也能工作。
- 无费用: 本地转写没有使用费。
你该使用哪个 Whisper 模型大小?
选择能在你硬件上给出可接受精度的最小 Whisper 模型——仅 CPU 用 tiny/base/small,有 GPU 用 medium/large。 更大的模型在口音和嘈杂音频上提升精度,但以速度为代价。
- 在迷你 PC 的 CPU 上以 small 为默认;仅在精度不足时才换到 medium/large。
- 在 Raspberry Pi 上用 tiny/base 以保持延迟可用。
模型 | 相对精度 | 相对速度 | 最适合 |
|---|---|---|---|
| tiny | 最低 | 最快 | 低功耗 CPU、短命令 |
| base | 低 | 非常快 | Raspberry Pi、简单短语 |
| small | 良好 | 快 | 迷你 PC 的 CPU、日常使用 |
| medium | 高 | 中等 | GPU 或强力 CPU |
| large | 最高 | 最慢 | GPU、口音/嘈杂房间 |
Wyoming 配置
Whisper 加载项会暴露一个 Wyoming 端点,供 Assist 用于语音转文字。 配置流程是:安装 → 选择模型 → 在流水线中选择。
- 1从加载项商店安装 Whisper(faster-whisper)加载项。
- 2在加载项配置中设置模型大小并启动它。
- 3加载项会自动注册为一个 Wyoming 语音转文字服务。
- 4在 设置 → 语音助手 中,把 Whisper 设为你 Assist 流水线的 STT 引擎。
- 5在添加语音硬件之前,从 Assist 的调试工具测试转写。
硬件需求
Whisper 的小型模型在 CPU 上运行,medium/large 模型则受益于 GPU。 把模型大小匹配到托管它的机器。
- Raspberry Pi:保持 tiny/base 以获得可接受的延迟。
- 迷你 PC(CPU):small 运行良好;medium 可行但更慢——参见本地智能家居的最佳硬件。
- 配 GPU/NPU 时:medium 和 large 在高精度下变得实用。
- 若你的中枢是 Pi,可经由 Wyoming 在一台更强的独立机器上运行 Whisper。
调优精度
在动用最大的 Whisper 之前,先改善一只好麦克风和合适的模型。 对家庭命令而言,音质往往比模型大小更重要。
- 在说话者附近使用优质麦克风或语音卫星硬件。
- 降低麦克风所在处的背景噪声。
- 在加载项中设置正确的语言以避免转写错误。
- 一次只上调一个模型大小并重新测试,而不是直接跳到 large。
Home Assistant 中的 faster-whisper 与 whisper.cpp
Home Assistant 官方 Whisper 应用基于 faster-whisper;whisper.cpp 没有官方 Home Assistant 应用,使用它就意味着要另外运行一个兼容 Wyoming 的服务器。 两个引擎都在本地运行 OpenAI 的 Whisper 模型,区别在于接入 Assist 的方式。
- Home Assistant OS: 在 设置 > 应用 中安装 Whisper 应用,Wyoming 集成会自动发现它(Whisper 应用文档)。应用以前称为加载项(add-on)。
- 默认模型:
auto在 Raspberry Pi 4 等 ARM 设备上选择tiny-int8,其他设备选择base-int8;-int8版本精度略低,但更小更快(Whisper 应用文档)。 - 后端: 当
stt_library为auto时,英语通过 sherpa 使用 Parakeet 模型,中文、粤语、日语和韩语通过 funasr 使用 SenseVoice,俄语使用 GigaAM,其余语言使用 faster-whisper(Whisper 应用文档)。 - 容器或独立主机: 运行
rhasspy/wyoming-whisper镜像(示例中端口为 10300),然后用该主机和端口添加 Wyoming Protocol 集成(wyoming-faster-whisper、Wyoming 集成文档)。Wyoming 服务可以运行在本地网络中的另一台设备上,适合资源消耗大的 Whisper。 - GPU: 该项目的 NVIDIA GPU 镜像并未发布,需要自行构建(约 10.7 GB,而 CPU 镜像约 1.6 GB),且 Home Assistant OS 没有 GPU 直通(wyoming-faster-whisper)。
- whisper.cpp: 其
whisper-server示例是带有类 OpenAI API 的 HTTP 服务器,不是 Wyoming 服务器(whisper.cpp)。rhasspy/wyoming-whisper-cpp 桥接项目已归档;社区有其他桥接项目,但我们没有测试过。
方面 | faster-whisper | whisper.cpp |
|---|---|---|
| Home Assistant 应用 | 官方 Whisper 应用 | 无官方应用 |
| Wyoming 服务器 | wyoming-faster-whisper | wyoming-whisper-cpp(已归档) |
| 在 HA OS 上安装 | 设置 > 应用 > Whisper | 单独运行,经 Wyoming 添加 |
| 在 Docker 中安装 | rhasspy/wyoming-whisper 镜像 | whisper-server(HTTP,非 Wyoming) |
| GPU 支持 | NVIDIA CUDA 12 + cuDNN 9 | CUDA、Vulkan、Metal、OpenVINO |
| CPU 路径 | CTranslate2,int8 或 fp32 | 纯 C/C++,量化模型 |
| 模型 | tiny 到 large-v3、turbo、distil | ggml tiny 到 large |
| 语言 | 经 Wyoming 支持 Whisper 的 100 种 | 多语言模型和 .en 模型 |
速度:已发布基准能说明什么
我们没有找到在 Home Assistant 硬件上条件一致地对比 faster-whisper 与 whisper.cpp 的测量,因此无法对 Raspberry Pi 或迷你主机做直接比较。 唯一并排的数据来自 faster-whisper 的 README:在台式机上用 faster-whisper v1.1.0 和 whisper.cpp v1.7.2 转写 13 分钟音频。这些测试并非我们自己运行。
- 这些是在台式机 GPU(CUDA 12.4)和 Intel Core i7-12700K 上转写 13 分钟文件的结果,而不是 3 秒的语音指令,因此无法据此推断 Raspberry Pi 或迷你主机上的指令延迟。所用版本也早于当前版本。
- Home Assistant 自己的文档称,Whisper 在 Raspberry Pi 4 上处理一条语音指令约需「around 8 seconds」,在 Intel NUC 上「in under a second」完成;该页面没有说明所用模型(本地 Assist 文档)。
- 同一页面称另一款引擎 Speech-to-Phrase 在 Raspberry Pi 4 或 Home Assistant Green 上「under one second」(本地 Assist 文档)。
- whisper.cpp 的 README 没有耗时表;它链接了社区基准讨论串(issue 89),并附带
whisper-bench示例,方便你测量自己的机器。
硬件与模型 | 引擎与设置 | 耗时(13 分钟音频) |
|---|---|---|
| RTX 3070 Ti 8GB, large-v2 | faster-whisper, fp16, beam 5 | 1m03s |
| RTX 3070 Ti 8GB, large-v2 | whisper.cpp + Flash Attention, fp16, beam 5 | 1m05s |
| i7-12700K (8 threads), small | whisper.cpp, fp32, beam 5 | 2m05s |
| i7-12700K (8 threads), small | faster-whisper, fp32, beam 5 | 2m37s |
| i7-12700K (8 threads), small | faster-whisper, int8, beam 5 | 1m42s |
模型大小与内存占用
内存占用主要取决于模型大小:whisper.cpp 的 README 列出 tiny 约 273 MB 内存,large 约 3.9 GB。 下列数据来自 whisper.cpp 的 README。
- faster-whisper 的 README 列出 large-v2 在 RTX 3070 Ti 上占用 4525MB 显存(fp16)和 2926MB(int8)(faster-whisper 的 README)。
- 对于 CPU 上的 small 模型,同一 README 列出 1477MB 内存(faster-whisper int8)和 2257MB(fp32);whisper.cpp 为 1049MB(fp32)。
- Whisper 应用还提供
turbo(比large-v3更快)以及distil-small.en这类仅限英语的蒸馏模型(Whisper 应用文档)。
模型 | 磁盘(whisper.cpp) | 内存(whisper.cpp) |
|---|---|---|
| tiny | 75 MiB | ~273 MB |
| base | 142 MiB | ~388 MB |
| small | 466 MiB | ~852 MB |
| medium | 1.5 GiB | ~2.1 GB |
| large | 2.9 GiB | ~3.9 GB |
Piper TTS:语音管线中「说」的一半
Piper 是 Home Assistant 语音方案中的本地语音合成引擎:Piper 应用通过 Wyoming 提供它,方式与 Whisper 应用提供语音识别相同。 Whisper 听懂指令,Piper 说出回复。
- 安装: 设置 > 应用 > Piper,Wyoming 集成会发现它(Piper 应用文档)。在 Home Assistant OS 之外,wyoming-piper 作为 Wyoming 服务器运行(示例中端口为 10200)。
- 语音: 命名格式为
<language>_<REGION>-<name>-<quality>,默认en_US-lessac-medium,自动从 Hugging Face 下载。x_low和low为 16 kHz,medium和high为 22.05 kHz。 - 资源占用: 应用文档称,在 Raspberry Pi 4 上最高到
medium的语音可以以可用的速度运行;Home Assistant 文档称搭载中等质量模型的 Pi「can generate 1.6s of voice in a second」(本地 Assist 文档)。 - 语言: Piper 的语音列表有 44 个语言/地区条目,包括德语、法语、西班牙语、葡萄牙语(巴西和葡萄牙)、中文和阿拉伯语(约旦)。我们没有在其中找到日语或韩语条目;Piper 应用的文档提到可选的日语和泰语语音,需要额外下载音素化组件(约 350 MB 和 390 MB)。
- 维护: 原始的 rhasspy/piper 仓库已归档,并指向 OHF-Voice/piper1-gpl(GPL-3.0),开发在那里继续;其 README 称 Open Home Foundation 正在寻找维护者。应用的实验性
omnivoice后端质量更高,但「much slower」且「really needs a desktop or server CPU」(Piper 应用文档)。 - 深入阅读:Piper TTS 评测。
MacWhisper 不是 Home Assistant 组件
MacWhisper 是 Mac 桌面应用,不是 Home Assistant 组件:Assist 请使用 Whisper 应用或其他 Wyoming 语音识别服务器。 MacWhisper 在你的 Mac 上本地转写音频、视频、会议和系统音频;其官网没有提到 Home Assistant 或 Wyoming 协议。
- 在 Mac 上处理文件、会议和听写,可使用 MacWhisper:MacWhisper 评测。
- 并排对比各引擎:本地 Whisper 语音识别对比。
项目更新状态
除已归档的 whisper.cpp Wyoming 桥接项目外,上述工具都在积极更新。 日期取自各项目的 GitHub 仓库。
项目 | 最新发布 | 最近提交 |
|---|---|---|
| faster-whisper | v1.2.1 (2025-10-31) | 2026-10-16 |
| whisper.cpp | v1.9.5 (2026-10-06) | 2026-10-12 |
| wyoming-faster-whisper | v3.8.1 (2026-09-14) | 2026-10-14 |
| wyoming-piper | v2.5.2 (2026-09-11) | 2026-09-11 |
| Piper (piper1-gpl) | v1.8.0 (2026-09-04) | 2026-10-17 |
| wyoming-whisper-cpp (archived) | 无发布版本 | 2024-02-29 |
⚠️警告: rhasspy/wyoming-whisper-cpp 已归档,自 2024-02-29 起没有更新,可能已无人维护:依赖某个桥接项目之前,请先确认其当前状态。原始的 rhasspy/piper 仓库同样已归档(最后更新 2025-08-26)。
常见问题
Wyoming 协议是什么?
Wyoming 是 Home Assistant 的 Assist 语音管线用来与语音附加组件通信的轻量级网络协议——包括语音转文本(如 Whisper 附加组件)、文本转语音以及唤醒词检测。它让附加组件可以作为独立服务运行,甚至运行在另一台更强大的设备上,并自动向 Assist 注册,而无需手动配置 API 连接。你不需要直接配置 Wyoming——安装 Whisper 附加组件会暴露一个 Wyoming 端点,Assist 会自动检测到它,你可以在管线中选择使用。
Home Assistant 该用哪个 Whisper 模型?
在迷你 PC 的 CPU 上以 small 为默认,在 Raspberry Pi 上用 tiny 或 base,仅当你有 GPU 并需要在口音或嘈杂房间获得更高精度时才用 medium 或 large。一次上调一个大小并重新测试。
本地 Whisper 需要 GPU 吗?
small 及以下不需要——它们在 CPU 上运行。GPU 主要让 medium 和 large 模型足够快以供实时使用。你也可以经由 Wyoming 协议把 Whisper 卸载到一台更强的机器。
本地 Whisper 离线时有多准?
配合合适的模型和好麦克风,精度很高;更大的模型能更好地处理口音和噪声。对清晰的家庭命令,迷你 PC 上的 small 模型通常已足够准确,并且完全离线运行。
本地 Whisper 支持多语言吗?
支持。Whisper 支持许多语言,因此非英语命令也能在没有任何云服务的情况下在本地转写。在加载项配置中设置语言以获得最佳结果。
Home Assistant 用 faster-whisper 还是 whisper.cpp 更好?
faster-whisper 更省事,因为 Home Assistant 官方 Whisper 应用基于它:在 设置 > 应用 中安装,由 Wyoming 集成自动发现。whisper.cpp 没有官方应用,需要另外运行兼容 Wyoming 的服务器。两个项目发布的基准使用不同的硬件和设置,因此在 Home Assistant 硬件上没有直接的速度对比。
可以在 Home Assistant 中使用 whisper.cpp 吗?
可以,但不能通过官方应用。Home Assistant 通过 Wyoming 协议与语音识别引擎通信,而 whisper.cpp 自带的 whisper-server 使用 HTTP。rhasspy/wyoming-whisper-cpp 桥接项目已归档(最后更新 2024-02-29),社区另有桥接项目,我们未测试。在 设置 > 设备与服务 中,用主机和端口添加任意 Wyoming 服务器即可。
Home Assistant 里的 Piper 是什么?
Piper 是本地运行的神经网络语音合成引擎。Home Assistant 的 Piper 应用通过 Wyoming 提供它,用于语音回复,语音名称形如 en_US-lessac-medium。开发仍在 OHF-Voice/piper1-gpl 继续;原始的 rhasspy/piper 仓库已归档。
MacWhisper 是 Home Assistant 的加载项吗?
不是。MacWhisper 是用于转写音频、视频和会议的 Mac 桌面应用,其官网没有提到 Home Assistant 或 Wyoming。Assist 请使用 Whisper 应用或其他 Wyoming 语音识别服务器。
