0_Installation

0. Преподготовка

0.1. ffmpeg

Убедись, что установлен ffmpeg

Для Linux Ubuntu так:

sudo apt-get install libportaudio2 python3-pyaudio portaudio19-dev python3-dev build-essential ffmpeg

Для MacOs:

brew install ffmpeg

Для Windows:

Запустите терминал powershell от администратора и введите команду

winget install ffmpeg

Важная поправка для Windows: НЕ ЗАПУСКАЙТЕ Python-часть на WSL, РАБОТАЙТЕ из-под винды напрямую! Я не тестировал под WSL, там будут танцы с бубном из-за звуковых устройств и портов.

0.2. Docker

Docker вам понадобится, чтобы запустить:

  • Систему фильтрации
  • Крутую версию TTS (Fish TTS)

Для работы контейнеров очень желательно чтобы ваш ПК / ноут имел:

  • более 8G RAM
  • не менее 4G VRAM

Собственно, если нет Docker'а, и вам это нужно, установите его! Для удобства можете поставить Docker Desktop.

Можно пропустить его установку, если вам не нужен крутой TTS и/или система система фильтрации (есть упрощённая версия TTS).

1. Установи UV менеджер на систему

UV - быстрый питонячий менеджер, и в нём сильно ускорен pip install + он проще управляет версиями питона и venv'ами.

https://docs.astral.sh/uv/getting-started/installation/

Устанавливается через консоль PowerShell даже под винду.

Ставь через UV питон 3.10.9:

uv python install 3.10.9

Открой репозиторий в IDE, поддерживающей Python, например, в VS Code.

Если вы работаете через git (есть доступ к этому репозиторию, то клонируйте его в папку через git clone). Если скачали откуда-то (гугл диск или что-то ещё), то распакуйте архив в папку и откройте эту папку в VS Code.

Зайди в репозиторий из терминала

cd папка_репозитория

После этого открой терминал, поставь venv

uv venv --python 3.10.9

(опционально) Для удобства работы в VS Code, выбери в VS Code Python-файл какой-нибудь, и выбери в интерпретаторах python исполняемый файл из папки venv

Старый базовый способ без UV Ставьте сами питон нужной версии и создайте окружение через VS Code, либо базовой командой по типу
python -m venv .venv
# активируйте этот venv, потом
pip install uv

2. ОПЦИОНАЛЬНО: ДЛЯ КРУТОЙ FISH TTS и STT

Убедись, что есть CUDA и CuDNN

Для TTS и STT точно понадобится:

CUDNN для WINDOWS + Path (обязательно!) Нужно добавить CUDNN в Path (переменные среды и путь) Windows, как правило установщики Nvidia этого не делают как нужно!! Если этого не сделать, будут проблемы с запуском STT модели на CUDA. как добавить база есть тут в PATH нужно добавить путь к bin от cudnn: `C:\Program Files\NVIDIA\CUDNN\v9.15\bin\12.9`

После установки всех "куд" перезагрузись


3. Поставь зависимости

В терминале IDE, в папке репозитория! Чтобы не париться, сразу ставь все группы зависимости.

uv sync --all-groups
Старый способ ```bash uv pip install -r pyproject.toml ```

4. Установка Text To Speech (TTS)

TTS можно ставить 2 способами - ПРОСТОЙ (зависимость, Vosk) и КРУТОЙ (FishTTS, Docker)

Если ставите сложным способом, 4.1 можно пропустить.

4.1 Простой способ для TTS

uv pip install --group simpletts

5. Ставим STT

Если нет CUDA может ругаться, но работать на CPU. Если есть CUDA, обязательно исполняем команду:

uv pip install --group gpu

Ставим STT:

uv pip install --group stt

Не забудьте при настройке .env указать STT_COMPUTE_DEVICE=CUDA если идёте по CUDA-треку, т.к. изначально там CPU. P.S. настройка .env будет ДАЛЕЕ на этапе CONFIGURE.

Перед этим для pydub понадобится ffmpeg:

  • Под Windows легче ставить через PowerShell winget install ffmpeg
  • под Linux Ubuntu это sudo apt-get install ffmpeg
  • под MacOs brew install ffmpeg.

При запуске финального скрипта ещё будет качаться STT модель, может понадобится впн.

6. Установка ВСЕГО

Мы всё установили, кроме Docker-воркеров. ПРОПУСТИТЕ следующий шаг с докер воркерами, если у вас не CUDA-трек.

7. Докер-воркеры

ПРОПУСТИТЕ ШАГ если не CUDA-трек и не ставили докер по изначальной инструкции

Следующая часть требует установленного Docker на системе. Если его нет - просто установите его.

cd docker\filter\

Обычно нам не нужен фильтр, запускаем только крутую TTS, это запустит только TTS:

docker-compose -f docker-compose-tts.yml up --build

НО

если нужна система фильтрации, то можете запустить так, это запустит ВСЕ докер воркеры, и TTS, и фильтр:

docker-compose up --build

Заодно запустится контейнер с системой фильтрации.

Если вам не нужен фильтр будет потом, когда вы запустили всё вместе - вы можете застопить его контейнер после запуска команды. Для этого откройте GUIшку Docker'а (Docker Desktop), перейдите в раздел контейнеров, и нажмите значок STOP рядом с названием filter-1 (важно, именно filter-1, а не всю вкладку filter, в которой 2 контейнера, включая FishTTS!)

Финал

Вы завершили установку, можете вернуться в содержание и оттуда перейти к конфигурации.

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

Если нужны конкретные группы (зависимостей) из pyproject.toml, то:

uv sync --group dev --group simpletts --group stt

и сколько угодно групп какие вам нужны.

Но изначально мы ставили под все зависимости.