Транскрибация видео с помощью нейросетей в Ubuntu
Инструкция транскрибации видео Ubuntu на локальном компьютере с помощью нейросетей.
Установка Docker
aptitude update
aptitude install docker.io docker-compose
Пропишите в /etc/systemd/journald.conf строчку:
SystemMaxUse=10G
Это строчка ограничивает максимальный размер логов в 10 гигабайт
Если нужно управлять докер из другого пользователя, то нужно добавить этого пользователя в группу docker.
usermod -a -G docker username
В файле /etc/docker/daemon.json пропишите:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "1"
}
}
Перезагрузите докер:
service docker restart
systemctl daemon-reload
Установка драйверов Nvidia
1) Установите драйвера
aptitude install linux-generic linux-headers-generic linux-image-generic
aptitude install nvidia-driver-525 linux-modules-nvidia-525-generic
Перезагрузитесь
2) Установите плагин libnvidia-container.
Определите версию Убунту
export distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
Установите ключ nvidia:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/nvidia-container-toolkit-keyring.gpg
Добавьте репозиторий:
wget https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list -O "/etc/apt/sources.list.d/nvidia-container-toolkit.list"
Установите Docker плагин:
apt-get update
apt-get install -y nvidia-docker2
Перезагрузите докер:
service docker restart
Проверьте работу видеокарты
docker run --rm --gpus all nvidia/cuda:11.7.1-base-ubuntu20.04 nvidia-smi
Должно вывести информацию о видеокарте
Запуск программы для транскрибации
Скачать докер контейнер
Для CPU:
docker run -it --rm -v whisper:/data -v ./:/shared bayrell/whisper:v20231117 bash
Для Nvidia:
docker run -it --rm --gpus all -v whisper:/data -v ./:/shared bayrell/whisper:v20231117-cuda bash
Выполнять уже внутри контейнера.
Конвертация видео:
cd /shared
whisper video.mp4 --model base
Доступные модели
https://github.com/openai/whisper
Название | Параметры | VRAM | Скорость | |
---|---|---|---|---|
1 | tiny | 39 M | ~1 GB | ~32x |
2 | base | 74 M | ~1 GB | ~16x |
3 | small | 244 M | ~2 GB | ~6x |
4 | medium | 769 M | ~5 GB | ~2x |
5 | large | 1550 M | ~10 GB | 1x |