Обновление 1.25.4.5 → 1.25.10.0
Инструкции ограничиваются вариантом установки через Docker.
Значимые изменения в версии 1.25.10.0, которые следует учитывать системному администратору:
- теперь мы распространяем Docker-образы через репозиторий Nexus Docker Registry (ранее – ownCloud)
- в т.ч. внешние (postgres / rabbitmq / redis), которые получили префикс externals/ (см. таблицу ниже)
- изменилась архитектура Умного OCR:
- агент, встроенный в
primo-rpa/ai-server-smartocr
на 5004 порту больше не потребуется - теперь агент
/app/Primo.AI/Agent
управляет запуском множества контейнеров IDP-сервера (по-умолчанию на портах в диапазоне 9100-9999)
- агент, встроенный в
- в IDP- и Logics-серверы теперь вшит venv.zip
Библиотеки теперь не распространяются отдельно от образа.
Каталоги
/app/Primo.AI/NLP
,/app/Primo.AI/SmartOCR
больше не потребуются - обновились все дистрибутивы компонентов Api, а также UI
- среди компонентов сервера появился Redis
- обновился файл конфигурации сервиса UI:
nginx.conf
. - обновились все дистрибутивы целевых машин
- новые образы:
primo-rpa/ai-server-smartocr-cpu
,primo-rpa/ai-server-smartocr-gpu
- не актуален образ:
primo-rpa/ai-server-smartocr
- обновились агенты:
Agent-linux.zip
,Agent.NlpEngine-linux.zip
;
- новые образы:
Загрузка образов
Загрузите обновленные образы в соответствии со статьей:
Компонент | Наименование | Старое имя образа | Новое имя образа в Nexus | Изменение |
---|---|---|---|---|
Сервер | UI | primo-rpa/ai-server-ui:1.25.4.5 | primo-rpa/ai-server-ui | Обновлен |
Сервер | Api | primo-rpa/ai-server-api:1.25.4.5 | primo-rpa/ai-server-api | Обновлен |
Сервер | Auth | primo-rpa/ai-server-auth:1.25.4.5 | primo-rpa/ai-server-auth | Обновлен |
Сервер | Inference | primo-rpa/ai-server-inference:1.25.4.5 | primo-rpa/ai-server-inference | Обновлен |
Сервер | MachineInfo | primo-rpa/ai-server-machineinfo:1.25.4.5 | primo-rpa/ai-server-machineinfo | Обновлен |
Сервер | Logs | primo-rpa/ai-server-logs:1.25.4.5 | primo-rpa/ai-server-logs | Обновлен |
Сервер | Redis | - | externals/redis | Добавлен |
Сервер | RabbitMQ | rabbitmq:3.10.7-management | externals/rabbitmq:3.10.7-management | Обновлено имя образа |
Сервер | PostgreSQL | postgres:latest | externals/postgres:latest | Обновлено имя образа |
Умный OCR | Целевая машина Умного OCR | primo-rpa/ai-server-smartocr:1.25.4.5 | - | Удален |
Умный OCR | IDP-сервер (cpu) | - | primo-rpa/ai-server-smartocr-cpu | Добавлен |
Умный OCR | IDP-сервер (gpu) | - | primo-rpa/ai-server-smartocr-gpu | Добавлен |
NLP | Logics-сервер | primo-rpa/ai-server-logics:1.25.4.2 | primo-rpa/ai-server-logics | Обновлен |
NLP | vLLM (cpu) | primo-rpa/ai-server-vllm-cpu:1.25.4.1 | primo-rpa/ai-server-vllm-cpu | Обновлен |
NLP | vLLM (gpu) | primo-rpa/ai-server-vllm-gpu:1.25.4.1 | primo-rpa/ai-server-vllm-gpu | Обновлен |
NLP | Ollama | primo-rpa/ai-server-ollama:1.25.4.2 | primo-rpa/ai-server-ollama | Обновлен |
Машина сервера
- Обновите образы (см. “Загрузка образов”)
- Обновите образы компонентов Api: UI, Api, Auth, Inference, Logs
- Установите образ Redis
- Добавьте Redis в
/app/Primo.AI/Api/docker-compose.yaml
:
version: "3.7"
services:
...
redis:
image: externals/redis:latest
container_name: redis
restart: always
environment:
REDIS_PASSWORD: ${REDIS_PASSWORD}
ports:
- 6379:6379
networks:
- server_ai
...
Также добавьте пароль в .env-файл /app/Primo.AI/Api/.env
:
REDIS_PASSWORD=Qwe123!@#
-
Скорректируйте файл конфигурации
/app/Primo.AI/Api/docker-compose.yaml
в соответствии с файлом конфигурацииdocker/server/docker-compose.yaml
:- порядок компонентов,
- блоки depends_on
- имена образов в соответствии с таблицей выше
-
Обновите файл конфигурации
/app/Primo.AI/Api/volumes/nginx/nginx.conf
. -
Отредактируйте файл конфигурации
/app/Primo.AI/Api/volumes/conf/Api/appsetttings.ProdLinux.json
:
- Добавьте в секцию
Api
параметрInferenceBaseUrl
:
"Api": {
...
"InferenceMinAvailableVersion": "1.25.10.0",
"InferenceBaseUrl": "http://192.168.1.2:5012",
"InferenceVersionUrl": "http://192.168.1.2:5012/api/version",
...
},
- Добавьте в секцию
FileUpload
параметрTempLinkExpirationSeconds
:
"FileUpload": {
...
"TempLinkExpirationSeconds": 60
},
- Добавьте в секцию
Documentation
параметрInferenceProcessConfigUrl
:
"Documentation": {
...
"InferenceProcessConfigUrl": "https://docs.primo-rpa.ru/ru/primo-ai/user/smart-ocr/inference/additional-parameters"
},
- Скорректируйте секцию
Redis
для снижения нагрузки на БД:
"Redis": {
"Enabled": true,
"ConnectionString": "redis:6379,password=Qwe123!@#", // задается в /app/Primo.AI/Api/.env
"WorkerThreads": 1000
},
- Отредактируйте файл конфигурации
/app/Primo.AI/Api/volumes/conf/Inference/appsetttings.ProdLinux.json
:
- Скорректируйте секцию
Redis
для снижения нагрузки на БД:
"Redis": {
"Enabled": true,
"ConnectionString": "redis:6379,password=Qwe123!@#", // задается в /app/Primo.AI/Api/.env
"WorkerThreads": 1000
},
-
Перезапустите компоненты Api:
docker compose -f /app/Primo.AI/Api/docker-compose.yaml down && \ docker compose -f /app/Primo.AI/Api/docker-compose.yaml up -d
-
Обновите сервис Api.MachineInfo, скачав файл
Api.MachineInfo-linux.zip
из каталогаdistr
:sudo systemctl stop Primo.AI.Api.MachineInfo && \ sudo unzip -o /srv/samba/shared/install/distr/Api.MachineInfo-linux.zip -x appsettings* -d /app/Primo.AI/Api.MachineInfo/ && \ sudo systemctl start Primo.AI.Api.MachineInfo
Целевые машины
- Агент.
- В отсутствие агента
/app/Primo.AI/Agent
установите его согласно инструкции. - Если агент установлен, обновите агент, скачав файл
Agent-linux.zip
из каталогаdistr
:
sudo systemctl stop Primo.AI.Agent && \ sudo unzip -o /srv/samba/shared/update/1.25.4.5/Agent-linux.zip -x appsettings* -d /app/Primo.AI/Agent/ && \ sudo systemctl start Primo.AI.Agent
- В отсутствие агента
Целевая машина Умный OCR
- Обновите образы (см. “Загрузка образов”)
- Удалите образ
primo-rpa/ai-server-smartocr
- Установите образы
primo-rpa/ai-server-smartocr-cpu
/primo-rpa/ai-server-smartocr-gpu
- Удалите образ
- Отредактируйте файл конфигурации агента
/app/Primo.AI/Agent/appsetttings.ProdLinux.json
- Добавьте
InternalHttp
вKestrel
:
"Kestrel": {
"EndPoints": {
...
"InternalHttp": { "Url": "http://*:5092" }
}
},
- Добавьте
AgentBaseUrl
вApi
:
"Api": {
...
"AgentBaseUrl": "http://172.17.0.1:5092", // URL агента, доступный из IDP-сервера
...
},
- Добавьте
IdpProcess
:
"IdpProcess": {
"BaseUrlTemplate": "http://localhost:{port}", // Шаблон базового URL с плейсхолдером {port}
"Cpus": null, // Опционально. Количество ядер CPU, отдаваемое всем контейнерам IDP-сервера.
"HealthCheck": {
"TimeoutSeconds": 30, // Как долго ждать полного запуска IDP-сервера
"PeriodMilliseconds": 500
},
"IdpServerDockerOptions": {
"PortsRangeFrom": 9100,
"PortsRangeTo": 9999,
"ImageName": "primo-rpa/ai-server-smartocr-cpu",
"ContainerNamePrefix": "smartocr",
"Subnet": "logics_agent_ai",
"SharedMemorySize": 4
}
},
- Обновите имена образов — новое имя образа указано в таблице выше.
- Перезапустите агента:
sudo systemctl restart Primo.AI.Agent
Каталог /app/Primo.AI/SmartOCR
больше не нужен и может быть безопасно удален.
Целевая машина NLP
-
Обновите образы Logics-сервера, а также vLLM / Ollama (см. “Загрузка образов”)
-
Отредактируйте файл конфигурации агента
/app/Primo.AI/Agent/appsetttings.ProdLinux.json
- Скорректируйте расположение yml-файла в
NlpProcess
>LogicsDockerCompose
:
"NlpProcess": {
...
"LogicsDockerCompose": {
...
"DockerComposeYamlDirectory": "./",
"DockerComposeYamlFileName": "logics-server.yml",
...
}
},
- Перезапустите агента:
sudo systemctl restart Primo.AI.Agent
Каталог /app/Primo.AI/NLP
больше не нужен и может быть безопасно удален.
-
Обновите имена образов vLLM / Ollama в файле конфигурации
/app/Primo.AI/Agent.NlpEngine/appsettings.ProdLinux.json
— новое имя образа указано в таблице выше. -
Обновите агента LLM-ядра, скачав файл
Agent.NlpEngine-linux.zip
из каталогаdistr
:
sudo systemctl stop Primo.AI.Agent.NlpEngine && \
sudo unzip -o /srv/samba/shared/update/1.25.4.5/Agent.NlpEngine-linux.zip -x appsettings* -d /app/Primo.AI/Agent.NlpEngine/ && \
sudo systemctl start Primo.AI.Agent.NlpEngine