refactor: replace Qwen 1.7B with Qwen3-TTS 0.6B as default Qwen TTS engine

This commit is contained in:
Adolfo Reyna
2026-08-13 22:55:37 -04:00
parent bcd6cfb500
commit d8c44cf92d
3 changed files with 8 additions and 5 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
"""qwen_tts_service.py
Qwen3-TTS Service for Pipecat using MLX on Apple Silicon.
Provides local speech synthesis using Alibaba Qwen3-TTS 1.7B
Provides local speech synthesis using Alibaba Qwen3-TTS 0.6B
with zero-shot voice cloning capabilities via mlx-audio.
"""
+3 -3
View File
@@ -1,7 +1,7 @@
"""test_qwen_tts_service.py
Unit test for QwenTTSService.
Verifies loading MLX Qwen3-TTS 1.7B model and generating audio frames.
Verifies loading MLX Qwen3-TTS 0.6B model and generating audio frames.
"""
import asyncio
@@ -10,11 +10,11 @@ from pipecat.frames.frames import TTSAudioRawFrame
async def main():
print("Testing QwenTTSService with MLX Qwen3-TTS 1.7B...")
print("Testing QwenTTSService with MLX Qwen3-TTS 0.6B...")
service = QwenTTSService(voice="qwen_jv")
frames = []
async for frame in service.run_tts("Hello! This is a test of Qwen 1.7B TTS service.", context_id="test_ctx"):
async for frame in service.run_tts("Hello! This is a test of Qwen 0.6B TTS service.", context_id="test_ctx"):
frames.append(frame)
assert len(frames) > 0, "No frames generated by QwenTTSService"
+4 -1
View File
@@ -31,7 +31,7 @@ KOKORO_VOICES = {
"bm_stuart": "British Male - Stuart Bell",
"custom_pocket": "Pocket Voice Clone (Default)",
"jv_pocket": "JV Voice Profile (Kyutai Pocket TTS)",
"qwen_jv": "JV Voice Profile (MLX Qwen 1.7B TTS)",
"qwen_jv": "JV Voice Profile (MLX Qwen 0.6B TTS)",
}
MACOS_VOICES = {
@@ -74,6 +74,9 @@ VOICE_ALIASES = {
"jv voice": "jv_pocket",
"qwen": "qwen_jv",
"qwen_jv": "qwen_jv",
"qwen 0.6b": "qwen_jv",
"qwen_0.6b": "qwen_jv",
"qwen0.6b": "qwen_jv",
"qwen 1.7b": "qwen_jv",
"qwen3": "qwen_jv",
}