Проект Python для создания VR-сред с использованием генеративного искусственного интеллекта. Вы можете запустить его как TCP-сервер для взаимодействия с клиентом Unity и получить полноценное приложение AI/VR.
Это публичный архив, разработка на HugoFara/speech-to-world-server продолжается!
Это вариант использования генеративного искусственного интеллекта для создания полноценного VR-пейзажа. Он был разработан Хьюго ФАРАДЖАЛЛАХом в Женевском кампусе Биотехнологий в сотрудничестве с Лабораторией когнитивных наук.
Вам необходимо установить Python 3.10 и CUDA 12.1 (другие версии не тестировались). Как только требования установлены, проект должен работать.
Вот подробная процедура установки:
cd VR-Environment-GenAI-Server
# From https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/#create-and-use-virtual-environments
python -m venv .venv # Creates the virtual environment under .venv
source .venv/bin/activate # Activates it
cd VR-Environment-GenAI-Server
# From https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/#create-and-use-virtual-environments
py -m venv .venv # Creates the virtual environment under .venv
.venv S cripts a ctivate # Activates it
pip install -r requirements.txt
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
. Подробности можно найти на https://pytorch.org/get-started/locally/.С этого момента проект должен быть функциональным. Следующий раздел не является обязательным, но он может сэкономить вам много времени.
(необязательно) Вы можете ускорить создание изображений, используя ускорение. Загрузите его с помощью
pip install accelerate
.
.idea
, позволяющая добавить ее в качестве проекта.sudo apt install ffmpeg portaudio19-dev python3-pyaudio
pip install -r requirements-optional.txt # Installs PyAudio
Каждый файл может выполняться независимо, поэтому у них столько же точек входа, сколько и у файлов.
Наиболее распространенными случаями использования являются следующие:
python -m skybox.diffusion
.python -m utils.download_models
. Если вы этого не сделаете, модели будут загружаться во время выполнения, что может быть очень медленным.python -m server.run
.Далее идет детализация специальных файлов.
Заходим в папку skybox
.
skybox/legacy
может оказаться бесполезным. Я храню его там для личных целей. 3D-функции находятся в папке environment
. На момент написания статьи (июнь 2024 г.) он все еще находился в активной разработке, поэтому нижеследующее может быть изменено.
Для функций преобразования речи в текст перейдите в asr
(автоматическое распознавание речи).
Если вы хотите использовать графический интерфейс вместо кода Python, вы можете использовать предоставленные рабочие процессы ComfyUI в папке ComfyUI
.
Объяснение каждого рабочего процесса подробно описано в ComfyUI/README.md.
Возможности сервера находятся в server
. Подробные сведения об использовании см. в разделе Запуск в качестве TCP-сервера.
sound
есть несколько экспериментов с генерацией звука.utils
собраны полезные для пользователя функции: Основная конфигурация сервера находится в api.json
. Наиболее важными данными конфигурации являются «serverIp» и «serverPort», поскольку они задают адрес сервера.
TCP-сервер может быть запущен, чтобы разгрузить часть AI из потока приложения. Просто запустите python -m server.run
. Конфигурация сервера определяется в api.json
. Связь осуществляется в формате JSON в строгом стиле HTTP.
Чтобы подключиться к серверу с другого компьютера в той же сети, вам необходимо открыть порт. В Windows вам просто нужно зайти в панель управления и добавить новое правило для порта 9000
(с конфигурацией по умолчанию). Это руководство How-To Geek кажется достаточно информативным. В Linux открывать порты немного веселее, лично я рекомендую использовать nginx с перенаправлением портов.
Текущее состояние проекта в очень далекой перспективе.
skybox/panorama_creator.py
environment/renderer.py
сейчас не подходит для производства. Этот проект включает в себя несколько моделей искусственных нейронных сетей. Если вы хотите заменить одну модель на другую, вы должны хорошо знать, что делаете, иначе качество конечного продукта может снизиться.
Пожалуйста, загляните в utils/download_models.py
, чтобы узнать, откуда загружаются эти модели.
Вы можете скачать официальный клиент Unity с сайта VR-Environment-GenAI-Unity (GitHub). Если вы ищете активный общедоступный репозиторий этого проекта, перейдите по адресу HugoFara/speech-to-world-server.