把 Whisper、Moonshine、SenseVoice 统统装进手机:sherpa-onnx 离线语音部署框架,GitHub 10.9K Star

把 Whisper、Moonshine、SenseVoice 统统装进手机:sherpa-onnx 离线语音部署框架,GitHub 10.9K Star

导读:

语音 AI 模型更新很快——Whisper、Moonshine、SenseVoice、FireRedASR、Paraformer,几乎每个月都有新模型发布。但对开发者来说,选好模型只是第一步,真正的工程挑战在后面:怎么把它跑在手机上?嵌入式设备上?浏览器里?怎么接入 NPU 加速?怎么在没有网络的环境下运行?

sherpa-onnx 是 next-gen Kaldi 团队开源的语音推理部署框架(GitHub 10.9k stars,Apache 2.0 协议),它的定位很明确:将多种语音模型统一转成 ONNX 格式,部署到各类平台上,支持离线运行。覆盖 12 项语音功能、12 种编程语言、从服务器到嵌入式的多平台支持,最新版 v1.12.29 于 3 月 12 日发布。

本文将介绍 sherpa-onnx 的功能覆盖、模型生态、硬件适配方案上手方式

一、功能矩阵:不只是语音识别

sherpa-onnx 覆盖 12 项语音功能,远不止 ASR:

功能说明

语音识别(ASR)

流式 + 非流式两种模式

语音合成(TTS)

支持多种 TTS 引擎

说话人分离

多说话人场景

说话人识别

声纹匹配

说话人验证

一对一声纹确认

语种识别

自动检测语言

语音活动检测(VAD)

基于 silero-vad(轻量级语音端点检测模型)

关键词检测

唤醒词 / 热词触发

音频标签

环境音分类

标点恢复

为识别结果添加标点

语音增强

降噪(gtcrn、DPDFNet 等降噪模型)

音源分离

人声/伴奏分离(spleeter、UVR 等分离模型)

多平台覆盖

架构AndroidiOSWindowsmacOSLinuxHarmonyOS

x64

x86

arm64

arm32

riscv64

此外还支持 WebAssembly(浏览器端运行)、WearOS、openKylin、NVIDIA Jetson(Orin NX / Nano B01)、Raspberry Pi、RISC-V 开发板等。

12 种编程语言

C++、C、Python、JavaScript、Java、C#、Kotlin、Swift、Go、Dart、Rust、Pascal,加上 WebAssembly 支持。

二、模型生态:集成了哪些模型

sherpa-onnx 定位为推理部署框架,不包含模型训练功能,而是把各方的模型转成 ONNX(Open Neural Network Exchange,开放神经网络交换格式)纳入统一框架。以下是部分已集成的模型:

语音识别(ASR)

流式模型(实时场景):

模型支持语言

Zipformer(多语言版本)

中文、英文、韩文、法文等

Paraformer(流式版)

中英双语 / 中粤英三语

非流式模型(离线/批量场景):

模型支持语言

Whisper(tiny 到 large)

多语言

Moonshine(tiny / base / v2)

英文

SenseVoice

中文、英文、粤语、日文、韩文 + 多种中文方言

FireRedASR v2(CTC / AED)

中英文 + 20+ 种方言

Paraformer(离线版)

中英文 + 多种中文方言

NVIDIA Parakeet

英文

TeleSpeech

中文 + 多种方言

Dolphin

40 种亚洲语言 + 22 种中文方言

语音合成(TTS)

模型说明

Piper

多语言轻量 TTS

Matcha

中文、英文、中英混合

Supertonic2

v1.12.29 新增

ZipVoice

中英文语音克隆

PocketTTS

英文语音克隆

2026 年近期新增

版本日期新增模型/功能

v1.12.29

3/12

Supertonic2 TTS,多语言绑定同步更新

v1.12.28

2/28

Moonshine v2 ASR,多语言绑定同步更新

v1.12.27

2/26

FireRedASR CTC 模型,Rust VAD API

v1.12.26

2/24

PocketTTS 语音嵌入缓存,Rust ASR API

