ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

从 Dette 到自研应用:基于 Phonon-2 构建 Mac 语音输入应用实战指南

从 Dette 到自研应用:基于 Phonon-2 构建 Mac 语音输入应用实战指南
  • 人工智能
  • 语音
  • 音频
  • 模型量化
  • 本地部署

【免费下载链接】Phonon-2

项目地址:https://ai.gitcode.com/hf_mirrors/FermionResearch/Phonon-2
点击查看免费下载

Phonon-2 是 Fermion Research 开源的超小型英文语音识别(ASR)模型,也是 Mac 听写应用 Dette 背后的内置引擎:仅 164 MB 体积,却在 7 个英文基准上实现 5.21% 的平均词错误率,并在 M5 MacBook Air 上以 174 倍实时速度完成转写。本文手把手教你基于 Phonon-2 构建自己的 Mac 语音输入应用。

一、为什么选择 Phonon-2 做本地语音输入?

想在 Mac 上做一个离线、低延迟、免 API 费用的语音输入应用,模型选型是第一道关。Phonon-2 给出了一个罕见的答案:

  • 📦体积极小:下载仅 164 MB(config.json 中记录的压缩产物为 163.5 MB),比其 2.5 GB 的教师模型小 15 倍
  • 🎯精度不输大模型:在 Open ASR Leaderboard 的 7 个英文测试集上平均词错误率(WER)5.21%,逐项接近甚至超越数倍体积的竞品(完整评测数据见 .eval_results/open_asr_leaderboard.yaml)
  • ⚡推理极快:在 M5 MacBook Air 上转写 1 小时音频约需 20 秒(174 倍实时);8 核 Zen 5 CPU 上也有 143 倍实时
  • 🔒完全本地:基于 MLX 在 Apple Silicon 上运行,音频不出设备,隐私有保障

核心原理:Phonon-2 基于 NVIDIA 的 Parakeet TDT 0.6B v3,编码器权重被重新训练并量化到五值字母表(约 2.1 bit/权重),其余参数量化为 6-bit 整数表。这种极致量化正是它能塞进笔记本、还保持高精度的关键。

基准成绩一览(WER 越低越好):

模型下载体积平均 WER
Phonon-2164 MB5.21
Parakeet TDT 0.6B v3(教师模型)2,508 MB4.96
Canary 180M Flash737 MB5.69
Voxtral Mini 4B Realtime≈8,000 MB6.12
Whisper large-v3-turbo1,618 MB6.58

用 1/15 的体积换回 100% 的相对精度,这就是 Phonon-2 的核心卖点。

二、模型仓库里有什么?

获取模型(首次使用可克隆仓库):

git clone https://gitcode.com/hf_mirrors/FermionResearch/Phonon-2

仓库文件结构简洁,每个文件都有明确用途:

文件作用
phonon-2.bps.tar.zst模型权重主文件(zstd 压缩容器)
config.json模型元数据:model_type为parakeet_tdt_five_value,含 SHA256 校验值
packed_manifest.json打包清单:容器名、字节数、哈希
SHA256SUMS.txt全部文件的 SHA256 校验和,用于完整性验证
fermion_container.py容器读取器:把五值/整数量化记录解码为标准张量
reference_transformers.pyPyTorch 参考实现:加载模型并逐句转写
NOTICE相对基座模型的改动说明与训练数据来源
LICENSE-CODE-Apache-2.0.txt、LICENSE-WEIGHTS-CC-BY-4.0.txt代码与权重的双许可证

下载后建议用sha256sum -c SHA256SUMS.txt校验文件完整性,再开始开发。

三、从 Dette 到自研:三条技术路线

Dette 是 Fermion Research 官方的 Mac 听写应用,其内部引擎正是 Phonon-2。自研同类应用,架构可以抽象为三步:采集音频 → 本地推理转写 → 文字回填输入框。按投入成本从低到高,有三条路线:

  1. 命令行验证路线(推荐入门):phononCLI 一条命令转写音频,10 分钟跑通全链路
  2. Python + MLX 集成路线:将fermion-research库嵌入自己的 Python 应用,实现录音、快捷键、粘贴等桌面功能
  3. Core ML(Neural Engine)路线:将模型编译为 Core ML 格式,跑在 Mac 的神经网络引擎上,性能与功耗表现最佳,适合追求极致体验的正式产品

无论哪条路线,模型推理层都可以复用 reference_transformers.py 中的参考逻辑:它演示了「读取容器 → 展开为 fp32 权重 → 载入标准 ParakeetForTDT → 贪心解码」的完整流程。

四、快速上手:命令行转写第一条语音

环境要求:Apple Silicon Mac + Python 3.10 或更高版本(注意 macOS 自带的python3是 3.9,需安装python3.12等更高版本)。

