Parakeet TDT — Android
Parakeet TDT v3 работает на Android и встраиваемом Linux через ONNX Runtime. Модель разделена на файлы энкодера и decoder-joint, оба квантизованы в INT8, и использует жадный TDT-декодер с поддержкой 114 языков и BPE-словаря на 8192 токена.
Файлы модели
| Файл | Размер |
|---|---|
parakeet-encoder-int8.onnx | 840 МБ |
parakeet-decoder-joint-int8.onnx | 51 МБ |
vocab.json | <1 МБ |
HuggingFace: aufklarer/Parakeet-TDT-v3-ONNX
Производительность
| Метрика | Значение |
|---|---|
| Языки | 114 |
| Квантизация | INT8 |
| Декодер | TDT greedy |
| Отношение к реальному времени | RTF 0.12 (~150 мс на 1.5 с аудио) |
| Аппаратное ускорение | NNAPI (Android), QNN Hexagon DSP (Linux) |
Kotlin (Android)
val modelDir = ModelManager.ensureModels(context)
val pipeline = SpeechPipeline(SpeechConfig(modelDir = modelDir))
pipeline.events.collect { event ->
when (event) {
is SpeechEvent.TranscriptionCompleted -> println(event.text)
else -> {}
}
}
pipeline.start()
pipeline.pushAudio(samples) // 16kHz mono float32
C API (Linux)
speech_config_t cfg = speech_config_default();
cfg.model_dir = "/opt/models";
speech_pipeline_t p = speech_create(cfg, on_event, NULL);
speech_start(p);
speech_push_audio(p, samples, 512);
Исходный код: github.com/soniqo/speech-android