FireRedTTS3-Instruct
Les bundles MLX sont publics. Le SDK exige la branche de revue ci-dessous (PR #541 en brouillon).
Création de voix en MLX natif à partir du texte exact et d’une instruction vocale. PCM mono à 24 kHz, sans enregistrement de référence.
FireRedTTS3-Instruct conserve les poids Float32 du modèle et du décodeur. Il renvoie l’audio complet en mémoire : omettez --stream. --language accepte les alias anglais et chinois. Une limite de génération produit une erreur plutôt qu’un succès tronqué.
Branche de revue du SDK
Branche de revue du SDK (PR #541): feat/instructtts-candidates-20261029
git clone --single-branch --branch feat/instructtts-candidates-20261029 https://github.com/soniqo/speech-swift.git
cd speech-swift
make buildBundles MLX publiés: aufklarer/FireRedTTS3-Instruct-MLX-fp32
Ligne de commande
.build/release/speech speak "The weather is beautiful today." \
--engine fireredtts3 \
--fireredtts3-model-id aufklarer/FireRedTTS3-Instruct-MLX-fp32 \
--instruct "A calm adult female voice, speaking warmly and clearly." \
--seed 2 --output firered.wavFournissez un texte, --instruct et exactement un répertoire de paquet ou un identifiant compatible. Audio de référence, voix fixes et entrées par lots ne sont pas pris en charge.
API Swift
import FireRedTTS3TTS
let model = try await FireRedTTS3Model.fromPretrained(
modelId: "aufklarer/FireRedTTS3-Instruct-MLX-fp32")
let output = try await model.generateWithPlan(
text: "The weather is beautiful today.",
instruction: "A calm adult female voice, speaking warmly.")
let pcm = output.samples
model.unload()Mesures sur textes courts
M5 Pro, 48 GiB, Release. Un court texte neutre par langue ; médianes de trois requêtes à chaud après la première. Chargement et vérification des poids exclus ; caches de fichiers chauds. RTF = temps écoulé / durée audio : plus bas signifie plus rapide. La mémoire physique est le maximum du processus pendant le chargement et les quatre requêtes, en Go décimaux.
| Texte | Audio (s) | PCM complet à chaud (s) | RTF | Pic de mémoire physique (GB) |
|---|---|---|---|---|
| Anglais | 2.72 | 4.499 | 1.654 | 10.819 |
| Mandarin | 5.28 | 11.221 | 2.125 | 11.700 |
Périmètre de validation
Le suivi des instructions n’a pas encore été noté. Les mesures sur textes courts décrivent la configuration testée ; la certification de régression de latence reste non concluante.