第 1 步:创建虚拟环境并安装依赖

python3.12 -m venv .venv && source .venv/bin/activate pip install fermion-research pip install mlx mlx-audio mlx-lm soundfile scipy zstandard

第 2 步:转写一段音频

phonon transcribe recording.wav

或者使用通用入口:

fermion transcribe phonon-2 recording.wav

第 3 步:获取词级时间戳

加上--json参数,每个词都会附带起止时间——这正是构建语音输入应用做「按词回填、光标定位」的刚需数据:

phonon transcribe recording.wav --json

至此,你已经拥有与 Dette 相同的核心转写能力,接下来只需围绕它构建录音与输入体验。

五、构建语音输入应用的四个关键环节

1. 录音与音频预处理

应用侧负责从麦克风采集音频。Phonon-2 的推理链路会自动把任意采样率重采样到16 kHz 单声道(见 reference_transformers.py 中的预处理逻辑),因此录音端无需纠结采样率,但建议统一输出 16 kHz WAV 以减少转换开销。

2. 推理引擎选型

  • Apple Silicon(主战场):MLX 后端,即 Dette 同款路径,174 倍实时,转写延迟可忽略
  • 跨平台部署:同一套模型也支持 Linux(x86-64/Arm)和 Windows 的 CPU 推理,服务端场景还可以用 Docker 一键拉起(CPU 或 GPU 镜像),方便把 Mac 客户端与云端批量转写组合使用

3. 文字回填与光标定位

利用--json输出的每词时间戳,可以在用户说话的同时实现流式逐词上屏:录音结束 → 转写 → 按时间戳顺序把文本插入光标处。会议记录场景下,时间戳还能直接生成带时间轴的字幕文件。

4. 可选:用参考实现做结果校验

开发中若怀疑量化或后端引入误差,可用 PyTorch 参考实现对照:

python reference_transformers.py model.fermion --audio recording.wav

该脚本输出每句话的转写文本与 token id,并统计加载/解码耗时,是验证其他推理引擎输出正确性的「标尺」。

六、性能参考:转写速度一览

硬件1 小时音频转写耗时实时倍数
M5 MacBook Air(MLX)约 20 秒174x
8 核 Zen 5 CPU(16 vCPU)约 26 秒143x
NVIDIA H100(批量 128)不到 1 秒6,680x

对「边说边听」的语音输入场景而言,20 秒转写 1 小时音频意味着任何长度的独白都能在用户无感知的时间内出结果,实时逐词转写同样绰绰有余。

七、许可证与合规要点

商用前请务必确认以下授权边界(详见 NOTICE):

  • 模型权重:CC-BY-4.0(继承自 NVIDIA Parakeet TDT 0.6B v3),使用需署名
  • 仓库代码:Apache 2.0,可自由商用
  • 改动声明:编码器线性权重由 Fermion Research 重新训练并五值量化,其余参数为 6-bit 整数量化;FastConformer 编码器结构、TDT 解码器、分词器均沿用基座模型
  • 训练数据:包含 CHiME-6(CC-BY-SA-4.0)与 SPGISpeech,商用分发时保留相应声明即可

八、常见问题 FAQ

问:Phonon-2 支持中文吗?目前模型面向英文语音识别(language: en),中文场景需另行选型。

问:可以完全离线使用吗?可以。MLX 推理全程在本地完成,模型下载后无需联网。

问:如何验证下载的模型没有被篡改?用 SHA256SUMS.txt 逐项校验哈希值即可,packed_manifest.json 中也冗余记录了容器哈希。

问:非 Apple Silicon 的 Mac 能用吗?推荐 Intel Mac 使用 CPU 路线或 Docker 部署,MLX 后端主要面向 Apple Silicon 优化。

总结

Phonon-2 证明了「极致量化 + 开放授权」可以做出真正可用的本地语音识别:164 MB 的下载体积、逼近 2.5 GB 教师模型的精度、MacBook Air 上 174 倍实时的速度,构成了一个自研 Mac 语音输入应用最扎实的底座。从一条phonon transcribe命令起步,到 MLX 集成再到 Core ML 优化,你完全可以复刻出一个媲美 Dette 的私有听写工具——而且音频数据始终留在自己的设备上。🚀

  • 人工智能
  • 语音
  • 音频
  • 模型量化
  • 本地部署

【免费下载链接】Phonon-2

项目地址:https://ai.gitcode.com/hf_mirrors/FermionResearch/Phonon-2
点击查看免费下载

相关推荐

上一篇:smolvm 在 Windows 上的持久化开发机器:验证记录、WHP 设备上限与 PowerShell 脚本驱动实战
下一篇:Remix 数据与校验实战:从请求边界校验、类型安全数据表到 SQL 迁移的完整链路

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进