Traducere automată · Originalul în engleză
Pocket TTS 100M
Nativ Apple runtime · PocketTTS
PocketTTS adaugă sinteze native CoreML sinteze de vorbire la speech-swift. Toate etapele sunt implicite pentru executarea exclusivă a procesorului. Fluxurile de prefixe engleze Alba sunt 1,920-frame de probe la 24 kHz (80 ms per cadru).
Livrarea așteptată se aplică backpresh. Fiecare cerere deține starea sa recurentă și semințe. Anulare, apelurile de întoarcere și limitele de generare raportează erori; finalizarea reușită emite o bucată finală goală. Clonarea vocală și alte limbi sunt nesusținute de acest pachet.
Descarca pachetul publicat aufklarer / Pocket-TTS-100M-CoreML-INT8 la prima utilizare, sau încărcați un export local. Atribuirea de reținere la Kyutai, FluidInference, și Alba MacKenna sub CC BY 4.0.
Swift și utilizarea CLI
speech speak "Hello world." --engine pocket --stream \
--pocket-bundle-dir /path/to/bundle --pocket-seed 42 -o hello.wavimport PocketTTS
let model = try PocketTTSModel.fromBundle(URL(fileURLWithPath: "/path/to/bundle"))
try await model.generateStreaming(text: "Hello world.") { chunk in
await consume(chunk.samples)
}HTTP și WebSocket
Utilizați buzunare cu alba voce. Streaming HTTP necesită PCM; WebSocket emite delta audio. Modelele implicite existente sunt neschimbate.
curl http://localhost:8080/v1/audio/speech \
-H 'Content-Type: application/json' \
-d '{"model":"pocket-tts","voice":"alba","input":"Hello world.","response_format":"pcm","stream":true}' \
-o hello.pcmApple CPU referință
Apple M5 Pro · 48 GiB · cpuOlym · first_audio_ms 78,9 · RTF 0,337 · peak_rss 866,8 MiB · n=5 · semințe = 42 · 2026-10-17
Pocket TTS 100M este grupul de frecvenţe scăzute, pe dispozitiv Englez text-to-speech backend în speech-core. Publicul ONNX utilizează vocea fixă şi fluxurile audio de îndată ce fiecare cadru acustic este gata.
Inference este cu adevărat interpus: o latentă autoregresivă este decodată și emisă înainte de generarea următoarei latente. Fiecare apel non-final poartă 1,920 Float32 eșantioane 80 ms la 24 (a se vedea punctul 3.1 din prezenta anexă) TTS exporturi.
Pachet publicat
| Postul | Detalii |
|---|---|
| Model | soniqo/Pocket-TTS-100M-ONNX-INT8 |
| Eliberare | v1.0.0 · ad5d3fae3fb2f10024583708597afca8337c094c |
| Dimensiunea cocoanei | 120.3 MiO |
| Timp de execuție | ONNX Runtime · C++17 · dinamic INT8 + FP32 |
| Ieșire | 24 kHz mono Float32 PCM · 1,920 eșantioane / 80 ms per cadru |
| Limba / vocea | Engleză · voce Alba fixă |
Descărcare și verificare
The speech-core descarcher pins v1.0.0 și verifică fiecare fișier publicat cu SHA-256.
bash scripts/download_pocket_tts_onnx.sh /models/pocket-tts-onnx
C++ API
#include <speech_core/models/onnx_pocket_tts.h>
speech_core::PocketTtsConfig config;
config.intra_threads = 2;
config.flow_steps = 4;
speech_core::OnnxPocketTts tts("/models/pocket-tts-onnx", config);
tts.synthesize("Hello world.", "en",
[](const float* samples, size_t length, bool is_final) {
// Each non-final callback is 1,920 Float32 samples:
// 80 ms at 24 kHz.
});
Contract de streaming
Callback primește un cadru de 80 ms la un moment dat; ultimele marcaje de apel înapoi sfârșitul fluxului. last_metrics() rapoarte de condiționare, prima audiție și latență totală, cadru și număr de eșantioane, starea EOS, anularea, și semințele eficiente. cancel() oprește o sinteză activă.
Galaxy S23
O reluare curată a publicului v1.0.0 pachet utilizat ONNX Runtime 1.27, două fire CPU și o galaxie S23 Ultra. Acestea sunt măsurători directe ale motorului, nu UI sau calendarul complet al țevii vocale.
| Metrică | Rezultatul |
|---|---|
| TTFA p50 / p95 | 127.7 / 133.7 ms |
| Latență totală p50 / p95 | 467.5 / 485.3 ms |
| Mediana RTF | 0.4495 |
| Vârful RSS | 373.7 MiO |
Inteligibilitate de călătorie rotundă
Poarta dispozitivului sintetizat 46 de comenzi și fraze de asistent, reinclus audio prin calea de producție 24--16 kHz, și transcris-o cu recunoștitorul de Parakeet-EOU implementat.
| Metrică | Rezultatul |
|---|---|
| Corpus | 46 de fraze |
| transcripte exacte | 31 / 46 |
| WER / CER | 8.00% / 3.47% |
| Eșecuri audio / transcriere goală / EOS | 0 / 0 / 0 |
Round-trip ASR masoara inteligibilitatea, nu naturalitatea sau preferinta ascultatorului; acesta completează testele de ascultare.
Starea integrării
C++17 ONNX backend este fuzionat în speech-core şi construieşte pentru Windows, Linux, și AndroidCurentul. speech-android SDKTraseul JNI încă selectează Kokoro în mod implicit; alegerea modelului Kotlin, descărcarea cablurilor și SDK expunerea este o activitate de urmărire. ONNX eliberare; nativ Swift CoreML Runtime este documentat mai sus.
Limite și licențe
- Numai limba engleză; punctul de control public coace în vocea Alba fixă și nu suportă clonarea arbitrară a vocii.
- Modelul și vocea sunt CC BY 4.0. Păstrați Alba MacKenna atribuirea incluse în manifest pachet.
- Graficele recurente sunt orientate către procesor. Accelerația hardware este opt-in deoarece Android suport pentru furnizarea de execuție variază în funcție de dispozitiv și ONNX Runtime build.
- Sursa speech-core este Apache 2.0; pachetul model își păstrează propriul CC BY 4.0 termeni.