Перейти к основному содержимому

Развертывание сервиса обработки голосовых данных вне платформы Атомкод

Чтобы установить сервис обработки голосовых данных вне платформы Атомкод используя ресурсы GPU вместо CPU выполните следующую инструкцию

Установка docker-образа

  1. Доставьте образ voiceai на сервер vLLM:

Откройте ssh-консоль на Сервере Приложений. Выполните команду:

sudo docker save distrib/platformmd/voiceai/voiceai:1.2.3 > /tmp/voiceai.1.2.3.tar
sudo scp /tmp/voiceai.1.2.3.tar user@server-vllm.example.local:/tmp/voiceai.1.2.3.tar

Замените:

  • "1.2.3" на текущую версию сервиса обработки голосовых данных;
  • user@server-vllm.example.local на пользователя и имя сервера vLLM.
  1. Установите образ voiceai в локальное docker-хранилище.
предупреждение

Если сервер работает под управлением ОС Astra Linux убедитесь, что в конфигурационном файле /etc/docker/daemon.json содержатся следующие параметры:

{
"debug" : true,
"astra-sec-level" : 6
}
  1. Установите docker-образ командой:
sudo docker load --input voiceai.1.2.3.tar

Замените "1.2.3" на версию доставленного образа voiceai.

Размещение сертификатов

Разместите открытый и закрытый сертификаты для обеспечения защищенного доступа к VoiceAI. Выберите директорию на сервере vLLM, например, /opt/cert и разместите в этой директории два файла: certificate.pem и certificate.key.pem. Поместите в эти файлысоответственно цепочку сертификатов и ключ.

Создание docker-контейнер

Создайте docker-контейнер с сервисом VoiceAI командой:

docker run -d \
-p <API-порт>:7000 \
-p <WebSocket порт>:8765 \
-e SERVICE__ISPLATFORM="False" \
-e DISCOVERY__DISABLED="True" \
-e WEB_SOCKET_HOST="0.0.0.0" \
-e WEB_SOCKET_PORT="8765" \
-e WSS_CERT_PATH="/cert/certificate.pem" \
-e WSS_KEY_PATH="/cert/certificate.key.pem" \
--name=voiceai \
--gpus=all \
--restart=always \
-v /opt/cert:/cert \
distrib/platformmd/voiceai/voiceai:1.2.3

где:

  • API-порт: порт для доступа к API сервиса обработки голосовых данных;
  • WebSocket порт: порт для Web Socket сервиса обработки голосовых данных.

Замените "1.2.3" на версию доставленного voiceai;

Для проверки успешности запуска сервиса перейдите по адресу https://<Имя сервера с ролью vLLM>:<порт API> и убедитесь, что отображается Swagger сервиса обработки голосовых данных.

Настройка стенда для работы с сервисом обработки голосовых данных, установленным вне Атомкод

  1. Убедитесь, что с сервера с ролью Сервер Приложений доступны порты для API и WebSocket сервиса обработки голосовых данных на сервере vLLM.

  2. Измените значения параметров связи с сервисом обработки голосовых данных в файле ответов для инсталлятора. Для изменения значений параметоров перейдите в дректорию инсталлятора и откройте файл group_vars/all.yml. В секции "# llm" этого файла актуализируйте значения переменных:

  • "llm_default_voiceai_server": укажите адрес сервера обработки голосовых данных и его API-порт;
  • "llm_default_voiceai_socket": укажите адрес сервера обработки голосовых данных и его WebSocket-порт.
  1. Переопределите значения ENV-переменных для связи с обработки голосовых данных на стендах. Это можно выполнить одним из двух способов:
  • перейдите в браузере в portainer сервера с ролью Сервер Приложений по адресу https://<адрес сервера Приложений>:9000. После авторизации перейдите в пункт меню Containers, выберите контейнер ragmanager, нажмите на него. Нажмите кнопку Duplicate/Edit. Перейдите на вкладку Env. Найдите переменные "DEFAULT_VOICEAI_SERVER" и "DEFAULT_VOICEAI_SOCKET" и актуализируйте их значения, указав новый сервер обработки голосовых данных и его API и WebSocket порты соответственно. Затем нажмите кнопку Deploy the container.

  • Переустановите сервис взаимодействия с большими языковыми моделями инсталлятором Атомкод. Перейдите в директорию инсталлятора и выполните команду:

    ansible-playbook MiscInstall.yml -i inventory/<Имя стенда> \
    --tags ragmanager \
    -e internal_domain=<Внутренний домен Платформы> \
    -e docker_repo_name=distrib \
    -e docker_hub=distrib/infra \
    -e product_name=platformmd \
    -u ansible

Удаление контейнера voiceAI на сервере Приложений при установке сервиса обработки голосовых данных, установленным вне Атомкод

Если сервис обработки голосовых данных уже установлен внутри Атомкод, то его можно удалить. Чтобы удалить уже установленный сервис обработки голосовых данных, если в нём больше нет необходимости:

  • удалите контейнер с сервисом обработки голосовых данных на сервере с ролью Сервер Приложений. Для удаления контейнера откройте ssh-консоль на сервере с ролью Сервер Приложений и выполните следующие команды:
sudo docker stop voiceai
sudo docker rm voiceai

Для того, чтобы предотвратить установку сервиса VoiceAI на стенды откройте файл group_vars/editions/ai.yml в директории инсталлятора и закомментируйте строку - voiceai.