Page cover

Установка на сервер

Написали инструкцию, чтобы вы смогли развернуть решение Dbrain в собственном закрытом IT-контуре

circle-info

Dbrain — серверное решение. Если хотите его протестировать, воспользуйтесь веб-демоarrow-up-right. Мы не используем долговременные хранилища данных. Все входящие файлы передаются на сервер по защищённому протоколу, обрабатываются в оперативной памяти и удаляются сразу после возврата результатов пользователю. В тестовых целях пригодится паспорт России из Википедииarrow-up-right

Функциональность локальной версии

Поддерживаются:

Требования к аппаратной части

Сценарии использования:

circle-info

Оценили скорость распознавания на изображениях этих документов в формате JPEG:

  • Паспорт РФ — главный разворот

  • Паспорт РФ — прописка с печатными и рукописными штампами

  • Водительское удостоверение — лицевая сторона

  • Водительское удостоверение — обратная сторона 2011 и 2014 годов

  • СТС — лицевая и обратная стороны

  • СНИЛС — образец 1996 года

triangle-exclamation

1. Минимальная конфигурация (только CPU)

circle-check
  • Процессор: 2 ядра, 2.3 GHz

  • Оперативная память: 16 Gb

1. Слабая конфигурация (только CPU)

circle-check

2. Средняя конфигурация (CPU + GPU)

circle-check
  • Видеокарта: Nvidia Tesla T4

  • Процессор: 24 ядра, 2.3 GHz

  • Оперативная память: 64 Gb

3. Максимальная конфигурация (CPU + GPU)

circle-check
  • Видеокарта: Nvidia Tesla T4 х 4

  • Процессор: 48 ядер, 2.3 GHz

  • Оперативная память: 512 Gb

4. Production single-node

circle-check

Балансировщик:

  • Процессор: 2 ядра

  • Оперативная память: 4 Gb

Сервисы:

  • Физический сервер

  • Видеокарта: Nvidia A2

  • Процессор: 10 ядер, 3.5-3.9 GHz, ориентир: Intel W-2255arrow-up-right

  • Оперативная память: 128 Gb

  • SSD 1024 Gb

6. Production double-node

circle-check

Балансировщик:

  • Процессор: 2 ядра

  • Оперативная память: 4 Gb

Сервисы (2 сервера):

  • Физический сервер

  • Видеокарта: Nvidia A2

  • Процессор: 10 ядер, 3.5-3.9 GHz, ориентир: Intel W-2255arrow-up-right

  • Оперативная память: 128 Gb

  • SSD 1024 Gb

Выше перечислены аппаратные требования для продуктивной эксплуатации. Dbrain запускается и на слабых конфигурациях. Например, на ноутбуке Core i5-8250U 1.6 GHz / 8 Gb ОЗУ / 250 Gb SSD. Но работоспособность на таких слабых конфигурациях не гарантируется.

Требования к окружению:

  1. Операционная система Ubuntu версии 18.04+

  2. Система менеджмента контейнеров Docker

  3. docker-compose

  4. Для использования мощностей видеокарт нужны:

    1. nvidia-docker

    2. Драйвера Nvidia последней доступной версии

    3. CUDA версии не ниже 11.1

  5. Доступ в интернет для проверки лицензии:

    • Адрес: https://license.ml.dbrain.io/check/v2

    • IP: динамический

    • Порт: 443

    • Протокол: TCP

    • Запрос: POST

Запуск локальной версии Dbrain

  1. Создайте файл с названием docker-compose.yml

  2. Скопируйте конфигурацию ниже и вставьте его в docker-compose.yml:

  1. Замените *** в строке LICENSE_TOKEN: "***" на ваш токен. Если у вас нет токена, напишите нам в телеграмarrow-up-right или на [email protected]envelope.

  2. Если на вашем сервере доступна видеокарта, допишите в раздел environment файла строку ALLOW_GPU: true

circle-info

При первом запуске на сервере может возникнуть конкуренция за процессор, память и видеокарту.

Сервисы и процессы запускаются одновременно и используют одни и те же ресурсы.

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

  1. Если вы используете прокси для доступа к сервису лицензий, укажите его в параметре LICENSE_TOKEN раздела environment

  2. Сохраните изменения в файле docker-compose.yml

  3. Залогиньтесь через докер для доступа в наш репозиторий. Для этого выполните команду:

  1. Введите логин r@b@t$docr+docr и пароль p2JDaaFKIDEoddf8mho7

  2. Проверьте, что сервис лицензий доступен. Для этого выполните команду:

  1. Если ответ 405 — всё хорошо. В противном случае вам нужно открыть нашему сервису доступ до этого адреса.

  2. Запустите сервис следующей командой:

  1. Подождите, когда сервис полностью развернётся. В логах появится надпись вида INFO: Uvicorn running on http://0.0.0.0:80

Сервис развёрнут локально. Теперь вы можете обращаться к нему по API. Примеры корректных запросов можно получить в свагере, он доступен по адресу localhost:8080/docs

Обратите внимание, передавать token в запросе не нужно, он передаётся в environment в docker-compose.yml

Пример запроса через терминал:

circle-exclamation

Локально доступные методы:

  • Классификация документов: /pipelines/run/classify

  • Проверка документов на признаки подделки: /pipelines/run/fraud

  • Базовый OCR: /pipelines/run/fulltext

  • Извлечение данных из документов: /pipelines/run/recognize

circle-info

Ничего не получилось, и вы хотите рассказать, что эта инструкция никуда не годится? Пишите нам в телеграмarrow-up-right или на [email protected]envelope, мы оперативно поможем

Last updated

Was this helpful?