SMC. Руководство пользователя: различия между версиями
Материал из Флора AI
(Новая страница: «===== '''Общее описание''' ===== Сервис Short Message Classifier предназначен для классификации текстовых фрагментов (фраз естественной речи). Принимает на вход текстовую строку и возвращает структурированные данные в формате JSON. ===== '''Термины и определения''' ===== Short M...») |
Нет описания правки |
||
| Строка 37: | Строка 37: | ||
|'''id''' - идентификатор модели | |'''id''' - идентификатор модели | ||
'''text''' - текст, подлежащий классификации | '''text''' - текст, подлежащий классификации | ||
'''multiclass''' - опция запроса нескольких классов при их наличии, если multiclass=1 | '''multiclass''' - опция запроса нескольких классов при их наличии, если multiclass=1 | ||
|Если multiclass=0 ответ будет в виде массива с одним классом, иначе - список массивов. Ниже пример такого списка. | |Если multiclass=0 ответ будет в виде массива с одним классом, иначе - список массивов. Ниже пример такого списка. | ||
[ | <code>[</code> | ||
{ class: Appointment, | |||
calculated: Appointment, | <code>{ class: Appointment,</code> | ||
confidence: 0.9993352, | |||
start: 0, | <code>calculated: Appointment,</code> | ||
length: 2 | |||
}, {...} | <code>confidence: 0.9993352,</code> | ||
] | |||
<code>start: 0,</code> | |||
<code>length: 2</code> | |||
<code>}, {...}</code> | |||
<code>]</code> | |||
'''start''' - позиция слова начала фрагмента, определяющего класс | '''start''' - позиция слова начала фрагмента, определяющего класс | ||
'''length''' - количество слов во фрагменте, определяющим класс | '''length''' - количество слов во фрагменте, определяющим класс | ||
'''confidence''' - вероятность правильного определения класса | '''confidence''' - вероятность правильного определения класса | ||
'''calculated''' - поле, содержащее измененное постобработчиком (при его наличии) значение класса. | '''calculated''' - поле, содержащее измененное постобработчиком (при его наличии) значение класса. | ||
|- | |- | ||
| Строка 73: | Строка 85: | ||
* создание новой модели из обучающего корпуса, текстового файла со строками CLASS<TAB>TEXT в переменной '''csv-file''' | * создание новой модели из обучающего корпуса, текстового файла со строками CLASS<TAB>TEXT в переменной '''csv-file''' | ||
|'''id''' - идентификатор модели | | | ||
'''zip-model''' - zip-архив с файлами модели '''from-existing-model''' - название модели, которое до | * '''id''' - идентификатор модели | ||
* '''zip-model''' - zip-архив с файлами модели | |||
* '''from-existing-model''' - название модели, которое должно быть переименовано в '''id''' | |||
* '''csv-file''' - текстовый файл для обучения модели | |||
* '''tokenizer''' - способ оцифровки фразы. entities или fragments. В первом случае упор делается на взаимосвязи сущностей, во втором на [https://ru.wikipedia.org/wiki/N-%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0 N-граммы] | |||
* '''normalization''' - уровень нормализации для устранения количественного перекоса в данных каждого класса, 0 - автоматическое определение, 1-9 - ручной режим. При увеличении значения происходит синтез данных для каждого класса. По умолчанию 1 | |||
* '''model-size''' - размер структуры модели. Чем больше данных, теб больше нужна модель. 0 - автоматический режим определения структуры модели. 1-5 - ручной режим. По умолчанию 3. | |||
* '''entity-cross-limit''' - от 0 до 1. Предельный коэффициент возможного наличия сущности в многих классах, выше которого сущность считается мусорной. По умолчанию 1, т.е. допуск всех найденных сущностей. | |||
* entity-rare-limit - от 0 до 1. Минимальный порог повторяемости сущности в классе, ниже которого сущность считается мусорной. По умолчанию 0, т.е. допуск всех найденных сущностей. | |||
|<code>{ error: INT, message: DESCRIPTION }</code> | |<code>{ error: INT, message: DESCRIPTION }</code> | ||
|- | |- | ||
Версия от 13:53, 8 июня 2023
Общее описание
Сервис Short Message Classifier предназначен для классификации текстовых фрагментов (фраз естественной речи). Принимает на вход текстовую строку и возвращает структурированные данные в формате JSON.
Термины и определения
Short Message Classifier (SMC) - сервис классификации текстовых фрагментов.
Модель — предварительно обученная специализированная нейронная сеть классификации коротких фраз.
Swagger UI – интерактивная веб-консоль с кратким описанием методов АPI и возможностью выполнять запросы к сервису SMC.
Описание методов API
Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом SMC. По умолчанию используется порт 6181/tcp.
Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"
Ответ сервиса представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6183 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.
| Метод | Тип | Описание | Входные параметры | Ответ |
|---|---|---|---|---|
| /smc/ | GET | Вывод списка моделей | - | { models: [model1,...,modelN] }
|
| /smc/classify/{id} | GET | Классификация текстовой фразы | id - идентификатор модели
text - текст, подлежащий классификации multiclass - опция запроса нескольких классов при их наличии, если multiclass=1 |
Если multiclass=0 ответ будет в виде массива с одним классом, иначе - список массивов. Ниже пример такого списка.
start - позиция слова начала фрагмента, определяющего класс length - количество слов во фрагменте, определяющим класс confidence - вероятность правильного определения класса calculated - поле, содержащее измененное постобработчиком (при его наличии) значение класса. |
| /smc/confusion/{id}/{type} | GET | Получение изображения матрицы ошибок | id - идентификатор модели
type - тип данных для построения матрицы, train или test |
Возвращает PNG изображение с матрицей ошибок |
| /smc/data/{id} | GET | Получение архива модели | id - идентификатор модели | ZIP-файл с моделью, либо { error: 1, message: DESCRIPTION }
|
| /smc/data/{id} | POST | Добавление модели. Может быть добавлена следующими способами:
|
|
{ error: INT, message: DESCRIPTION }
|
| /smc/data/{id} | DELETE | Удаление модели | id - идентификатор модели | { error: INT, message: DESCRIPTION }
|
| /smc/stt/{id} | POST | Отправка файла на распознавание речи. Моно-файлы до 30 секунд распознаются без разбивки на фрагменты. Многоканальные файлы и файлы длиннее 30 секунд предварительно разбиваются на фрагменты по отсутствию речи. Настройка данных параметров описана в руководстве администратора. В случае отправки переменной speakers=1, дополнительно производится поиск говорящих и получение метаданных по каждому говорящему. | id - идентификатор модели
wav - файл для распознавания speakers - опция разделения по говорящим |
text заполняется только для файлов менее 60 секунд. speakers, speaker, confidence (вероятность правильности определения говорящего) возвращаются только при отправке speakers=1.
|