Skip to Content

Обновление 1.25.4.5 → 1.25.10.0

⚠️

Инструкции ограничиваются вариантом установки через Docker.

Значимые изменения в версии 1.25.10.0, которые следует учитывать системному администратору:

  • теперь мы распространяем Docker-образы через репозиторий Nexus Docker Registry (ранее – ownCloud)
  • в т.ч. внешние (postgres / rabbitmq), которые получили префикс 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Добавлен
СерверPostgres-externals/postgres:17.6Обновлен
СерверRabbitMQ-externals/rabbitmq:3.10.7-managementОбновлен
Умный 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
    • Поменяйте имена образов сервисов Postgres, RabbitMQ
  2. Добавьте Redis в /app/Primo.AI/Api/docker-compose.yaml:

version: "3.7" services: ... redis: image: 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/appsettings.ProdLinux.json:

    • Добавьте в секцию Api параметр InferenceBaseUrl:

      "Api": { ... "InferenceMinAvailableVersion": "1.25.10.0", "InferenceBaseUrl": "http://server_inference:5012", "InferenceVersionUrl": "http://server_inference: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 },
  4. Отредактируйте файл конфигурации /app/Primo.AI/Api/volumes/conf/Inference/appsettings.ProdLinux.json:

    • Скорректируйте секцию Redis для снижения нагрузки на БД:

      "Redis": { "Enabled": true, "ConnectionString": "redis:6379,password=Qwe123!@#", // задается в /app/Primo.AI/Api/.env "WorkerThreads": 1000 },
  5. Перезапустите компоненты Api:

    docker compose -f /app/Primo.AI/Api/docker-compose.yaml down && \ docker compose -f /app/Primo.AI/Api/docker-compose.yaml up -d
  6. Обновите сервис Api.MachineInfo, скачав файл Api.MachineInfo-linux.zip из каталога distr:

    sudo systemctl stop Primo.AI.Api.MachineInfo sudo unzip -o Api.MachineInfo-linux.zip -x "appsettings*" -d /app/Primo.AI/Api.MachineInfo/ sudo chmod +x /app/Primo.AI/Api.MachineInfo/Primo.AI.Api.MachineInfo sudo chown primo:primo-ai /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 rm /app/Primo.AI/Agent/InMemoryProcessStore.json sudo unzip -o Agent-linux.zip -x "appsettings*" -d /app/Primo.AI/Agent/ sudo chmod +x /app/Primo.AI/Agent/Primo.AI.Agent sudo chown -R agent:primo-ai /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/appsettings.ProdLinux.json

    • Добавьте InternalHttp в Kestrel:
    "ExternalHttps": { "Url": "https://*:5002", "Certificate": { ... } }, "InternalHttp": { "Url": "http://*:5092" }
    • Добавьте AgentBaseUrl в Api:
    "Api": { ... "AgentBaseUrl": "http://172.17.0.1:5092", // URL агента, доступный из IDP-сервера ... },
    • Добавьте IdpProcess (укажите для GPU корректное имя образа: primo-rpa/ai-server-smartocr-gpu):
    "IdpProcess": { "BaseUrlTemplate": "http://localhost:{port}", // Шаблон базового URL с плейсхолдером {port} "Cpus": null, // Опционально. Количество ядер CPU, отдаваемое всем контейнерам IDP-сервера. "HealthCheck": { "TimeoutSeconds": 30, // Как долго ждать полного запуска IDP-сервера "PeriodMilliseconds": 500 }, "IdpServerDockerOptions": { "PortsRangeFrom": 9200, "PortsRangeTo": 9999, "ImageName": "primo-rpa/ai-server-smartocr-cpu", // gpu: primo-rpa/ai-server-smartocr-gpu "ContainerNamePrefix": "smartocr", "Subnet": "agent_agent_ai", "SharedMemorySize": 4 } },
    • Обновите имена образов — новое имя образа указано в таблице выше.
    • Добавьте правило в файерволл:
    sudo ufw allow tcp/5092
  3. Перезапустите агента:

sudo systemctl restart Primo.AI.Agent
  1. Остановите старый контейнер с целевой машиной:
docker compose -f /app/Primo.AI/SmartOCR/docker-compose.yaml down
ℹ️

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

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

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

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

    • Скорректируйте расположение yml-файла в NlpProcess > LogicsDockerCompose:
    "NlpProcess": { ... "LogicsDockerCompose": { ... "DockerComposeYamlDirectory": "./", "DockerComposeYamlFileName": "logics-server.yml", ... } },
  3. Перезапустите агента:

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 rm /app/Primo.AI/Agent.NlpEngine/InMemoryProcessStore.json sudo unzip -o Agent.NlpEngine-linux.zip -x "appsettings*" -d /app/Primo.AI/Agent.NlpEngine/ sudo chmod +x /app/Primo.AI/Agent.NlpEngine/Primo.AI.Agent.NlpEngine sudo chown -R agent:primo-ai /app/Primo.AI/Agent.NlpEngine/ sudo systemctl start Primo.AI.Agent.NlpEngine