Maskinöversättning · Engelskt original

Speech Core

Open-source C++17 talmotor för röstagenter – röstaktivitetsdetektering, batch och realtid streaming tal-till-text, högtalardiagnos och text-till-tal, alla kör på-enhet på Linux, Windows, och Android. Apache 2.0.

Vad det är

Speech Core är en liten orkestreringskärna - statlig maskin, vrid detektering, avbrottshantering, ljudverktyg, med noll ML-beroende - plus en uppsättning abstrakta gränssnitt för talmodeller. Inference körs lokalt på CPU; ljud lämnar aldrig maskinen, och det finns ingen Python vid inferenstid. Modell inferens är opt-in genom två utbytbara backends du kan aktivera självständigt, eller du kan ta med egna implementeringar av gränssnitten.

Plattformar & backends

BackendPlattformarHårdvaruacceleration
ONNX Runtime (SPEECH_CORE_WITH_ONNX)Linux, macOS, Windows, AndroidNNAPI på Android, QNN på Qualcomm Linux, valfritt NVIDIA CUDA/TensorRT (-DSPEECH_CORE_WITH_CUDA=ON)
LiteRT (SPEECH_CORE_WITH_LITERT)Linux x86_64, Windows x86_64, Android, macOS arm64CPU idag

Aktivera antingen backend, både eller varken - orkestreringskärnan bygger utan ML-löptid alls.

Stödda modeller

ModellUppgifterONNXLiteRT
Silero VAD v5Röstaktivitetsdetektering✓✓
Smart Turn v3.2End-of-turn detektion (23 språk)✓—
Parakeet TDT v3 (0,6B)Tal-till-text (114 språk)✓✓
Nemotron Speech Streaming (0,6B)Streaming talk-to-text (engelska)✓✓
Nemotron-3.5 ASR Streaming Multilingual (0.6B)Streaming talk-to-text (multilingual, prompt-conditioned)✓✓
Whisper Small v3Tal-till-text (multilingual Whisper v3)✓—
Whisper Medium v3Tal-till-text (multilingual Whisper v3)✓—
Whisper Large v3Tal-till-text (multilingual Whisper v3)✓—
Whisper Large-v3 TurboTal-till-text (multilingual Whisper v3)✓—
Omnilingual ASR CTC (300M)Tal-till-text (flerspråkig)—✓
FunctionGemma 270MOn-device LLM - strukturerad funktion / verktygssamtal (LiteRT-LM; CoreML på Apple)—✓
Pyannote Segmentering 3.0Diarization (segmentering)—✓
WeSpeaker ResNet34-LMHögtalare inbäddning—✓
VoxCPM2 (2B)Text-till-tal (48 kHz, röst kloning)—✓
Kokoro 82MText-till-tal✓—
Pocket TTS 100MStreaming text-till-tal (engelska, fast Alba röst)✓—
DeepFilterNet3Tal förbättring✓—
PersonaPlex 7BFull-duplex tal-till-tal (CUDA)✓—

Snabbstart

Bygg kärnan plus LiteRT backend (löptidsbiblioteket extraheras från ai-edge-litert-hjulet - ingen TensorFlow-byggnad):

git clone https://github.com/soniqo/speech-core && cd speech-core
scripts/fetch_litert.sh build/litert
cmake -B build -DCMAKE_BUILD_TYPE=Release \
    -DSPEECH_CORE_WITH_LITERT=ON -DLITERT_DIR=$PWD/build/litert
cmake --build build

Länka sedan de mål du behöver:

target_link_libraries(my_app PRIVATE speech_core)                            # orchestration only
target_link_libraries(my_app PRIVATE speech_core speech_core_models)         # + ONNX models
target_link_libraries(my_app PRIVATE speech_core speech_core_models_litert)  # + LiteRT models

Transkribera en ljudbuffert är några rader:

#include <speech_core/models/litert_parakeet_stt.h>

speech_core::LiteRTParakeetStt stt(
    "parakeet-encoder.tflite", "parakeet-decoder-joint.tflite", "vocab.json");

auto r = stt.transcribe(audio, n_samples, 16000);   // r.text / r.language / r.confidence
Embedded & automotive Linux

En referens Linux bygger libspeech.so med en liten C ABI, en ALSA demo CLI, och transkribera / synthesize / telefonmize verktyg - bor på exempel/linux. Det riktar sig inbäddade ARM64 (Yocto, Qualcomm SA8295P / SA8255P) och alla Linux dev box. Inställningssteg är i Linux blir startad guide.

Bygger för Android eller Apple?

På Android, använd speech-android - en Kotlin SDK som paketerar Speech Core bakom en JNI-bro (JNI)implementation("audio.soniqo:speech:0.0.9")På macOS och iOS, använd speech-swift, som kör modellerna på CoreML, MLX och Apple Neural Engine.

Dokumentation

Feedback

Öppna ett problem på github.com/soniqo/speech-core/issues, eller gå med i Discord.