Parakeet TDT — Android

Parakeet TDT v3 работает на Android и встраиваемом Linux через ONNX Runtime. Модель разделена на файлы энкодера и decoder-joint, оба квантизованы в INT8, и использует жадный TDT-декодер с поддержкой 114 языков и BPE-словаря на 8192 токена.

Файлы модели

ФайлРазмер
parakeet-encoder-int8.onnx840 МБ
parakeet-decoder-joint-int8.onnx51 МБ
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