新模型接入时,团队会同步更新绝大多数语言的绑定,这是 sherpa-onnx 工程量最大的地方,也是它的核心价值——开发者不需要自己做模型转换和跨平台适配。

三、硬件适配:从服务器到嵌入式

NPU 加速

sherpa-onnx 支持 4 种 NPU:

NPU厂商典型设备

RKNN

瑞芯微

RK3588 等开发板

QNN

高通

骁龙平台手机/IoT

Ascend NPU

华为

昇腾 AI 处理器

Axera NPU

爱芯元智

边缘 AI 芯片

已验证的边缘设备

README 中列出的已测试设备包括:

NVIDIA Jetson:Orin NX(CPU + GPU)、Nano B01(CPU + GPU)Raspberry PiRISC-V 开发板:LicheePi4A、VisionFive 2国产 AI 开发板:旭日X3派、爱芯派、RK3588RV1126

浏览器端:WebAssembly

sherpa-onnx 提供完整的 WebAssembly 支持,可以在浏览器中直接运行语音识别、语音合成、说话人分离、VAD 等功能,无需后端服务器。项目在 HuggingFace 上提供了大量在线 demo,涵盖多种语言和模型组合。

四、上手方式

Python 安装

pip install sherpa-onnx 

预构建应用

sherpa-onnx 提供多种开箱即用的预构建应用,无需编译:

类型覆盖功能

Android APK

流式/非流式 ASR、TTS、VAD、音频标签、说话人识别/分离、关键词检测、语种识别

Flutter App

流式 ASR、TTS(Android/Linux/macOS/Windows)

Lazarus App

字幕生成

WebAssembly Demo

ASR、TTS、VAD、说话人分离、语音克隆(浏览器直接运行)

HuggingFace 在线体验

不需要安装任何东西,直接在浏览器中试用:

语音识别(多种模型可选)语音合成(Piper、Matcha、ZipVoice)说话人分离音频标签音源分离VAD + ASR 组合(Whisper、Moonshine、SenseVoice、Paraformer 等)

大部分 demo 提供国内镜像地址。

预训练模型下载

项目通过 GitHub Releases 提供各类预训练模型的下载,按功能分类:ASR 模型、TTS 模型、VAD 模型、关键词检测模型、音频标签模型、说话人识别模型、标点模型、说话人分割模型、语音增强模型、音源分离模型。

五、总结

sherpa-onnx 的价值不在于某个模型的精度有多高,而在于解决了"模型到部署"之间的工程鸿沟。它把 Whisper、Moonshine、SenseVoice、FireRedASR 等模型统一到一个框架里,让开发者用同一套 API 就能部署到手机、嵌入式设备、浏览器或服务器上。

适合关注的场景:

需要在离线环境下运行语音 AI(无网络依赖)需要将语音能力部署到移动端、嵌入式或浏览器在多个项目中使用不同的语音模型,希望统一部署框架需要 NPU 加速(瑞芯微、高通、华为昇腾、爱芯元智)

当前局限:

定位为推理部署框架,不包含模型训练功能,依赖上游模型的更新和质量部分新模型的集成存在滞后(需要等团队完成 ONNX 转换和全语言绑定)文档以英文为主,部分中文文档覆盖不完整

项目信息:

GitHub:https://github.com/k2-fsa/sherpa-onnx文档:https://k2-fsa.github.io/sherpa/onnx/index.html协议:Apache 2.0最新版本:v1.12.29(2026-03-12)社区:Discord

Read more

Qwen3-VL-WEBUI内容推荐:图文匹配度计算部署教程

Qwen3-VL-WEBUI内容推荐:图文匹配度计算部署教程 1. 引言 随着多模态大模型的快速发展,视觉-语言理解能力已成为AI应用的核心竞争力之一。阿里云推出的 Qwen3-VL 系列模型,作为迄今为止Qwen系列中最强大的视觉-语言模型,不仅在文本生成与理解方面表现卓越,更在图像识别、空间感知、视频分析和跨模态推理上实现了全面突破。 本文将聚焦于 Qwen3-VL-WEBUI 的本地化部署实践,重点讲解如何基于该Web界面工具实现“图文匹配度计算”功能的快速落地。我们将以开源项目为基础,结合内置的 Qwen3-VL-4B-Instruct 模型,手把手带你完成从环境准备到实际调用的全流程操作,适合希望快速验证多模态能力的技术人员和开发者。 2. 技术背景与核心价值 2.1 什么是Qwen3-VL? Qwen3-VL 是通义千问团队发布的第三代视觉-语言大模型,具备以下关键特性: * 更强的图文融合能力:通过深度对齐机制实现无损的文本-图像语义映射。 * 超长上下文支持:原生支持 256K tokens 上下文,可扩展至 1M,适用于整本书籍或数小时视频的理解

