Установка на сервер
Написали инструкцию, чтобы вы смогли развернуть решение Dbrain в собственном закрытом IT-контуре
Dbrain — серверное решение. Если хотите его протестировать, воспользуйтесь веб-демо. Мы не используем долговременные хранилища данных. Все входящие файлы передаются на сервер по защищённому протоколу, обрабатываются в оперативной памяти и удаляются сразу после возврата результатов пользователю. В тестовых целях пригодится паспорт России из Википедии
Функциональность локальной версии
Поддерживаются:
Антифрод 2.0 (только на серверах с GPU)
Требования к аппаратной части
Сценарии использования:
Оценили скорость распознавания на изображениях этих документов в формате JPEG:
Паспорт РФ — главный разворот
Паспорт РФ — прописка с печатными и рукописными штампами
Водительское удостоверение — лицевая сторона
Водительское удостоверение — обратная сторона 2011 и 2014 годов
СТС — лицевая и обратная стороны
СНИЛС — образец 1996 года
Сервис требует от процессора поддержку набора инструкций AVX-512. Без них сервис не будет работать. Вот список архитектур с поддержкой AVX-512.
1. Минимальная конфигурация (только CPU)
Обработка одного документа: 5.5 секунд
Обработка комплекта из 100 документов: 382 секунды (0.3 RPS)
Процессор: 2 ядра, 2.3 GHz
Оперативная память: 16 Gb
1. Слабая конфигурация (только CPU)
Обработка одного документа: 4.2 секунд
Обработка комплекта из 100 документов: 96 секунд (0.7 RPS)
Процессор: 16 ядер, 2.3 GHz, ориентир Intel Xeon Gold 5218
Оперативная память: 28 Gb
2. Средняя конфигурация (CPU + GPU)
Обработка одного документа: 3 секунды
Обработка комплекта из 100 документов: 26 секунд (3.5 RPS)
Видеокарта: Nvidia Tesla T4
Процессор: 24 ядра, 2.3 GHz
Оперативная память: 64 Gb
3. Максимальная конфигурация (CPU + GPU)
Обработка одного документа: 2.9 секунды
Обработка комплекта из 100 документов: 20 секунд (6 RPS)
Видеокарта: Nvidia Tesla T4 х 4
Процессор: 48 ядер, 2.3 GHz
Оперативная память: 512 Gb
4. Production single-node
Обработка одного документа: 2.4 секунды
Обработка комплекта из 100 документов: 30 секунд (3.3 RPS)
Балансировщик:
Процессор: 2 ядра
Оперативная память: 4 Gb
Сервисы:
Физический сервер
Видеокарта: Nvidia A2
Процессор: 10 ядер, 3.5-3.9 GHz, ориентир: Intel W-2255
Оперативная память: 128 Gb
SSD 1024 Gb
6. Production double-node
Обработка одного документа: 2.6 секунды
Обработка комплекта из 100 документов: 17 секунд (5.8 RPS)
Балансировщик:
Процессор: 2 ядра
Оперативная память: 4 Gb
Сервисы (2 сервера):
Физический сервер
Видеокарта: Nvidia A2
Процессор: 10 ядер, 3.5-3.9 GHz, ориентир: Intel W-2255
Оперативная память: 128 Gb
SSD 1024 Gb
Выше перечислены аппаратные требования для продуктивной эксплуатации. Dbrain запускается и на слабых конфигурациях. Например, на ноутбуке Core i5-8250U 1.6 GHz / 8 Gb ОЗУ / 250 Gb SSD. Но работоспособность на таких слабых конфигурациях не гарантируется.
Требования к окружению:
Операционная система Ubuntu версии 18.04+
Система менеджмента контейнеров Docker
docker-compose
Для использования мощностей видеокарт нужны:
nvidia-docker
Драйвера Nvidia последней доступной версии
CUDA версии не ниже 11.1
Доступ в интернет для проверки лицензии:
Адрес: https://license.ml.dbrain.io/check/v2
IP: динамический
Порт: 443
Протокол: TCP
Запрос: POST
Запуск локальной версии Dbrain
Создайте файл с названием docker-compose.yml
Скопируйте конфигурацию ниже и вставьте его в docker-compose.yml:
Замените
***
в строкеLICENSE_TOKEN: "***"
на ваш токен. Если у вас нет токена, напишите нам в телеграм или на hello@dbrain.io.Если на вашем сервере доступна видеокарта, допишите в раздел environment файла строку
ALLOW_GPU: true
При первом запуске на сервере может возникнуть конкуренция за процессор, память и видеокарту.
Сервисы и процессы запускаются одновременно и используют одни и те же ресурсы.
Рекомендуем дождаться, пока не произойдет равномерное распределение нагрузки.
Если вы используете прокси для доступа к сервису лицензий, укажите его в параметре
LICENSE_TOKEN
раздела environmentСохраните изменения в файле docker-compose.yml
Залогиньтесь через докер для доступа в наш репозиторий. Для этого выполните команду:
Введите логин
r@b@t$docr+docr
и парольp2JDaaFKIDEoddf8mho7
Проверьте, что сервис лицензий доступен. Для этого выполните команду:
Если ответ 405 — всё хорошо. В противном случае вам нужно открыть нашему сервису доступ до этого адреса.
Запустите сервис следующей командой:
Подождите, когда сервис полностью развернётся. В логах появится надпись вида
INFO: Uvicorn running on http://0.0.0.0:80
Сервис развёрнут локально. Теперь вы можете обращаться к нему по API. Примеры корректных запросов можно получить в свагере, он доступен по адресу localhost:8080/docs
Обратите внимание, передавать token
в запросе не нужно, он передаётся в environment
в docker-compose.yml
Пример запроса через терминал:
Сервис обращается к Dadata.ru, чтобы повысить точность выдаваемых адресов.
Если у вас ограничен доступ в Интернет, внесите в белый список адрес https://suggestions.dadata.ru. Если такой возможности нет, отключите обращение к Dadata.ru. Для этого в запросе к методуrecognize
передавайте параметр normalization_fias=false
Локально доступные методы:
Классификация документов:
/pipelines/run/classify
Проверка документов на признаки подделки:
/pipelines/run/fraud
Базовый OCR:
/pipelines/run/fulltext
Извлечение данных из документов:
/pipelines/run/recognize
Ничего не получилось, и вы хотите рассказать, что эта инструкция никуда не годится? Пишите нам в телеграм или на hello@dbrain.io, мы оперативно поможем
Last updated
Was this helpful?