UPS. Описание API: различия между версиями
Материал из Флора AI
Нет описания правки |
Нет описания правки |
||
| Строка 374: | Строка 374: | ||
===== '''/corpus: работа с данными для обучения моделей'''Методы данного класса предназначены только для сервисов smc и see | ===== '''/corpus: работа с данными для обучения моделей''' ===== | ||
Методы данного класса предназначены только для сервисов smc и see | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
| Строка 568: | Строка 569: | ||
|<small>Более подробное описание доступно в [[SPR. Руководство пользователя|пользователя SPR]].</small> | |<small>Более подробное описание доступно в [[SPR. Руководство пользователя|пользователя SPR]].</small> | ||
|} | |} | ||
===== '''/smc: работа с сервисом SMC''' ===== | ===== '''/smc: работа с сервисом SMC''' ===== | ||
| Строка 582: | Строка 584: | ||
|<small>Классификация текстовой фразы</small> | |<small>Классификация текстовой фразы</small> | ||
| | | | ||
* <small>''' | * <small>'''model''' - идентификатор модели</small> | ||
* <small>'''text''' - текст, подлежащий классификации</small> | * <small>'''text''' - текст, подлежащий классификации</small> | ||
* <small>'''multiclass''' - опция запроса нескольких классов при их наличии, если multiclass=1</small> | * <small>'''multiclass''' - опция запроса нескольких классов при их наличии, если multiclass=1</small> | ||
| Строка 610: | Строка 612: | ||
* <small>'''model''' - идентификатор модели</small> | * <small>'''model''' - идентификатор модели</small> | ||
* <small>'''corpus''' - название корпуса с данными</small> | * <small>'''corpus''' - название корпуса с данными</small> | ||
* <small>'''tokenizer''' - способ оцифровки фразы. entities или fragments. В первом случае упор делается на взаимосвязи сущностей, во втором на | * <small>'''tokenizer''' - способ оцифровки фразы. entities или fragments. В первом случае упор делается на взаимосвязи сущностей, во втором на N-граммы</small> | ||
* <small>'''normalization''' - уровень нормализации для устранения количественного перекоса в данных каждого класса, 0 - автоматическое определение, 1-9 - ручной режим. При увеличении значения происходит синтез данных для каждого класса. По умолчанию 1</small> | * <small>'''normalization''' - уровень нормализации для устранения количественного перекоса в данных каждого класса, 0 - автоматическое определение, 1-9 - ручной режим. При увеличении значения происходит синтез данных для каждого класса. По умолчанию 1</small> | ||
* <small>'''model-size''' - размер структуры модели. Чем больше данных, теб больше нужна модель. 0 - автоматический режим определения структуры модели. 1-5 - ручной режим. По умолчанию 3.</small> | * <small>'''model-size''' - размер структуры модели. Чем больше данных, теб больше нужна модель. 0 - автоматический режим определения структуры модели. 1-5 - ручной режим. По умолчанию 3.</small> | ||
* <small>'''entity-cross-limit''' - от 0 до 1. Предельный коэффициент возможного наличия сущности в многих классах, выше которого сущность считается мусорной. По умолчанию 1, т.е. допуск всех найденных сущностей.</small> | * <small>'''entity-cross-limit''' - от 0 до 1. Предельный коэффициент возможного наличия сущности в многих классах, выше которого сущность считается мусорной. По умолчанию 1, т.е. допуск всех найденных сущностей.</small> | ||
* <small>'''entity-rare-limit''' - от 0 до 1. Минимальный порог повторяемости сущности в классе, ниже которого сущность считается мусорной. По умолчанию 0, т.е. допуск всех найденных сущностей.</small> | * <small>'''entity-rare-limit''' - от 0 до 1. Минимальный порог повторяемости сущности в классе, ниже которого сущность считается мусорной. По умолчанию 0, т.е. допуск всех найденных сущностей.</small> | ||
|< | |<small><code>{ "error": 0,</code></small> | ||
< | <small><code> "message": "success"</code></small> | ||
< | <small><code>}</code></small> | ||
|<small>Метод асинхронный, статус обучения можно запросить методом GET</small> | |<small>Метод асинхронный, статус обучения можно запросить методом GET</small> | ||
<small>/info/{servicetype}/{model}</small> | <small>/info/{servicetype}/{model}</small> | ||
| Строка 627: | Строка 629: | ||
| | | | ||
* <small>'''model''' - идентификатор модели</small> | * <small>'''model''' - идентификатор модели</small> | ||
|< | |<small><code>{ "error": 0,</code></small> | ||
< | <small><code> "message": "success"</code></small> | ||
< | <small><code>}</code></small> | ||
|<small>-</small> | |<small>-</small> | ||
|- | |- | ||
| Строка 640: | Строка 642: | ||
* <small>'''corpus''' - название корпуса с данными</small> | * <small>'''corpus''' - название корпуса с данными</small> | ||
* <small>'''confidence''' - уровень доверия, от 0 до 1. Порог, ниже которого класс считается неизвестным. При значении 0 происходит автоматический расчет среднего уровня доверия, которые можно потом получить методом GET /info/{servicetype}/{model}</small> | * <small>'''confidence''' - уровень доверия, от 0 до 1. Порог, ниже которого класс считается неизвестным. При значении 0 происходит автоматический расчет среднего уровня доверия, которые можно потом получить методом GET /info/{servicetype}/{model}</small> | ||
|<code><small>{</small></code><code><small> "error": 0,</ | |<small><code>{ "error": 0,</code></small> | ||
<small><code> "message": "success"</code></small> | |||
<small><code>}</code></small> | |||
|<small>Метод асинхронный, статус тестирования можно запросить методом GET</small> | |||
<small>/info/{servicetype}/{model}</small> | |||
|}'''/see: работа с сервисом SEE''' | |||
{| class="wikitable" | |||
|+ | |||
!Метод | |||
!Описание | |||
!Входные параметры | |||
!Ответ | |||
!Пояснения | |||
|- | |||
|<small>GET</small> | |||
<small>/entities/{model}</small> | |||
|<small>Поиск сущностей</small> | |||
| | |||
* <small>'''model''' - идентификатор[ы] модели. Может быть указано несколько через запятую, тогда запрос будет обработан всеми указанными моделями</small> | |||
* <small>'''text''' - текст</small> | |||
* <small>'''similarity''' - порог похожести найденной сущности на эталонные, %. По умолчанию 70.</small> | |||
|<code><small>{ID-модели: [</small></code><code><small>{</small></code> | |||
<code><small>position: 0,</small></code> | |||
<code><small>confidence: 1,</small></code> | |||
<code><small>text: текст сущности,</small></code> | |||
<code><small>calculated: vaktsinatsiya</small></code> | |||
<code><small>}, {...}</small></code> | |||
<code><small>]</small></code> | |||
<code><small>}</small></code> | |||
|<small>Вернется массив со всеми моделями, в которых были найдены сущности. Каждая переменная с названием модели будет содержать список всех найденных сущностей.</small> | |||
* <small>'''position''' - позиция слова начала фрагмента, определяющего сущность</small> | |||
* <small>'''confidence''' - вероятность правильного определения сущности</small> | |||
* <small>'''calculated''' - поле, содержащее измененное постобработчиком (при его наличии) значение сущности либо код сущности, использованный при обучении модели</small> | |||
|- | |||
|<small>POST</small><small>/train/{model}</small> | |||
|<small>Запуск обучения модели future</small> | |||
| | |||
* <small>'''model''' - идентификатор модели</small> | |||
* <small>'''corpus''' - название корпуса с данными</small> | |||
* <small>'''noise''' - уровень шума для генерации синтезированных данных для обучения модели, от 1 до 5, по умолчанию 2</small> | |||
|<small><code>{</code><code> "error": 0,</code></small> | |||
<code><small> "message": "success"</small></code> | <code><small> "message": "success"</small></code> | ||
<code><small>}</small></code> | <code><small>}</small></code> | ||
|<small>Метод асинхронный, статус | |<small>Метод асинхронный, статус обучения можно запросить методом GET</small> | ||
<small>/info/{servicetype}/{model}</small> | <small>/info/{servicetype}/{model}</small> | ||
|- | |||
|<small>POST</small><small>/stop/{model}</small> | |||
|<small>Остановка обучения модели</small> | |||
| | |||
* <small>'''model''' - идентификатор модели</small> | |||
|<small><code>{</code><code> "error": 0,</code></small> | |||
<code><small> "message": "success"</small></code> | |||
<code><small>}</small></code> | |||
|<small>-</small> | |||
|} | |} | ||
Версия от 14:24, 9 июня 2023
Описание часто используемых параметров
| Параметр | Тип | Описание |
|---|---|---|
| servicetype | запрос | Тип сервиса. Возможные значения: spr, smc, see, sbs, tts |
| servertype | запрос | Тип группы серверов. Возможные значения: trainer (серверы обучения), cluster (рабочие серверы) |
| model | запрос | Название модели |
| modeltype | запрос | Тип модели. Возможные значения: future - планируемая/черновик, current - текущая/рабочая, previous - архивная. |
| error | ответ | Флаг ошибки |
| message | ответ | Информационное сообщение |
/lang: методы мультиязычности
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/ |
Предназначен для вывода информации о переводе элементов интерфейса на текущий язык | - | {
|
- |
/server: получение информации о серверах
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/get/addresses/{servicetype} |
Предназначен для вывода информации о сервера, обслуживающих данный сервис, а также настроеных параметров обращения к данным серверам |
|
{
|
|
| GET
/get/models/{servicetype}/{servertype} |
Предназначен для вывода информации о моделях указанного сервиса на каждом сервере указанного типа |
|
{
|
Вывод представляет собой массив url серверов, для каждого из которых указан список моделей |
/model: методы работы с моделями
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/add/{servicetype}/{model} |
Предназначен для создания пустой модели в указанном сервисе.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| POST
/install/{servicetype}/{model} |
Предназначен для установки импортированной или обученной модели на рабочих серверах.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| POST
/apply/{servicetype}/{model} |
Предназначен для применения установленной на рабочих серверах модели. После применения модель становится доступна для штатного режима работы.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| POST
/restore/{servicetype}/{model} |
Откат модели. Делает текущую рабочую модель черновиком (future), рабочие серверы после выполнения данного метода продолжают уже с возвращенной моделью. Схематично действия над modeltype в результате выполнения данного метода можно представить так:
|
|
{"error":0,
|
- |
| DELETE
/delete/{servicetype}/{model} |
Полностью удаляет модель из системы и со всех управляемых серверов.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| GET
/errors/{servicetype}/{model}/{modeltype} |
Запрос на получение списка ошибок модели после тестирования. Если тестирования не было, то содержит ошибки проверки на обучающем корпусе. Доступен для сервисов see и smc |
|
[ [true, predicted, phrase],
|
содержит список вложенных списков. В каждом три значения: правильное значение, предсказанное моделью значение и начальные данные (фраза) |
| GET
/export/{servicetype}/{model}/{modeltype} |
Экспортирует модель в виде zip-архива |
|
файл model.zip, где model - название модели | - |
| POST
/import/{servicetype}/{model} |
Импортирует модель в черновик (modeltype=future). |
|
{
|
- |
| GET
/info/{servicetype}/{model} |
Получение информации о каждом типе (modeltype) указанной модели. |
|
{
|
Итоговый массив содержит переменные типа modeltype, в каждой из который содержится информация о модели, более подробно о которой можно прочитать в руководствах пользователя smc и see. |
| GET
/info/{servicetype} |
Получение информации о всех моделях указанного сервиса. Аналогичен методу GET /info/{servicetype}/{model}, но выводит информацию обо всех моделях. |
|
{
|
- |
| GET
/log/{servicetype}/{model}/{modeltype} |
Выводит лог обучения и тестирования модели. Доступно для следующих сервисов: smc, see. |
|
[
|
- |
| GET
/handler/{servicetype}/{model} |
Получение файла-постобработчика из модели типа future. |
|
Файл handler.py | более подробно об обработчике см. руководства пользователя smc и see. |
| POST
/handler/{servicetype}/{model} |
Отправка файла-постобработчика в указанную модель типа future. Становится активным сразу после успешной отправки. |
|
{"error":0,
|
более подробно об обработчике см. руководства пользователя smc и see. |
| DELETE
/handler/{servicetype}/{model} |
Удаление постобработчика из модели типа future. |
|
{"error":0,
|
более подробно об обработчике см. руководства пользователя smc и see. |
/corpus: работа с данными для обучения моделей
Методы данного класса предназначены только для сервисов smc и see
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/list/{servicetype} |
Возвращает список всех корпусов данных для указанного типа сервиса |
|
[
|
Список с названиями всех имеющихся корпусов |
| GET/get/{servicetype} | Возвращает JSON с данными корпуса |
|
[
|
Список вложенных списков со значениями "Класс" и "Фраза" |
| GET/export/{servicetype} | Возвращает текстовый файл с данными, содержащий строки вида КЛАСС<TAB>ФРАЗА |
|
Файл name.txt | - |
| DELETE/delete/{servicetype} | Удаляет корпус с данными |
|
{
|
- |
| POST/put/{servicetype} | Перезаписывает корпус отправленным массивом данных |
|
{
|
- |
| POST/rename/{servicetype} | Переименование корпуса |
|
{
|
- |
| POST/copy/{servicetype} | Копирование корпуса |
|
{
|
- |
| POST/import/{servicetype} | Импорт корпуса. Возможен как из текстового файла со строками вида КЛАСС<TAB>ФРАЗА (доступно для smc и see), так и из логов работы системы (только для smc). Если на вход поступил файл csv, происходит импорт из файла, в противном случае из логов. |
|
{
|
- |
/spr: работа с сервисом SPR
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/stt/{model} |
Отправка файла на распознавание речи. Моно-файлы до 30 секунд распознаются без разбивки на фрагменты. Многоканальные файлы и файлы длиннее 30 секунд предварительно разбиваются на фрагменты по отсутствию речи. Настройка данных параметров описана в руководстве администратора SPR. В случае отправки переменной speakers=1, дополнительно производится поиск говорящих и получение метаданных по каждому говорящему. |
|
{
|
Более подробное описание доступно в пользователя SPR. |
/smc: работа с сервисом SMC
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/classify/{model} |
Классификация текстовой фразы |
|
[
|
Если multiclass=0 ответ будет в виде массива с одним классом, иначе - список массивов.
|
| POST/train/{model} | Запуск обучения модели future |
|
{ "error": 0,
|
Метод асинхронный, статус обучения можно запросить методом GET
/info/{servicetype}/{model} |
| POST/stop/{model} | Остановка обучения модели |
|
{ "error": 0,
|
- |
| POST/test/{model} | Запуск тестирования модели |
|
{ "error": 0,
|
Метод асинхронный, статус тестирования можно запросить методом GET
/info/{servicetype}/{model} |
/see: работа с сервисом SEE
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/entities/{model} |
Поиск сущностей |
|
{ID-модели: [{
|
Вернется массив со всеми моделями, в которых были найдены сущности. Каждая переменная с названием модели будет содержать список всех найденных сущностей.
|
| POST/train/{model} | Запуск обучения модели future |
|
{ "error": 0,
|
Метод асинхронный, статус обучения можно запросить методом GET
/info/{servicetype}/{model} |
| POST/stop/{model} | Остановка обучения модели |
|
{ "error": 0,
|
- |