whisper.cpp - 高性能Whisper语音识别推理

文章目录


一、关于 whisper.cpp

1、项目概览

whisper.cpp 是 OpenAI Whisper 自动语音识别(ASR)模型的高性能推理实现,具有以下技术特性:

  • 纯C/C++实现,无外部依赖
  • 针对Apple Silicon优化(ARM NEON/Accelerate/Metal/Core ML)
  • 支持x86架构的AVX指令集
  • 支持POWER架构的VSX指令集
  • 混合F16/F32精度
  • 支持整数量化
  • 运行时零内存分配
  • 支持Vulkan/NVIDIA GPU加速
  • 支持CPU-only推理
  • 提供C风格API
  • 支持语音活动检测(VAD)

2、相关链接资源


3、功能特性

  1. 多平台支持
    • Mac OS (Intel/Apple Silicon)
    • iOS/Android
    • Linux/Windows/FreeBSD
    • WebAssembly/Raspberry Pi
  2. 硬件加速支持
    • Apple Neural Engine (Core ML)
    • NVIDIA CUDA
    • Vulkan跨平台GPU加速
    • OpenBLAS CPU加速
    • Ascend NPU支持
  3. 高级功能
    • 实时音频输入处理
    • 置信度颜色标注
    • 词级时间戳
    • 说话人分离
    • 卡拉OK式视频生成

二、安装配置

git clone https://github.com/ggml-org/whisper.cpp.git cd whisper.cpp sh ./models/download-ggml-model.sh base.en cmake -B build cmake --build build --config Release 

三、使用示例

1、基础转录

./build/bin/whisper-cli -f samples/jfk.wav 

2、实时音频处理

./build/bin/whisper-stream -m ./models/ggml-base.en.bin -t 8 --step 500 --length 5000

3、量化模型使用

./build/bin/quantize models/ggml-base.en.bin models/ggml-base.en-q5_0.bin q5_0 ./build/bin/whisper-cli -m models/ggml-base.en-q5_0.bin ./samples/gb0.wav 

四、高级功能

1、Core ML加速(Mac)

./models/generate-coreml-model.sh base.en cmake -B build -DWHISPER_COREML=1 cmake --build build -j --config Release 

2、OpenVINO加速

python convert-whisper-to-openvino.py --model base.en cmake -B build -DWHISPER_OPENVINO=1 cmake --build build -j --config Release 

3、NVIDIA CUDA加速

cmake -B build -DGGML_CUDA=1 cmake --build build -j --config Release 

五、性能参考

模型磁盘占用内存占用
tiny75 MiB~273 MB
base142 MiB~388 MB
large2.9 GiB~3.9 GB

六、扩展支持

1、Docker使用

docker run -it --rm \ -v path/to/models:/models \ whisper.cpp:main "whisper-cli -m /models/ggml-base.bin -f ./samples/jfk.wav"

2、语言绑定

  • Python/Rust/Go/Java/Ruby/.NET等
  • iOS(Swift)/Android(Java)移动端支持

七、注意事项

  1. 当前仅支持16-bit WAV音频输入
  2. 首次运行Core ML/OpenVINO需要编译时间
  3. 实时处理需要SDL2库支持

伊织 xAI 2025-05-18(日)

Read more

前端防范 XSS(跨站脚本攻击)

目录 一、防范措施 1.layui util  核心转义的特殊字符 示例 2.js-xss.js库 安装 1. Node.js 环境(npm/yarn) 2. 浏览器环境 核心 API 基础使用 1. 基础过滤(默认规则) 2. 自定义过滤规则 (1)允许特定标签 (2)允许特定属性 (3)自定义标签处理 (4)自定义属性处理 (5)转义特定字符 常见场景示例 1. 过滤用户输入的评论内容 2. 允许特定富文本标签(如富文本编辑器内容) 注意事项 更多配置 XSS(跨站脚本攻击)是一种常见的网络攻击手段,它允许攻击者将恶意脚本注入到其他用户的浏览器中。

详细教程:如何从前端查看调用接口、传参及返回结果(附带图片案例)

详细教程:如何从前端查看调用接口、传参及返回结果(附带图片案例)

目录 1. 打开浏览器开发者工具 2. 使用 Network 面板 3. 查看具体的API请求 a. Headers b. Payload c. Response d. Preview e. Timing 4. 实际操作步骤 5. 常见问题及解决方法 a. 无法看到API请求 b. 请求失败 c. 跨域问题(CORS) 作为一名后端工程师,理解前端如何调用接口、传递参数以及接收返回值是非常重要的。下面将详细介绍如何通过浏览器开发者工具(F12)查看和分析这些信息,并附带图片案例帮助你更好地理解。 1. 打开浏览器开发者工具 按下 F12 或右键点击页面选择“检查”可以打开浏览器的开发者工具。常用的浏览器如Chrome、Firefox等都内置了开发者工具。下面是我选择我的一篇文章,打开开发者工具进行演示。 2. 使用

Cursor+Codex隐藏技巧:用截图秒修前端Bug的保姆级教程(React/Chakra UI案例)

Cursor+Codex隐藏技巧:用截图秒修前端Bug的保姆级教程(React/Chakra UI案例) 前端开发中最令人头疼的莫过于那些难以定位的UI问题——元素错位、样式冲突、响应式失效...传统调试方式往往需要反复修改代码、刷新页面、检查元素。现在,通过Cursor编辑器集成的Codex功能,你可以直接用截图交互快速定位和修复这些问题。本文将带你从零开始,掌握这套革命性的调试工作流。 1. 环境准备与基础配置 在开始之前,确保你已经具备以下环境: * Cursor编辑器最新版(v2.5+) * Node.js 18.x及以上版本 * React 18项目(本文以Chakra UI 2.x为例) 首先在Cursor中安装Codex插件: 1. 点击左侧扩展图标 2. 搜索"Codex"并安装 3. 登录你的OpenAI账户(需要ChatGPT Plus订阅) 关键配置项: // 在项目根目录创建.