Действия

PVE. Установка сервисного пакета окружения: различия между версиями

Материал из Флора AI

Нет описания правки
 
(не показано 9 промежуточных версий 2 участников)
Строка 1: Строка 1:
===== '''Общее описание''' =====
===== '''Общее описание''' =====
Пакет Python Virtual Environment (PVE) предназначен для подготовки виртуального python3 окружения для работы сервисов:
Пакет Python Virtual Environment (PVE) предназначен для подготовки виртуального Python3 окружения для работы сервисов:
    • Simple Entity Extractor
    • Simple Message Classifier
     • Short Phrase Recognizer
     • Short Phrase Recognizer
     • Simple Biometry Server
     • Simple Biometry Server
    • Simple Entity Extractor
    • Simple Message Classifier
     • Text To Speech Server
     • Text To Speech Server
    • Question Answering System
    • Script Engine Service
    • Report Engine Service


====='''Термины и определения'''=====
====='''Термины и определения'''=====
Python Virtual Environment (PVE) – пакет для установки python3 окружения для сервисов. Самостоятельно PVE не используется.
Python Virtual Environment (PVE) – пакет для установки Python3 окружения для сервисов. Самостоятельно PVE не используется.




====='''Расчет нагрузки'''=====
====='''Расчет нагрузки'''=====
Для установки пакета требуется свободное место в каталоге /opt не менее 3Gb, без поддержки видеокарты, и/или 8Gb с поддержкой.
Для установки пакета требуется свободное место в каталоге /opt не менее 4Gb без поддержки видеокарты и/или 19Gb с поддержкой.
 
Также при установке используется временная папка /tmp/archive, куда распаковывается содержимое архива до 17Gb.


Так же при установки используется временная папка /tmp/archive, куда распаковывается содержимое архива до 7Gb.




