/ Модель

Характеристики

Лицензия
Apache 2.0
Библиотека
pytorch
Опубликована
17 апр 2026

LocalVQE

Обработка аудиоАудио → аудио3 профессии

LocalVQE — семейство компактных потоковых моделей для подавления эха, шума и реверберации в речи на процессорах.

4 660скачиваний за 30 дней69лайковвеса обновлены22 июн 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

LocalVQE — компактное семейство нейросетевых моделей для потокового улучшения качества речи. Его разработали Richard Palethorpe и Claude (Anthropic) как производную от DeepVQE; веса опубликованы в формате GGUF, а для запуска используется движок GGML на C++. Модели рассчитаны на обработку речи с частотой 16 кГц в реальном времени на обычных процессорах. Обработка причинная, с шагом 256 отсчётов и задержкой 16 мс.

Семейство включает варианты для подавления акустического эха, шума и реверберации. Совместные модели v1.2 и v1.3 выполняют все три задачи за один проход; v1.4-AEC удаляет только эхо, сохраняя фоновый шум и акустику помещения. Меньшая линия GTCRN-AEC предназначена для маломощных процессоров. Для работы каждой модели требуется микрофонный сигнал и опорный сигнал воспроизведения с динамиков. Репозиторий содержит варианты GGUF в BF16 и F32; заявлена лицензия Apache-2.0.

Модель подходит для очистки голоса в системах связи и потоковой обработке аудио с ограниченным бюджетом процессора. Результаты оценки показывают эффективность подавления эха, однако поведение зависит от выбранного варианта: модели совместной очистки также удаляют фон, а AEC-вариант сохраняет его. Данные обучения фильтровались по DNSMOS, который может ошибочно классифицировать крик или плач как шум; модель может ослаблять такие сигналы и не предназначена для критически важных сценариев.

Сценарии применения

  • подавление акустического эха во время звонков
  • очистка микрофонного сигнала от фонового шума
  • уменьшение реверберации в голосовых записях
  • обработка речи в реальном времени на CPU
  • эхоподавление в системах с воспроизведением через динамики

Ограничения

Для работы требуется отдельный опорный сигнал того, что воспроизводят динамики. Фильтрация обучающих данных могла привести к ослаблению крика или плача; модель не следует применять в аварийных и критически важных сценариях.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

LocalVQE

Open in Spaces GitHub License: Apache 2.0

Local Voice Quality Enhancement — compact neural models for acoustic echo cancellation (AEC), noise suppression (NS), and dereverberation of 16 kHz speech, running on commodity CPUs in real time. Causal and streaming (256-sample hop, 16 ms latency).

This page hosts the published weights. Inference runs the GGML C++ engine on the GGUF files directly (build instructions on GitHub).

Authors: Richard Palethorpe (richiejp) and Claude (Anthropic). LocalVQE is a streaming, CPU-tuned derivative of DeepVQE (Indenbom et al., Interspeech 2023).

Models

Speed is per 16 ms hop on a Ryzen 9 7900 (Zen4), 4 threads; RT = realtime factor (higher is faster than realtime).

VersionDoesParamsSize (F32)SpeedPick it when
v1.3 (current)AEC + NS + dereverb4.8 M~19 MB3.2 ms · 5.0× RTbest joint quality, CPU budget available
v1.2AEC + NS + dereverb1.3 M~5 MB1.7 ms · 8.9× RTtight CPU / low-power devices
v1.4-AECecho only (keeps voice, noise, room)203 K~3 MB0.83 ms · 19× RTNS is handled elsewhere, or you want the room kept
v1.4-AEC 2.7Kecho only, linear filter (no mask)2.7 K~17 KB0.36 ms · 44× RTlightest echo canceller; echo isn't heavily reverberant
v1.1 / v1AEC + NS + dereverb1.3 M~5 MB—superseded by v1.2
  • Joint models (v1.2 / v1.3) clean echo, noise, and reverb in one pass. v1.3 is wider and filters noise better; v1.2 is ~1/4 the per-hop cost.
  • v1.4-AEC removes only the far-end echo and passes voice, room, and background through unchanged. It's a classical adaptive filter followed by a small neural mask. The 2.7K build is that filter alone — cheaper and gentler, but it can't remove heavily reverberant echo the way the mask can.
  • Every model needs a far-end reference signal (a loopback of what your speakers play) in addition to the mic.
  • bf16 GGUFs are ~12 % smaller with identical quality and speed; pick f32 unless download size matters.

