# Клонирование голоса Qwen3-TTS

Qwen3-TTS от Alibaba — современная модель синтеза речи, поддерживающая **более 10 языков** с клонированием голоса по всего 3 секундам аудио. Она поддерживает управление эмоциями на естественном языке ("говорить радостно", "шептать тихо"), стриминг с задержкой 97 мс и имеется в двух размерах модели (0,6B и 1,7B). Выпущена под лицензией Apache 2.0 и является одной из самых мощных открытых TTS-систем.

## Ключевые особенности

* **более 10 языков**: английский, китайский, японский, корейский, французский, немецкий, испанский и другие
* **Клонирование голоса за 3 секунды**: Клонируйте любой голос по короткому аудиосэмплу
* **Естественное управление эмоциями**: Управляйте стилем с помощью простых текстовых инструкций
* **Поддержка потоковой передачи**: 97 мс до первого токена — отлично подходит для приложений в реальном времени
* **Два размера**: 0,6B (4 ГБ VRAM) и 1,7B (8 ГБ VRAM)
* **Возможность дообучения**: Базовые модели доступны для кастомного обучения
* **Лицензия Apache 2.0**: Полное коммерческое использование

## Варианты моделей

| Модель                  | Параметры | VRAM | Качество | Скорость | Лучше всего для               |
| ----------------------- | --------- | ---- | -------- | -------- | ----------------------------- |
| Qwen3-TTS-0.6B-Instruct | 0,6B      | 4 ГБ | Хорошо   | Быстро   | Реальное время, бюджетные GPU |
| Qwen3-TTS-1.7B-Instruct | 1,7B      | 8GB  | Лучшее   | Средне   | Качество для продакшена       |
| Qwen3-TTS-0.6B-Base     | 0,6B      | 4 ГБ | —        | —        | Донастройка                   |
| Qwen3-TTS-1.7B-Base     | 1,7B      | 8GB  | —        | —        | Донастройка                   |

## Требования

| Компонент | 0,6B         | 1,7B          |
| --------- | ------------ | ------------- |
| GPU       | RTX 3060 6GB | RTX 3080 10GB |
| VRAM      | 4 ГБ         | 8GB           |
| ОЗУ       | 8GB          | 16GB          |
| Диск      | 5 ГБ         | 10GB          |
| Python    | 3.10+        | 3.10+         |

**Рекомендуемый GPU на Clore.ai**: RTX 3060 ($0.15–0.3/день) для 0.6B, RTX 3080 ($0.2–0.5/день) для 1.7B

## Установка

```bash
pip install transformers torch torchaudio soundfile
```

## Быстрый старт — клонирование голоса

```python
import torch
import torchaudio
from transformers import AutoModelForCausalLM, AutoProcessor

model_name = "Qwen/Qwen3-TTS-12Hz-1.7B-Instruct"
processor = AutoProcessor.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float16,
    device_map="auto"
)

# Загрузите эталонный голос (3+ секунды любого голоса)
reference_audio, sr = torchaudio.load("reference_voice.wav")

# Сгенерируйте речь, клонирующую этот голос
text = "Welcome to Clore.ai, the decentralized GPU rental marketplace."
inputs = processor(
    text=text,
    audio=reference_audio,
    sampling_rate=sr,
    return_tensors="pt"
).to("cuda")

with torch.no_grad():
    output = model.generate(**inputs, max_new_tokens=2048)

# Декодируйте и сохраните
audio = processor.decode(output[0])
torchaudio.save("output.wav", audio.unsqueeze(0), 24000)
```

## Управление эмоциями

