FireRedTTS3-Instruct
MLX 번들이 공개되었습니다. SDK 지원에는 아래 리뷰 브랜치(초안 PR #541)가 필요합니다.
정확한 대본과 음성 지시로 목소리를 설계하는 네이티브 MLX 구현입니다. 참조 녹음 없이 24 kHz 모노 PCM을 출력합니다.
FireRedTTS3-Instruct는 모델과 디코더의 Float32 가중치를 유지합니다. 완성된 오디오를 한 번에 반환하므로 --stream을 생략하세요. --language는 영어와 중국어 별칭을 허용합니다. 생성 한도에 도달하면 잘린 오디오를 성공으로 반환하지 않고 오류를 냅니다.
SDK 리뷰 브랜치
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 build공개된 MLX 번들: aufklarer/FireRedTTS3-Instruct-MLX-fp32
명령줄
.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.wav텍스트 인수, --instruct, 번들 디렉터리 또는 호환 모델 ID 중 정확히 하나를 지정하세요. 참조 오디오, 고정 화자, 배치 입력은 지원하지 않습니다.
Swift API
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()짧은 대본 실행 측정
M5 Pro, 48 GiB, Release. 언어당 짧은 중립 대본 하나를 사용하고 첫 요청 뒤 세 번의 웜 요청 중앙값을 표시합니다. 로딩과 가중치 검증은 제외하며 파일 시스템 캐시는 예열했습니다. RTF = 처리 시간 / 오디오 길이로 낮을수록 빠릅니다. 물리 메모리는 로딩과 네 요청 전체의 프로세스 최고값이며 십진 GB 단위입니다.
| 대본 | 오디오 (s) | 웜 실행 완전한 PCM (s) | RTF | 최대 물리 메모리 (GB) |
|---|---|---|---|---|
| 영어 | 2.72 | 4.499 | 1.654 | 10.819 |
| 표준 중국어 | 5.28 | 11.221 | 2.125 | 11.700 |
검증 범위
지시 준수 품질은 아직 채점하지 않았습니다. 짧은 대본 측정은 시험한 구성만 설명하며 기존 모델의 지연 회귀 검증은 결론을 내리지 못했습니다.