Compact line — GTCRN-AEC (for lower-power CPUs)

A separate, much smaller second line of models for lower-power CPUs: a ~49 K-parameter GTCRN-AEC network — a distinct architecture based on GTCRN (Rong et al., ICASSP 2024) — paired with the project's DSP echo-cancellation front-end. The GGUFs are self-contained, so they run with the same single command as every other model. Two variants share the architecture:

ModelDoesParams
localvqe-pi-v1-49kAEC + NS + dereverb (full enhance)49 K
localvqe-pi-aec-v1-49kecho only — keeps noise + room49 K

Whole-clip real-time factor on the real ggml graph, benchmarked on a Raspberry Pi 5 (one example of a low-power target; test_gtcrn --bench, Cortex-A76, Ubuntu 24.04), parity-verified to the PyTorch reference within ~1e-6 on-device. RTF is identical for both variants:

Threads8 s clipRTFRT factor
1388 ms0.048~21×
2219 ms0.027~37×
4163 ms0.020~49×

That is ~0.78 ms per 16 ms hop single-threaded. Runs on any CPU; for single-board ARM, cross-compile for aarch64 with ggml/docker/Dockerfile.arm64 (docker buildx

  • qemu). f16/q8 quantizations are published only if/when released.

Files in this repository

FileSizeModel
localvqe-v1.4-aec-200K-f32.gguf3 MBv1.4-AEC (echo only)
localvqe-v1.4-aec-200K-bf16.gguf2.6 MBv1.4-AEC, conv weights in BF16
localvqe-v1.4-aec-2.7K-f32.gguf17 KBv1.4-AEC front-end only (adaptive filter, no mask)
localvqe-pi-v1-49k-f32.gguf2.3 MBCompact line — GTCRN-AEC full enhance (echo + NS + dereverb)
localvqe-pi-aec-v1-49k-f32.gguf2.3 MBCompact line — GTCRN-AEC echo-only (keeps noise + room)
localvqe-v1.3-4.8M-f32.gguf19 MBv1.3 joint — GGUF the engine loads
localvqe-v1.3-4.8M.pt55 MBv1.3 joint — PyTorch checkpoint (research)
localvqe-v1.2-1.3M-f32.gguf5 MBv1.2 joint — GGUF
localvqe-v1.2-1.3M.pt11 MBv1.2 joint — PyTorch checkpoint
localvqe-v1.1-1.3M-f32.gguf, localvqe-v1-1.3M-f32.gguf5 MBolder releases

v1.4-AEC is GGUF-only (no .pt). GGUF integrity is checked at load time against a built-in SHA256 allowlist in the engine.

Performance

Full 800-clip eval on the ICASSP 2022 AEC Challenge blind test set (real recordings). AECMOS echo / deg are 1–5 (higher = more echo removed / cleaner speech); blind ERLE is 10·log10(E[mic²]/E[enh²]), only meaningful on far-end-only clips. Unprocessed-mic echo MOS is 2.67 / 2.56 / 1.90 / 2.13 / 5.00 across the five scenarios.