```python
# Управляйте эмоцией с помощью инструкций на естественном языке
prompts = [
    ("Говорить радостно и энергично", "Отличные новости! Мы только что запустили новую функцию!"),
    ("Шептать мягко и нежно", "Позволь мне рассказать тебе секрет о ценообразовании GPU..."),
    ("Говорить профессионально и чётко", "Квартальные результаты показывают рост выручки на 40%."),
    ("Говорить с восторгом", "Ты не поверишь результатам бенчмарка!"),
]

для style, text в prompts:
    inputs = processor(
        text=text,
        style_prompt=style,
        audio=reference_audio,
        sampling_rate=sr,
        return_tensors="pt"
    ).to("cuda")
    
    output = model.generate(**inputs, max_new_tokens=2048)
    audio = processor.decode(output[0])
    torchaudio.save(f"output_{style[:10]}.wav", audio.unsqueeze(0), 24000)
```

## Многоязычная генерация

```python
# Генерировать на разных языках (тот же голос!)
texts = {
    "en": "Hello, welcome to the GPU marketplace.",
    "zh": "你好，欢迎来到GPU市场。",
    "ja": "こんにちは、GPUマーケットプレイスへようこそ。",
    "ko": "안녕하세요, GPU 마켓플레이스에 오신 것을 환영합니다。",
    "fr": "Bonjour, bienvenue sur le marché GPU.",
    "de": "Hallo, willkommen auf dem GPU-Marktplatz.",
}

for lang, text in texts.items():
    inputs = processor(
        text=text, audio=reference_audio, sampling_rate=sr,
        language=lang, return_tensors="pt"
    ).to("cuda")
    output = model.generate(**inputs, max_new_tokens=2048)
    audio = processor.decode(output[0])
    torchaudio.save(f"output_{lang}.wav", audio.unsqueeze(0), 24000)
```

## Сравнение с другими TTS-моделями

| Функция                        | Qwen3-TTS     | Zonos      | Dia        | Kokoro     | XTTS  |
| ------------------------------ | ------------- | ---------- | ---------- | ---------- | ----- |
| Языки                          | 10+           | 1 (EN)     | 1 (EN)     | 1 (EN)     | 17    |
| Клон голоса                    | 3 сек         | 2-30 сек   | Нет        | Нет        | 6 сек |
| Потоковая передача (Streaming) | ✅ (97мс)      | ❌          | ❌          | ❌          | ✅     |
| Управление эмоциями            | ✅ Естественно | ❌          | ✅ Авто     | ❌          | ❌     |
| Много-говорящий                | ❌             | ❌          | ✅          | ❌          | ❌     |
| Мин. VRAM                      | 4 ГБ          | 8GB        | 8GB        | 2GB        | 6 ГБ  |
| Лицензия                       | Apache 2.0    | Apache 2.0 | Apache 2.0 | Apache 2.0 | AGPL  |

## Советы для пользователей Clore.ai

* **0.6B на RTX 3060**: Лучший бюджетный вариант за $0.15/день — достаточно хорош для большинства задач TTS
* **Пакетная обработка**: Генерируйте все аудиоклипы в одной сессии, чтобы максимально эффективно использовать время аренды
* **Кешировать эталонное аудио**: Храните ссылки на голоса на постоянном носителе
* **Стриминг для реального времени**: Используйте API стриминга для приложений чат-ботов/ассистентов
* **Донастройка для кастомных голосов**: Арендуйте RTX 4090 на несколько часов, чтобы дообучить базовую модель на ваших голосовых данных

## Устранение неполадок

| Проблема                       | Решение                                                                  |
| ------------------------------ | ------------------------------------------------------------------------ |
| Недостаточно памяти на 1.7B    | Переключитесь на 0.6B или используйте `torch_dtype=torch.float16`        |
| Клон голоса звучит неправильно | Используйте 5–10 секунд чистого аудио (без фонового шума)                |
| Вывод на неправильном языке    | Явно передайте `параметр` language                                       |
| Медленная первая генерация     | Норма — модель загружается при первом вызове. Последующие вызовы быстрые |

## Дополнительное чтение

* [Модели HuggingFace](https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-Instruct)
* [Документация Qwen3-TTS](https://qwen.readthedocs.io/)
* [Руководство по клонированию голоса](https://medium.com/@zh.milo/qwen3-tts-the-complete-2026-guide)
