Whiscribe Diarization
ONNX-модели диаризации речи для Android
Две ONNX-модели от s1lvrn0 для Android-приложения Whiscribe, которое транскрибирует аудио на телефоне. Они определяют, кто и когда говорит: сегментация ищет речи в 10-секундных окнах до тр��х спикеров, а эмбеддинг превращает голос в 192 числа для сравнения. Всё работает на CPU provider ONNX Runtime.
👉 Ключевые особенности
- 👉 pyannote segmentation 3.0 ONNX: вход
[batch, 1, 160000]— 10 с при 16 kHz; выход[batch, 589, 7]— 7 powerset-классов: никто, спикеры 1–3 и их пары. - 🐾 ReDimNet2-B3: вход
wav [1, samples]16 kHz mono в диапазоне [-1, 1] любой длины; выходemb [1, 192], голоса сравниваются по cosine similarity. - 💪 Обе модели — ONNX Runtime CPU: размеры 5 992 913 и 18 041 088 байт, без GPU.
- 💅 Пайплайн Whiscribe: сегментация окнами 10 с каждые 2,5 с, эмбеддинг на участках, где говорит только один спикер, average-linkage clustering по cosine distance с порогом 0,6 и слияние мелких кластеров.
- 🤫 Модели не дообучались: pyannote 3.0 — неизменённая ONNX-конверсия из sherpa-onnx, ReDimNet2-B3 обучен только на VoxCeleb2; репозиторий под MIT.
😛 Пример
Экспорт ReDimNet2 в ONNX из карточки:
python export_redimnet2_onnx.py path/to/redimnet2 b3-vox2-lm.pt redimnet2-b3-vox2-lm.onnx
Подробнее
Сегментация: 5 992 913 байт; эмбеддинг: 18 041 088 байт. Обе модели — ONNX Runtime CPU.pyannote 3.0 — неизменённая ONNX-конверсия из sherpa-onnx; ReDimNet2-B3 обучен только на VoxCeleb2 и экспортирован в opset 17 без дообучения.
Замеры в карточке — на AMI и выдуманных диалогах реальных голосов на восьми языках, без публикации метрик.
Ограничение сегментации — до трёх говорящих в окне; эмбеддинг принимает аудио любой длины, приложение использует от 0,5 с.








Комментарии