v1.4-AEC — keeps background noise and room by design, so its ERLE and far-end DNSMOS are intentionally lower than the joint models (it isn't deleting the ambience):

Scenarionecho ↑deg ↑ERLE ↑OVRL
doubletalk1154.202.45—2.59
doubletalk-with-movement1854.192.45—2.55
farend-singletalk1073.804.9914.6 dB1.37
farend-singletalk-with-movement1933.864.9511.1 dB1.31
nearend-singletalk2004.993.99—3.08

v1.4-AEC 2.7K (front-end only) — matches or beats the full model's perceptual far-end echo at 1/74 the parameters; the mask's extra work shows up as higher ERLE above, not higher echo MOS:

Scenarionecho ↑deg ↑ERLE ↑OVRL
doubletalk1154.002.79—2.46
doubletalk-with-movement1853.902.92—2.42
farend-singletalk1074.065.006.5 dB1.24
farend-singletalk-with-movement1934.054.973.9 dB1.22
nearend-singletalk2004.983.77—3.03

v1.3 (joint) and v1.2 (joint) — these also delete the background, so their far-end ERLE is much higher and not comparable to v1.4-AEC's:

Scenarionv1.3 echo / deg / ERLE / OVRLv1.2 echo / deg / ERLE / OVRL
doubletalk1154.73 / 2.62 / 8.5 dB / 2.894.72 / 2.37 / 8.4 dB / 2.83
doubletalk-with-movement1854.67 / 2.43 / 8.3 dB / 2.854.65 / 2.30 / 8.1 dB / 2.79
farend-singletalk1073.69 / 4.83 / 50.9 dB / 1.943.78 / 4.91 / 45.7 dB / 1.80
farend-singletalk-with-movement1933.88 / 4.98 / 49.9 dB / 1.964.12 / 4.96 / 40.6 dB / 1.75
nearend-singletalk2005.00 / 4.18 / 2.4 dB / 3.175.00 / 4.16 / 2.1 dB / 3.17

Latency

Per-hop p50 / RT factor on a Ryzen 9 7900 (Zen4). 16 kHz, 256-sample hop.

Model1 thread4 threadsdGPU (RTX 5070 Ti, Vulkan)
v1.4-AEC (203 K)1.29 ms · 12.2×0.83 ms · 18.6×run on CPU¹
v1.4-AEC 2.7K0.36 ms · 44× (single-threaded)—run on CPU¹
v1.3 (4.8 M)9.73 ms · 1.58×3.21 ms · 4.97×2.57 ms · 6.07×
v1.2 (1.3 M)4.28 ms · 3.72×1.65 ms · 8.90×1.96 ms · 7.85×

¹ v1.4-AEC's adaptive front-end always runs on CPU and the neural stage is too small for GPU offload to pay off. Four threads is the sweet spot on Zen4 for all models; the library defaults to min(4, available CPUs).

Memory (CPU)

Working set the model adds on top of the ~7 MiB binary baseline:

ModelPost-load deltaPeak RSS
v1.3 (4.8 M)+24.4 MiB34.1 MiB
v1.2 (1.3 M)+10.0 MiB19.6 MiB
v1.4-AEC (203 K)+6.7 MiB17.0 MiB

Running inference

Download a GGUF (web UI, huggingface-cli, or hf_hub_download) and run the GGML CLI — same command for every model, just swap the file:

./localvqe localvqe-v1.3-4.8M-f32.gguf --in-wav mic.wav ref.wav --out-wav out.wav

16 kHz mono PCM for both the mic and the far-end reference. Building the engine, the C API (liblocalvqe.so), and the OBS Studio plugin are documented in the GitHub repository.

PyTorch reference

localvqe-v1.3-4.8M.pt and localvqe-v1.2-1.3M.pt are the checkpoints used to produce the GGUF exports — for verification, ablation, and research, not end-user inference (use the GGML build). The model definition lives under pytorch/ in the GitHub repo.

Citing

Cite the repository via CITATION.cff at https://github.com/localai-org/LocalVQE (GitHub's "Cite this repository" button produces APA / BibTeX), and the upstream DeepVQE paper:

@inproceedings{indenbom2023deepvqe,
  title     = {DeepVQE: Real Time Deep Voice Quality Enhancement for Joint
               Acoustic Echo Cancellation, Noise Suppression and Dereverberation},
  author    = {Indenbom, Evgenii and Beltr{\'a}n, Nicolae-C{\u{a}}t{\u{a}}lin
               and Chernov, Mykola and Aichner, Robert},
  booktitle = {Interspeech}, year = {2023},
  doi       = {10.21437/Interspeech.2023-2176}
}

The compact GTCRN-AEC line is based on GTCRN — please also cite:

@inproceedings{rong2024gtcrn,
  title     = {GTCRN: A Speech Enhancement Model Requiring Ultralow
               Computational Resources},
  author    = {Rong, Xiaobin and Sun, Tianchi and Zhang, Xu and Hu, Yuxiang
               and Zhu, Changbao and Lu, Jing},
  booktitle = {ICASSP 2024 - 2024 IEEE International Conference on Acoustics,
               Speech and Signal Processing (ICASSP)},
  pages     = {971--975}, year = {2024},
  doi       = {10.1109/ICASSP48485.2024.10448310}
}

Dataset attribution

Weights are trained on the ICASSP 2023 DNS Challenge (Microsoft, CC BY 4.0) and fine-tuned on the ICASSP 2022/2023 AEC Challenge.

Safety

Training data was filtered by DNSMOS, which can misclassify distressed speech (screaming, crying) as noise. LocalVQE may attenuate such signals and must not be relied upon for emergency or safety-critical applications.

License

Apache License 2.0.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · pytorch

Нельзя запустить

Обработка «аудио → аудио» пока не поддерживается.

Ревизия весов
29ca384

0 моделей