Skip to Content

Обновление 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Изменение
СерверUIprimo-rpa/ai-server-ui:1.25.4.5primo-rpa/ai-server-uiОбновлен
СерверApiprimo-rpa/ai-server-api:1.25.4.5primo-rpa/ai-server-apiОбновлен
СерверAuthprimo-rpa/ai-server-auth:1.25.4.5primo-rpa/ai-server-authОбновлен
СерверInferenceprimo-rpa/ai-server-inference:1.25.4.5primo-rpa/ai-server-inferenceОбновлен
СерверMachineInfoprimo-rpa/ai-server-machineinfo:1.25.4.5primo-rpa/ai-server-machineinfoОбновлен
СерверLogsprimo-rpa/ai-server-logs:1.25.4.5primo-rpa/ai-server-logsОбновлен
СерверRedis-externals/redisДобавлен
СерверRabbitMQrabbitmq:3.10.7-managementexternals/rabbitmq:3.10.7-managementОбновлено имя образа
СерверPostgreSQLpostgres:latestexternals/postgres:latestОбновлено имя образа
Умный OCRЦелевая машина Умного OCRprimo-rpa/ai-server-smartocr:1.25.4.5-Удален
Умный OCRIDP-сервер (cpu)-primo-rpa/ai-server-smartocr-cpuДобавлен
Умный OCRIDP-сервер (gpu)-primo-rpa/ai-server-smartocr-gpuДобавлен
NLPLogics-серверprimo-rpa/ai-server-logics:1.25.4.2primo-rpa/ai-server-logicsОбновлен
NLPvLLM (cpu)primo-rpa/ai-server-vllm-cpu:1.25.4.1primo-rpa/ai-server-vllm-cpuОбновлен
NLPvLLM (gpu)primo-rpa/ai-server-vllm-gpu:1.25.4.1primo-rpa/ai-server-vllm-gpuОбновлен
NLPOllamaprimo-rpa/ai-server-ollama:1.25.4.2primo-rpa/ai-server-ollamaОбновлен

Машина сервера

  1. Обновите образы (см. “Загрузка образов”)
    • Обновите образы компонентов Api: UI, Api, Auth, Inference, Logs
    • Установите образ Redis
  2. Добавьте 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!@#
  1. Скорректируйте файл конфигурации /app/Primo.AI/Api/docker-compose.yaml в соответствии с файлом конфигурации docker/server/docker-compose.yaml:

    • порядок компонентов,
    • блоки depends_on
    • имена образов в соответствии с таблицей выше
  2. Обновите файл конфигурации /app/Primo.AI/Api/volumes/nginx/nginx.conf.

  3. Отредактируйте файл конфигурации /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 },
  1. Отредактируйте файл конфигурации /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 },
  1. Перезапустите компоненты Api:

    docker compose -f /app/Primo.AI/Api/docker-compose.yaml down && \ docker compose -f /app/Primo.AI/Api/docker-compose.yaml up -d
  2. Обновите сервис 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

Целевые машины

  1. Агент.
    • В отсутствие агента /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

  1. Обновите образы (см. “Загрузка образов”)
    • Удалите образ primo-rpa/ai-server-smartocr
    • Установите образы primo-rpa/ai-server-smartocr-cpu / primo-rpa/ai-server-smartocr-gpu
  2. Отредактируйте файл конфигурации агента /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 } },
  • Обновите имена образов — новое имя образа указано в таблице выше.
  1. Перезапустите агента:
sudo systemctl restart Primo.AI.Agent
ℹ️

Каталог /app/Primo.AI/SmartOCR больше не нужен и может быть безопасно удален.

Целевая машина NLP

  1. Обновите образы Logics-сервера, а также vLLM / Ollama (см. “Загрузка образов”)

  2. Отредактируйте файл конфигурации агента /app/Primo.AI/Agent/appsetttings.ProdLinux.json

  • Скорректируйте расположение yml-файла в NlpProcess > LogicsDockerCompose:
"NlpProcess": { ... "LogicsDockerCompose": { ... "DockerComposeYamlDirectory": "./", "DockerComposeYamlFileName": "logics-server.yml", ... } },
  1. Перезапустите агента:
sudo systemctl restart Primo.AI.Agent
ℹ️

Каталог /app/Primo.AI/NLP больше не нужен и может быть безопасно удален.

  1. Обновите имена образов vLLM / Ollama в файле конфигурации /app/Primo.AI/Agent.NlpEngine/appsettings.ProdLinux.json — новое имя образа указано в таблице выше.

  2. Обновите агента 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