前端实战:手把手教你实现浏览器通知功能

前端实战:手把手教你实现浏览器通知功能

前端入门:浏览器通知功能从0到1实现指南 作为前端学习者,你可能见过这样的场景:打开网页版聊天工具,就算把浏览器最小化,桌面也会弹出“新消息”提醒;或者某些网站的活动通知,会直接显示在电脑/手机桌面上。这种功能就是「浏览器桌面通知」,今天我们就从零开始,搞懂它、学会用它。 一、先搞懂3个基础问题 1. 什么是浏览器桌面通知? 简单说,就是网页能在浏览器窗口外面(比如电脑桌面、手机屏幕)给你发提醒。哪怕浏览器最小化、甚至页面切到后台,只要权限允许,都能收到通知,不用一直盯着网页。 2. 什么时候会用到它? 常见场景很贴近日常: * 网页版微信/QQ的新消息提醒; * 工作系统的审批提醒、任务到期通知; * 电商网站的订单状态更新(比如“你的快递已发货”); * 新闻/小说网站的订阅内容更新提醒。 3. 用起来难吗?有什么限制? 不难!核心就2步:先让用户同意开启通知(申请权限)

Go语言中的未来:从泛型到WebAssembly

Go语言中的未来:从泛型到WebAssembly 前言 作为一个在小厂挣扎的Go后端老兵,我对Go语言未来的理解就一句话:能进化的绝不固步自封。 想当年刚接触Go语言时,它还没有泛型,没有模块系统,甚至连错误处理都被人诟病。现在的Go语言已经今非昔比,泛型来了,模块系统完善了,错误处理也有了更多选择。 今天就聊聊Go语言的未来发展,从泛型到WebAssembly,给大家一个能直接抄作业的方案。 为什么需要关注Go语言的未来? 我见过不少小团队,只关注当前的技术,不关心语言的发展趋势,结果技术栈逐渐落后。关注Go语言的未来能带来很多好处: * 提前准备:了解未来的特性,提前调整代码结构 * 技术选型:根据未来趋势,做出更合理的技术选型 * 职业发展:掌握最新技术,提升个人竞争力 * 项目规划:根据语言发展,制定更合理的项目规划 泛型 泛型是Go 1.18引入的重要特性,它能让我们编写更加通用的代码。 基本用法 // 定义泛型函数 func Map[T, U any](s []T, f

Open-WebUI—开箱即用的AI对话可视化神器

Open-WebUI—开箱即用的AI对话可视化神器

你是否曾兴奋地在本地部署了Ollama,却很快被冰冷的命令行和繁琐的指令劝退?是否羡慕ChatGPT那样优雅的聊天界面,却又希望数据能牢牢掌握在自己手中?OpenWebUI。这个在GitHub上狂揽 110,000 Stars 的明星项目,完美地解决了所有痛点 github地址: https://github.com/open-webui/open-webui 1.什么是Open WebUI? Open WebUI 是一款专为大型语言模型(LLM)设计的 开源可视化交互框架,它通过简洁的Web界面,让用户无需编写代码即可与本地部署的AI模型/各大服务商提供大模型API(如DeepSeek、Llama、ChatGLM等)进行自然对话。其核心使命是 “让LLM私有化部署像打开浏览器一样简单” ,尤其适合需要快速搭建企业级AI平台或追求数据隐私的开发者。 2. 核心价值 * 开箱即用:无需复杂的前端开发,快速搭建 AI 交互界面。完全开源,可自由部署、修改和二次开发,无商业使用限制。 * 多模型支持:兼容 Ollama、