Читать книгу Генерация голоса с помощью ComfyUI - - Страница 5
Глава 4. Работа с предобученными моделями
Оглавление4.1. Загрузка и интеграция моделей из Hugging Face
Шаг 1. Подготовка окружения
1. Убедитесь, что установлен ComfyUI Manager (через меню Manager → Install Custom Nodes).
2. Установите необходимые зависимости:
`transformers` (для загрузки моделей);
`torch` (PyTorch для инференса);
`soundfile` (для работы с аудио).
```bash
pip install transformers torch soundfile
```
Шаг 2. Поиск модели на Hugging Face
1. Перейдите на [huggingface.co/models](https://huggingface.co/models).
2. Используйте фильтры:
Task: Text-to-Speech, Voice Cloning;
Language: выберите нужный язык (например, Russian, English);
Library: PyTorch.
3. Примеры популярных моделей:
`facebook/fairseq-wav2vec2-large-960h` (английский);
`silero/models` (многоязычные TTS);
`espnet/kan-bayashi_ljspeech_tts_train_tacotron2_raw_phn_tacotron_g2p_en` (английский).
Шаг 3. Загрузка модели
1. В ComfyUI откройте ноду Download Model (из ComfyUI Manager).
2. Укажите:
Model ID: полный путь (например, `silero/models/en_tts`).
Save Path: папка `ComfyUI/models/tts/`.
3. Нажмите Download. Модель сохранится в формате `.pt` или `.ckpt`.
Шаг 4. Подключение модели в ComfyUI
1. Добавьте ноду TTS Model Loader (или аналогичную для вашей модели).
2. В параметре Model Path укажите путь к загруженному файлу.
3. Проверьте совместимость:
модель должна поддерживать вход `text` и выход `mel_spectrogram`;
убедитесь, что версия PyTorch соответствует требованиям модели.
Шаг 5. Тестовый запуск
1. Соедините ноды:
```
Text Input → TTS Model Loader → Vocoder → Audio Output
```
2. Введите короткий текст (например, «Привет!»).
3. Запустите процесс через Queue Prompt.
Ошибки и решения:
«Модель не найдена»: проверьте путь и формат файла.
«Ошибка CUDA»: убедитесь, что GPU доступен и установлен CUDA‑драйвер.
«Неподдерживаемый формат»: конвертируйте модель через `torch.jit.save()`.
4.2. Примеры рабочих процессов для разных языков
1. Английский язык (модель Tacotron2 WaveGlow)
Ноды:
`Text Input`: «Hello, this is a test.»
`TTS: Tacotron2` (модель `tacotron2-lj-v2`).
`Vocoder: WaveGlow` (модель `waveglow-lj-v2`).
`Audio Output` (формат WAV, 22050 Гц).
Настройки:
скорость: `1.0`;
тон: `1.0`.
2. Русский язык (модель VITS HiFi‑GAN)
Ноды:
`Text Input`: «Здравствуйте, это пример синтеза речи.»
`TTS: VITS` (модель `vits-russian`).
`Vocoder: HiFi-GAN` (модель `hifigan-vits-ru`).
`Audio Effect` (эквализация: усиление 1–4 кГц).
`Audio Output` (WAV, 48000 Гц).
Настройки:
язык: `ru`;
стиль: `neutral`.
3. Многоязычный синтез (модель ESPNet)
Ноды:
`Text Input`: текст на нужном языке.
`TTS: ESPNet` (модель `espnet/multi_tts`).
`Vocoder: MelGAN`.
Параметры:
`language_id`: `en`, `ru`, `es` и др.;
`speaker_id`: выбор диктора (если поддерживается).
4. Клонирование голоса (YourTTS)
Ноды:
`Audio Input`: референсное аудио диктора (WAV, 16 бит).
`Text Input`: новый текст для синтеза.