====='''Установка/обновление пакета окружения'''=====
====='''Установка/обновление пакета окружения'''=====
[https://cloud.connect2ai.net/index.php/apps/files/?dir=/pve&fileid=612 Дистрибутив] распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в ''онлайн'' режиме, при наличии прямого доступа в интернет или через прокси. Для установки в оффлайн режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет.
[https://cloud.connect2ai.net/index.php/apps/files/?dir=/pve&fileid=612 Дистрибутив] распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в ''онлайн''-режиме при наличии прямого доступа в интернет или через прокси. Для установки в ''оффлайн''-режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет.
* Загрузить последнюю версию окружения  <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/new</nowiki>" --user '[user]:[pass]' 2>&1 | bash</code> или в интерактивном режиме <code>bash -c "$(curl -s <nowiki>https://repo.connect2ai.net/api/pve</nowiki> --user '[user]:[pass]' 2>&1)"</code>.
* Загрузить последнюю версию окружения  <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/new</nowiki>" --user '[user]:[pass]' 2>&1 | bash</code> или в интерактивном режиме <code>bash -c "$(curl -s <nowiki>https://repo.connect2ai.net/api/pve</nowiki> --user '[user]:[pass]' 2>&1)"</code>.
* Обновить PVE <code>/opt/pve/inupdate</code> в интерактивном режиме. Или запустить с ключом:
* Обновить PVE <code>/opt/pve/inupdate</code> в интерактивном режиме. Или запустить с ключом:
** <code>/opt/pve/inupdate -b</code> - обновить до последней beta версии;
** <code>/opt/pve/inupdate -b</code> обновить до последней beta версии;
** <code>/opt/pve/inupdate -r</code> - обновить до последней release версии;
** <code>/opt/pve/inupdate -r</code> обновить до последней release версии;
** <code>/opt/pve/inupdate -n</code> - обновить до последней версии (не важно beta или release).
** <code>/opt/pve/inupdate -n</code> обновить до последней версии (неважно beta или release).
* Проверить актуальную версию окружения <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/version</nowiki></code>.
* Проверить актуальную версию окружения <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/version</nowiki></code>.
* Посмотреть лог изменений  <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/changelog</nowiki>" --user '[user]:[pass]'</code>.
* Посмотреть лог изменений  <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/changelog</nowiki>" --user '[user]:[pass]'</code>.
* Полное описание всех команд API репозитория можно найти по ссылке '''https://repo.connect2ai.net/api'''. <code>[user]:[pass]</code> - это тот же логин и пароль, что и от [https://cloud.connect2ai.net '''Nextcloud'''.]
* Полное описание всех команд API репозитория можно найти по ссылке '''https://repo.connect2ai.net/api'''. <code>[user]:[pass]</code> это тот же логин и пароль, что и от [https://cloud.connect2ai.net '''Nextcloud'''.]
* В папке с окружением можно добавить 2 файла конфигурации (данные фалы так же будут использоваться продуктами при отсутствие у них своих):
* В папке с окружением можно добавить 2 файла конфигурации (данные файлы также будут использоваться продуктами при отсутствии у них своих):
** echo -n <code>"[user]:[pass]"</code>  > /opt/pve/.userapi (это файл авторизации в API, нужен для обновления)
** echo -n <code>"[user]:[pass]"</code>  > /opt/pve/.userapi (это файл авторизации в API, нужен для обновления)
** echo -n <code>"<nowiki>http://example.com:3128</nowiki> [user] [password]"</code>  > /opt/pve/.proxy (это файл конфигурации proxy необходим для обновления, при отсутствующем прямом подключение к интернету)
** echo -n <code>"<nowiki>http://example.com:3128</nowiki> [user] [password]"</code>  > /opt/pve/.proxy (это файл конфигурации proxy, необходим для обновления, при отсутствующем прямом подключении к интернету)
При установке рядом со скриптом окружения можно положить freeze.txt с альтернативным набором модулей. В потоке вывода в результате вы увидите сообщение "Существует внешний файл список модулей pip3".
При установке рядом со скриптом окружения можно положить freeze.txt с альтернативным набором модулей. В потоке вывода в результате вы увидите сообщение «Существует внешний файл список модулей pip3».




Строка 49: Строка 54:
| -on/--online - онлайн
| -on/--online - онлайн
| -cpu/--cpu - полный набор pip3 модулей под CPU
| -cpu/--cpu - полный набор pip3 модулей под CPU
| rowspan="5" |Данные наборы ключей используются совместно, в разных комбинациях. Что бы устновить в оффлайн режиме, необходимо собрать скрипт с ключём -b/--build. Установка с ключем CPU актуально при отсуствие видеокарты в системе, окружение занимает всего ~3Gb.  
| rowspan="5" |Данные наборы ключей используются совместно, в разных комбинациях. Чтобы установить в оффлайн-режиме, необходимо собрать скрипт с ключом -b/--build. Установка с ключом CPU актуальна при отсутствии видеокарты в системе, окружение занимает всего ~3Gb.  
|-
|-
|
|
Строка 57: Строка 62:
|
|
|
|
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
|-
|-
|
|
Строка 70: Строка 75:
| -on/--online - онлайн
| -on/--online - онлайн
| -cpu/--cpu - полный набор pip3 модулей под CPU
| -cpu/--cpu - полный набор pip3 модулей под CPU
| rowspan="5" |Данные наборы ключей используются совместно, в разных комбинациях. Что бы обновить в оффлайн режиме, необходимо собрать скрипт с ключём -b/--build. Обновление с ключем CPU актуально при отсуствие видеокарты в системе, окружение занимает всего ~3Gb. Обновление отличается от устновки, тем что пропускается этап установки системных пакетов. Ставится только окружение с модулями. Оффлайн исталятор с ключем обновления становится универсальным под любую ОС, так как не зависим от системных пакетов.
| rowspan="5" |Данные наборы ключей используются совместно, в разных комбинациях. Чтобы обновить в оффлайн режиме, необходимо собрать скрипт с ключом -b/--build. Обновление с ключом CPU актуально при отсутствии видеокарты в системе, окружение занимает всего ~3Gb. Обновление отличается от установки тем, что пропускается этап установки системных пакетов. Ставится только окружение с модулями. Оффлайн инсталлятор с ключом обновления становится универсальным под любую ОС, так как не зависим от системных пакетов.
|-
|-
|
|
Строка 78: Строка 83:
|
|
|
|
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
|-
|-
|
|
Строка 91: Строка 96:
|''-i/--install - для установки с системными пакетами''
|''-i/--install - для установки с системными пакетами''
| -f/--full - полный набор pip3 модулей под все типы
| -f/--full - полный набор pip3 модулей под все типы
| rowspan="6" |Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключем CPU актуально при отсуствие видеокарты в системе, собранный инсталлятор весит ~1Gb. Ключ полного набора модулей делает инсталлятор универсальным, но такой инсталлятор весит ~9Gb. Если инстялятор был собран с ключем устновки под другую ОС, его так же можно использовать с ключем обновления для текущей или любой другой. Если набор модулей, который включен в оффлайн инсталлятор не достаточен, он попытается загрузить не достающие модули из интернета напримую или предложит ввести настройки Proxy.
| rowspan="6" |Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключом CPU актуальна при отсутствии видеокарты в системе, собранный инсталлятор весит ~1Gb. Ключ полного набора модулей делает инсталлятор универсальным, но такой инсталлятор весит ~9Gb. Если инсталлятор был собран с ключом установки под другую ОС, его также можно использовать с ключом обновления для текущей или любой другой. Если набор модулей, который включен в оффлайн инсталлятор, недостаточен, он попытается загрузить недостающие модули из интернета напрямую или предложит ввести настройки прокси.
|-
|-
|
|
Строка 103: Строка 108:
|
|
|
|
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
|-
|-
|
|
Строка 126: Строка 131:
| -d/--dir путь/имя_каталога
| -d/--dir путь/имя_каталога
|
|
|Второй аргумент не обязательный. Без указания папки, к установщику приерепляем архив. С указанием папки, к установщику приерепляем содержимое каталога.
|Второй аргумент не обязательный. Без указания папки к установщику прикрепляем архив. С указанием папки к установщику прикрепляем содержимое каталога.
|-
|-
| -n/--null - удалить внутренний архив из скрипта
| -n/--null - удалить внутренний архив из скрипта
|
|
|
|
|Удаляем, внутренний архим из инстялятора. Редактирование инсталлятора с архивом может привезти к повреждению архива.
|Удаляем внутренний архив из инсталлятора. Редактирование инсталлятора с архивом может привести к повреждению архива.
|}
|}
Примеры использования ключей
Примеры использования ключей:


-- Установить окружение с полным набором модулей под CPU
-- Установить окружение с полным набором модулей под CPU.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -i -cpu -on</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -i -cpu -on</code>


  -- Установить окружение из заранее собранного инсталлера с полным набором модулей под CPU
  -- Установить окружение из заранее собранного инсталлятора с полным набором модулей под CPU.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -i -cpu -off</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -i -cpu -off</code>


  -- Собрать все пакеты для установки оффлайн окружения с полным набором модулей под CPU
  -- Собрать все пакеты для установки оффлайн окружения с полным набором модулей под CPU.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -b -i -cpu</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -b -i -cpu</code>


  -- Собрать все пакеты для обновления оффлайн окружения с полным набором модулей под CPU
  -- Собрать все пакеты для обновления оффлайн окружения с полным набором модулей под CPU.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -b -u -cpu</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -b -u -cpu</code>


  -- Скопировать внутренний архив рядом со скриптом не распаковывая в папку
  -- Скопировать внутренний архив рядом со скриптом, не распаковывая в папку.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -e</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -e</code>


  -- Запаковать архив в скрипт
  -- Запаковать архив в скрипт.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -p <service>-offline.tgz</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -p <service>-offline.tgz</code>


  -- Сжать каталог и запаковать архив в скрипт
  -- Сжать каталог и запаковать архив в скрипт.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -p -d <имя каталога></code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -p -d <имя каталога></code>


  -- Распаковать внутренний архив рядом со скриптом в каталог
  -- Распаковать внутренний архив рядом со скриптом в каталог.


  Пример использования: <code>./pve-<версия>-<релиз>.sh -e -d archive</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh -e -d archive</code>


  -- Удалить внутренний архив из скрипта
  -- Удалить внутренний архив из скрипта.


  Пример использования: <code>./pve-<версия>-<релиз>.sh --null</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh --null</code>


  -- Удалить окружение
  -- Удалить окружение.


  Пример использования: <code>./pve-<версия>-<релиз>.sh --uninstall</code>
  Пример использования: <code>./pve-<версия>-<релиз>.sh --uninstall</code>
Строка 180: Строка 185:
====='''Удаление окружения'''=====
====='''Удаление окружения'''=====
Для удаления выполните команду: <code>/opt/pve/uninstall</code>.
Для удаления выполните команду: <code>/opt/pve/uninstall</code>.
===== '''Часто задаваемые вопросы''' =====
{| class="wikitable"
|+
!Вопрос
!Ответ
|-
|
|
|-
|
|
|-
|
|
|}

Текущая версия от 13:40, 25 ноября 2025

Общее описание

Пакет Python Virtual Environment (PVE) предназначен для подготовки виртуального Python3 окружения для работы сервисов:

   • Simple Entity Extractor
   • Simple Message Classifier
   • Short Phrase Recognizer
   • Simple Biometry Server
   • Text To Speech Server
   • Question Answering System
   • Script Engine Service
   • Report Engine Service


Термины и определения

Python Virtual Environment (PVE) – пакет для установки Python3 окружения для сервисов. Самостоятельно PVE не используется.


Расчет нагрузки

Для установки пакета требуется свободное место в каталоге /opt не менее 4Gb без поддержки видеокарты и/или 19Gb с поддержкой.

Также при установке используется временная папка /tmp/archive, куда распаковывается содержимое архива до 17Gb.


Установка/обновление пакета окружения

Дистрибутив распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в онлайн-режиме при наличии прямого доступа в интернет или через прокси. Для установки в оффлайн-режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет.

  • Загрузить последнюю версию окружения curl -s "https://repo.connect2ai.net/api/pve/new" --user '[user]:[pass]' 2>&1 | bash или в интерактивном режиме bash -c "$(curl -s https://repo.connect2ai.net/api/pve --user '[user]:[pass]' 2>&1)".
  • Обновить PVE /opt/pve/inupdate в интерактивном режиме. Или запустить с ключом:
    • /opt/pve/inupdate -b – обновить до последней beta версии;
    • /opt/pve/inupdate -r – обновить до последней release версии;
    • /opt/pve/inupdate -n – обновить до последней версии (неважно beta или release).
  • Проверить актуальную версию окружения curl -s "https://repo.connect2ai.net/api/pve/version.
  • Посмотреть лог изменений curl -s "https://repo.connect2ai.net/api/pve/changelog" --user '[user]:[pass]'.
  • Полное описание всех команд API репозитория можно найти по ссылке https://repo.connect2ai.net/api. [user]:[pass] – это тот же логин и пароль, что и от Nextcloud.
  • В папке с окружением можно добавить 2 файла конфигурации (данные файлы также будут использоваться продуктами при отсутствии у них своих):
    • echo -n "[user]:[pass]" > /opt/pve/.userapi (это файл авторизации в API, нужен для обновления)
    • echo -n "http://example.com:3128 [user] [password]" > /opt/pve/.proxy (это файл конфигурации proxy, необходим для обновления, при отсутствующем прямом подключении к интернету)

При установке рядом со скриптом окружения можно положить freeze.txt с альтернативным набором модулей. В потоке вывода в результате вы увидите сообщение «Существует внешний файл — список модулей pip3».


Варианты использование инсталлятора

Описание ключей установки приведено в таблице

Параметр,

назначение

Параметр,

назначение

Параметр,

назначение

Примечание
-i/--install - установить окружение -on/--online - онлайн -cpu/--cpu - полный набор pip3 модулей под CPU Данные наборы ключей используются совместно, в разных комбинациях. Чтобы установить в оффлайн-режиме, необходимо собрать скрипт с ключом -b/--build. Установка с ключом CPU актуальна при отсутствии видеокарты в системе, окружение занимает всего ~3Gb.
-off/--offline - оффлайн -cu11/--cu11- полный набор pip3 модулей под GPU CU11.8
-cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
-ups/--ups - отдельное окружение для ups
-res/--res - отдельное окружение для res
-u/--update - обновить окружение -on/--online - онлайн -cpu/--cpu - полный набор pip3 модулей под CPU Данные наборы ключей используются совместно, в разных комбинациях. Чтобы обновить в оффлайн режиме, необходимо собрать скрипт с ключом -b/--build. Обновление с ключом CPU актуально при отсутствии видеокарты в системе, окружение занимает всего ~3Gb. Обновление отличается от установки тем, что пропускается этап установки системных пакетов. Ставится только окружение с модулями. Оффлайн инсталлятор с ключом обновления становится универсальным под любую ОС, так как не зависим от системных пакетов.
-off/--offline - оффлайн -cu11/--cu11- полный набор pip3 модулей под GPU CU11.8
-cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
-ups/--ups - отдельное окружение для ups
-res/--res - отдельное окружение для res
-b/--build - скачать все пакеты, и модули, и упаковать в скрипт -i/--install - для установки с системными пакетами -f/--full - полный набор pip3 модулей под все типы Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключом CPU актуальна при отсутствии видеокарты в системе, собранный инсталлятор весит ~1Gb. Ключ полного набора модулей делает инсталлятор универсальным, но такой инсталлятор весит ~9Gb. Если инсталлятор был собран с ключом установки под другую ОС, его также можно использовать с ключом обновления для текущей или любой другой. Если набор модулей, который включен в оффлайн инсталлятор, недостаточен, он попытается загрузить недостающие модули из интернета напрямую или предложит ввести настройки прокси.
-u/--update - для обновления, только окружение -cpu/--cpu - полный набор pip3 модулей под CPU
-cu11/--cu11- полный набор pip3 модулей под GPU CU11.8
-cu12/--cu12 - полный набор pip3 модулей под GPU CU12.8
-ups/--ups - отдельное окружение для ups
-res/--res - отдельное окружение для res
-u/--uninstall - удалить окружение Одинарный ключ, удаляет окружение из папки /opt
-e/--extract - скопировать внутренний архив рядом со скриптом -d/--dir путь/имя_каталога Второй аргумент не обязательный. Без указания папки, распакуется архив. С указанием папки, распакуется содержимое архива в указанную папку.
-p/--pack имя_архива - запаковать архив в скрипт -d/--dir путь/имя_каталога Второй аргумент не обязательный. Без указания папки к установщику прикрепляем архив. С указанием папки к установщику прикрепляем содержимое каталога.
-n/--null - удалить внутренний архив из скрипта Удаляем внутренний архив из инсталлятора. Редактирование инсталлятора с архивом может привести к повреждению архива.

Примеры использования ключей:

-- Установить окружение с полным набором модулей под CPU.

  Пример использования: ./pve-<версия>-<релиз>.sh -i -cpu -on

  -- Установить окружение из заранее собранного инсталлятора с полным набором модулей под CPU.

  Пример использования: ./pve-<версия>-<релиз>.sh -i -cpu -off

  -- Собрать все пакеты для установки оффлайн окружения с полным набором модулей под CPU.

  Пример использования: ./pve-<версия>-<релиз>.sh -b -i -cpu

  -- Собрать все пакеты для обновления оффлайн окружения с полным набором модулей под CPU.

  Пример использования: ./pve-<версия>-<релиз>.sh -b -u -cpu

  -- Скопировать внутренний архив рядом со скриптом, не распаковывая в папку.

  Пример использования: ./pve-<версия>-<релиз>.sh -e

  -- Запаковать архив в скрипт.

  Пример использования: ./pve-<версия>-<релиз>.sh -p <service>-offline.tgz

  -- Сжать каталог и запаковать архив в скрипт.

  Пример использования: ./pve-<версия>-<релиз>.sh -p -d <имя каталога>

  -- Распаковать внутренний архив рядом со скриптом в каталог.

  Пример использования: ./pve-<версия>-<релиз>.sh -e -d archive

  -- Удалить внутренний архив из скрипта.

  Пример использования: ./pve-<версия>-<релиз>.sh --null

  -- Удалить окружение.

  Пример использования: ./pve-<версия>-<релиз>.sh --uninstall



Удаление окружения

Для удаления выполните команду: /opt/pve/uninstall.