Skip to content

Сессионность и конфигурация

Для удобства отслеживания прохождения теста в UI NeuroMoon существует возможность разделения прогонов по сессиям. Для этого необходимо получить токен. Так как для разных проектов скорее всего потребуется различные версии нейронных сетей, то система также предоставляет механизм конфигурации версий. Механизм конфигурации является частью механизма сессионности.

Использование токена не является обязательным. Результаты запросов без токена также доступны в UI NeuroMoon

Info

Токен является данными для входа в NeuroMoon. Для того, чтобы увидеть результаты запросы без токена, необходимо оставить пустым окно ввода. Подробнее о Neuromoon

Получение токена

Время жизни токена составляет 2 часа на его бездействие. С каждым запросом на эндпоинты в которых имеется параметр token, время жизни продлевается на два часа относительно времени совершения запроса. Если за 2 часа не было совершено никаких запросов, то токен закрывается и запросы с ним будут уже недействительны

Для получения токена существует эндпоинт POST /token. Метод не имеет query-параметров, но имеет необязательное тело запроса, которое служит для конфигурации.

Пример получения токена без конфигурации

curl -X 'POST' \
  'http://192.168.88.102:9464/token' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d ''

Ответ:

{
  "token": "e3f83b5e-e001-4b36-bc18-823ac33c6b58",
  "time_created": "2022-01-13T11:13:43.887283",
  "time_finished": "2022-01-13T13:13:43.887283",
  "is_closed": false,
  "config": {
    "model_version": 2,
    "model_localize_version": 1
  }
}

Значение поля token из ответа используется как значение query-параметра в функциональных запросах. time_finished показывает время, когда токен будет закрыт (без использования запросов).

Warning

Срок возможного бездействия токена, когда он еще будет действителен составляет 2 часа. С каждым функциональным запросом время жизни будет продлеваться на 2 часа относительно времени сделанного запроса.

Конфигурация

Сконфигурировать можно версии модели детекции компонентов (основная НС) и модели локализации текста. По умолчанию для основной модели используется версия 2, для модели локализации текста версия 1.

Для того чтобы поставить другую версию модели, необходимо при запросе получения токена отправить конфигурационный словарь в теле запроса с требуемыми значениями версий

{
  "model_version": 2,
  "model_localize_version": 1
}

Например, для установки основной модели на 3 версию, без изменении модели локализации текста необходимо сформировать следующий запрос:

curl -X 'POST' \
  'http://192.168.88.102:9464/token' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "model_version": 3
}'

Ответ:

{
  "token": "fc9caa25-c83c-445a-8e78-d5bf9f8f990f",
  "time_created": "2022-01-13T11:30:10.599988",
  "time_finished": "2022-01-13T13:30:10.599988",
  "is_closed": false,
  "config": {
    "model_version": 3,
    "model_localize_version": 1
  }
}

В дальнейшем, при всех запросах, где будет указан полученный токен, детекция компонентов будет производиться с помощью модели версии 3

Info

Информация о формате запроса и выходных данных также имеется в Swagger