--- tags: - voice-activity-detection - gguf - multilingual - vad - audio-event-detection - aed - quantization - dfsmn - audio - speech pipeline_tag: voice-activity-detection base_model: FireRedTeam/FireRedVAD --- # FireRedVAD GGUF Models Pre-converted [FireRedVAD](https://github.com/FireRedTeam/FireRedVAD) models in **GGUF format** for cross-platform, high-performance C++ inference. Includes Standard VAD, Streaming VAD, and Audio Event Detection (AED) with multiple quantization options. - **Original Models:** [FireRedTeam/FireRedVAD](https://huggingface.co/FireRedTeam/FireRedVAD) - **C++ Inference Engine & Conversion Tools:** [https://github.com/Strg-Alt-Entf-0x00/firered-vad](https://github.com/Strg-Alt-Entf-0x00/firered-vad) *(Update 2026-08-30: Models re-uploaded to fix a mathematical transposition bug in the FSMN lookahead filters. These models now have 100% exact parity with the original PyTorch implementation).* ## ⚡ Quick Start (Python / Hub) ```python pip install huggingface-hub from huggingface_hub import hf_hub_download # Download streaming VAD (INT8-CH, recommended) model_path = hf_hub_download( repo_id="Strg-Alt-Entf-0x00/FireRedVAD-GGUF", filename="stream-vad/int8-ch/firered-stream-vad-int8-ch.gguf" ) ``` For the highly-optimized **Native C++ Engine** (no PyTorch required, up to 53x realtime), see the [Integration Repository](https://github.com/Strg-Alt-Entf-0x00/firered-vad). --- ## 📁 Available Models All models follow this structure: `{model_type}/{quantization}/{filename}.gguf` ### `stream-vad/` — Real-time Streaming VAD (Causal, Low Latency) Best for real-time voice activity detection. Fully causal — no future context needed. Optimized for streaming applications with 10ms frame processing. Achieves up to **53.6x realtime** performance on a single CPU core. | Quantization | Path | Size | MAE vs FP32 | SQNR | Notes | |:---|:---|:---|:---|:---|:---| | **INT8-CH** | `stream-vad/int8-ch/` | 601 KB | 0.000985 | 59.4 dB | **Recommended for Edge / IoT**. Per-channel quantization, near-FP32 accuracy | | **INT8** | `stream-vad/int8/` | 574 KB | 0.001918 | 50.5 dB | Per-tensor quantization, good accuracy | | **INT16** | `stream-vad/int16/` | 1.14 MB | 0.000077 | 94.2 dB | High precision, 2x memory | | **FP32** | `stream-vad/fp32/` | 2.28 MB | 0.0 | ∞ | **Recommended for Desktop / Server**. Reference quality, 100% precision | ### `vad/` — Standard VAD (Bidirectional, High Accuracy) Uses bidirectional context (lookback + lookahead). Higher accuracy than `stream-vad`, but requires buffering full audio segments. Best for offline/batch processing. Performance: **97.57% F1** on FLEURS-VAD-102 dataset. Runs at **31.3x realtime**. | Quantization | Path | Size | MAE vs FP32 | SQNR | Notes | |:---|:---|:---|:---|:---|:---| | **INT8-CH** | `vad/int8-ch/` | 627 KB | 0.000985 | 59.4 dB | **Recommended for Edge / IoT** | | **INT8** | `vad/int8/` | 595 KB | 0.001957 | 50.4 dB | Good accuracy, minimal size | | **INT16** | `vad/int16/` | 1.18 MB | 0.000079 | 94.2 dB | High precision | | **FP32** | `vad/fp32/` | 2.36 MB | 0.0 | ∞ | **Recommended for Desktop / Server** | ### `aed/` — Audio Event Detection (Multi-class) Simultaneous detection of speech, music, and singing in 100+ languages. Runs at **31.7x realtime**. | Quantization | Path | Size | MAE vs FP32 | SQNR | Notes | |:---|:---|:---|:---|:---|:---| | **INT8-CH** | `aed/int8-ch/` | 628 KB | 0.000985 | 59.4 dB | **Recommended for Edge / IoT** | | **INT8** | `aed/int8/` | 596 KB | 0.001957 | 50.4 dB | Good accuracy | | **INT16** | `aed/int16/` | 1.18 MB | 0.000079 | 94.2 dB | High precision | | **FP32** | `aed/fp32/` | 2.36 MB | 0.0 | ∞ | **Recommended for Desktop / Server** | --- ## 🔍 Quantization Details ### Why INT8-CH (Per-Channel) is Recommended **Problem with standard INT8 (per-tensor)**: DFSMN architectures have wide variance in weight distribution across output channels. A single global scale factor per tensor cannot capture this range accurately, causing silent accuracy degradation. **Solution: INT8 Per-Channel (`int8-ch`)**: Assigns one scale factor per output channel. This preserves near-FP32 accuracy (MAE < 0.001, SQNR > 59 dB) while maintaining INT8 speed and memory efficiency. ### Quantization Quality Metrics (Per Model) Each model includes a `-debug.json` file with per-tensor quantization statistics: - **MAE** (Mean Absolute Error): Average difference from FP32 - **SQNR** (Signal-to-Quantization-Noise Ratio): Quality metric in dB - **Per-channel scale factors**: Min/max/mean scales per layer --- ## ⚙️ Hardware Requirements **Minimum (INT8-CH models)** - RAM: ~5 MB for model + ~2 MB for inference buffers - CPU: Any modern x86_64, ARM, or RISC-V processor - Storage: ~600 KB per model **Recommended (FP32 models)** - RAM: ~10 MB for model + ~3 MB for inference buffers - CPU: SIMD support (SSE, AVX, NEON) for faster inference - Storage: ~2.3 MB per model ## 📜 License & Attribution - **FireRedVAD by Xiaohongshu (FireRedTeam)** — Apache 2.0 Source: [https://github.com/FireRedTeam/FireRedVAD](https://github.com/FireRedTeam/FireRedVAD) - **FireRedVAD-GGUF by Strg-Alt-Entf-0x00** — Apache 2.0 Repository: [https://github.com/Strg-Alt-Entf-0x00/firered-vad](https://github.com/Strg-Alt-Entf-0x00/firered-vad)