Я давно хотел показать пример нейросети, которая работает с голосом локально, без API, без облаков и без подписок.
Сегодня начнём простой кейс:
нейро-говорилка на основе XTTS, которую потом можно легко адаптировать под ChatterBox.
Что умеет этот проект:
✅ берёт обычный текст
✅ использует пример голоса (wav/mp3)
✅ генерирует реалистичную речь
✅ работает полностью локально (если модель скачана)
Структура проекта будет максимально простой:
project/
├─ config.py
├─ voice.py
├─ text.txt
└─ voice_example.mp3
Начнём с конфига — это мозг всей настройки.
Вот базовый config.py:
CONFIG = {
"model": "tts_models/multilingual/multi-dataset/xtts_v2",
"language": "ru",
"speaker_wav": "voice_example.mp3",
"output_file": "result.wav",
"temperature": 0.5,
"length_penalty": 1.0,
"repetition_penalty": 5.0,
"top_k": 50,
"top_p": 0.85,
"speed": 1.0,
"enable_text_splitting": True,
}
Что важно понять сразу: 🤔
❗️ модель не скачивается кодом, она подтягивается локально через TTS
❗️ при первом запуске XTTS может долго грузиться
❗️ нужен пример голоса (любой короткий wav/mp3 на 1-2 минуты)
В следующем посте — напишем сам скрипт генерации голоса 👨💻
Будет уже слышимый результат.
