UPS. Описание API: различия между версиями
Материал из Флора AI
| Строка 348: | Строка 348: | ||
<small>/lang/wallpaper</small> | <small>/lang/wallpaper</small> | ||
|<small>Отдает случайный фон рабочего стола из каталога "wallpapers</small> | |<small>Отдает случайный фон рабочего стола из каталога "wallpapers</small><small>" на сервере ups в виде jpeg</small> | ||
<small>" на сервере ups в виде jpeg</small> | |||
| - | | - | ||
|<small>image/jpeg</small> | |<small>image/jpeg</small> | ||
Версия от 11:07, 21 июня 2024
Описание часто используемых параметров
| Параметр | Тип | Описание |
|---|---|---|
| servicetype | запрос | Тип сервиса. Возможные значения: spr, smc, see, sbs, tts |
| servertype | запрос | Тип группы серверов. Возможные значения: trainer (серверы обучения), cluster (рабочие серверы) |
| model | запрос | Название модели |
| modeltype | запрос | Тип модели. Возможные значения: future - планируемая/черновик, current - текущая/рабочая, previous - архивная. |
| error | ответ | Флаг ошибки |
| message | ответ | Информационное сообщение |
"/external modules" методы внешних модулей
В этом разделе будут методы соответствующим образом оформленных внешних модулей
/auth: методы авторизации
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/auth/access |
Предназначен для получения токенов доступа | username - логин
password - пароль |
{
"x-access-token": "XXXXXXXXXXXXXXXXXXXX", "x-refresh-token": "XXXXXXXXXXXXXXXXXXXX"
} |
Токен доступа определяет какие из методов будут доступны конкретному пользователю. Формируется на основании роли. Дополнительный входной параметр во всех методах, кроме перечисленных в разделе "nopassword" конфигурационного файла. Время действия токена определяется параметром auth.accessLifeTime конфигурационного файла. |
| POST/auth/dataset/add | Предназначен для добавления dataset (набора данных) | {
"name": "test2" } |
{
"error": 0, "message": "success", "dataset_id": "XXXXXXXXXXXXX" } |
dataset (набор данных) используется для ограничения доступа к данным. В ответе метод вернет id созданного набора данных |
| DELETE/auth/dataset/delete/{id} | Предназначен для удаления dataset (набора данных) | id - идентификатор набора данных | {
|
- |
| POST/auth/dataset/modify/{id} | Предназначен для переименования dataset (набора данных) | id - идентификатор набора данныхdata - JSON c новыми параметрами | {
"error": 0, "message": "success" } |
Метод меняет все параметры набора данных, но на данный момент времени у набора данных кроме id только один параметр - наименование |
| GET/auth/datasets | Предназначен для получения списка наборов данных | - | [
{"id": "XXXXXXXXXXXXXXXXXX", "name": "XXX"}, {"id": "0", "name": "По умолчанию"} ] |
- |
| GET/auth/refresh | Предназначен для обновления токенов доступа | x-refresh-token - токен обновления доступа | {
"x-access-token": "XXXXXXXXXXXXXXXXXXXX", "x-refresh-token": "XXXXXXXXXXXXXXXXXXXX"
} |
Время в течение которого можно обновить доступ регулируется параметром auth.refreshLifeTime
конфигурационного файла. Служебный метод, используется в основном в вэбинтерфейсе чтобы не запрашивать лишний раз пароль |
| GET/auth/rights | Предназначен для получения списка прав доступа | - |
<<{
"РОЛЬ": [
"GET:/......"
],
"nopassword": [
"GET:/.......",
...............
<<...............
"POST:/......."
]
}
|
Служебный метод - по токену получает название роли и все права доступа этой роли а также общедоступные методы |
| POST/auth/role/add | Предназначен для создания роли | data - JSON с параметрами роли: {
"name": "проверка создания", "rights": [ "набор прав через запятую" ] } |
{
"error": 0, "message": "success", "role_id": "a7e68bb83169f864c2fc868401b5250c" } |
Служебный метод - используется вебинтерфейсом при создании роли |
| DELETE/auth/role/delete/{id} | Предназначен для удаления роли | id роли | {"error": 0,"message": "success"} | - |
| POST/auth/role/modify/{id} | Предназначен для изменения роли | id ролиdata - JSON с параметрами роли | {"error": 0,"message": "success"} | параметры как при создании роли. роль будет переписана |
| GET/auth/roles | Предназначен для получения списка ролей | - | [
{ "id": "XXXXXXXXXXX", "name": "имя роли", "rights": [ "набор прав через запятую" ] }, ............ ] |
- |
| POST
/auth/user/add |
Предназначен для создания нового пользователя | {
"username": "login_name", "fullname": "Отображаемое Имя","password": "XXXXX","role": "role_id", "dataset": "default dataset id", "datasets": [ "dataset id", ................. ] } |
{
"error": 0, "message": "success", "user_id": "XXXXXXXXXXXXXXXX" } |
- |
| DELETE
/auth/user/delete/{id} |
Предназначен для удаления пользователя | user_id | ||
| GET
/auth/user/get/{id} |
Предназначен для получения параметров пользователя | user_id | {
"id": "XXXXXXXXXX", "username": "loginname", "fullname": "Full Name", "role": "0", "dataset": "0", "datasets": [ "0", "2dc34d3454243522e5407d3a170815a2"] } |
- |
| GET
/auth/user/info |
Предназначен для получения параметров пользователя по его токену доступа | x-access-token | {"id": "XXXXXXXXXX",
"username": "loginname", "fullname": "Full Name", "role": "0", "dataset": "0", "datasets": [ "0", "2dc34d3454243522e5407d3a170815a2"] }, "rights": [ .......... ] |
- |
| GET
/auth/user/list |
Предназначен для получения списка пользователей с их параметрами | - | тоже самое что и в методе GET /auth/user/info, только для всех пользователей | - |
| POST
/auth/user/modify/{id} |
Предназначен для изменения параметров пользователя | data - параметры пользователя как при создании id - идентификатор пользователя | { "error": 0,
"message": "success" } |
- |
| POST
/auth/user/password |
Предназначен для смены пароля пользователя по его токену доступа | password | { "error": 0,"message": "success"
} |
- |
| GET
/auth/version |
Предназначен для получения верчии UPS | - | {
"version": "4.049 beta" } |
- |
/lang: методы мультиязычности
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/lang/ |
Предназначен для вывода информации о переводе элементов интерфейса на текущий язык | - | {
|
- |
| GET
/lang/config |
Отдает раздел "interface" конфигурационного файла | - | {
"wallpaper": { "login": true, "desktop": true, "workarea": true } } |
|
| GET
/lang/wallpaper |
Отдает случайный фон рабочего стола из каталога "wallpapers" на сервере ups в виде jpeg | - | image/jpeg |
/server: получение информации о серверах
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/server/get/addresses/{servicetype} |
Предназначен для вывода информации о сервера, обслуживающих данный сервис, а также настроеных параметров обращения к данным серверам |
|
{
|
|
| GET
/server/get/models/{servicetype}/{servertype} |
Предназначен для вывода информации о моделях указанного сервиса на каждом сервере указанного типа |
|
{
|
Вывод представляет собой массив url серверов, для каждого из которых указан список моделей |
/model: методы работы с моделями
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/model/add/{servicetype}/{model} |
Предназначен для создания пустой модели в указанном сервисе.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| POST
/model/apply/{servicetype}/{model} |
Предназначен для применения установленной на рабочих серверах модели. После применения модель становится доступна для штатного режима работы.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| DELETE
/model/delete/{servicetype}/{model} |
Полностью удаляет модель из системы и со всех управляемых серверов.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
- |
| GET
/model/errors/{servicetype}/{model}/{modeltype} |
Запрос на получение списка ошибок модели после тестирования. Если тестирования не было, то содержит ошибки проверки на обучающем корпусе. Доступен для сервисов see и smc |
|
[ [true, predicted, phrase],
|
содержит список вложенных списков. В каждом три значения: правильное значение, предсказанное моделью значение и начальные данные (фраза) |
| GET
/model/export/{servicetype}/{model}/{modeltype} |
метод экспортирует модель, модель скачивается в виде zip-архива |
|
файл model.zip, где model - название модели | - |
| POST
/model/handler/{servicetype}/{model} |
Отправка файла-постобработчика в указанную модель типа future. Становится активным сразу после успешной отправки. |
|
{"error":0,
|
более подробно об обработчике см. руководства пользователя smc и see. |
| DELETE
/model/handler/{servicetype}/{model} |
Удаление постобработчика из модели типа future. |
|
{"error":0,
|
более подробно об обработчике см. руководства пользователя smc и see. |
| GET
/model/handler/{servicetype}/{model} |
Получение файла-постобработчика из модели типа future. |
|
Файл handler.py | более подробно об обработчике см. руководства пользователя smc и see. |
| POST
/model/handler/{servicetype}/{model}/{modeltype} |
Отправка файла-постобработчика в указанную модель указанного типа. Становится активным сразу после успешной отправки. |
|
{
|
- |
| DELETE
/model/handler/{servicetype}/{model}/{modeltype} |
Удаление постобработчика в указанной модели указанного типа. |
|
{
|
|
| GET
/model/handler/{servicetype}/{model}/{modeltype} |
Получение файла-постобработчика из указанной модели указанного типа. |
|
Файл handler.py | |
| POST
/model/import/{servicetype}/{model} |
Импортирует модель в черновик (modeltype=future) |
|
{
|
- |
| GET
/model/info/{servicetype} |
Получение информации о всех моделях указанного сервиса. Аналогичен методу GET /info/{servicetype}/{model}, но выводит информацию обо всех моделях. |
|
{
|
- |
| GET
/model/info/{servicetype}/{model} |
Получение информации о каждом типе (modeltype) указанной модели. |
|
{
|
Итоговый массив содержит переменные типа modeltype, в каждой из который содержится информация о модели, более подробно о которой можно прочитать в руководствах пользователя smc и see. |
| POST
/model/install/{servicetype}/{model} |
Предназначен для установки импортированной или обученной модели на рабочих серверах.
Доступно для следующих сервисов: smc, see, spr. |
|
{
|
|
| GET
/model/log/{servicetype}/{model}/{modeltype} |
Выводит лог обучения и тестирования модели. Доступно для следующих сервисов: smc, see. |
|
[
|
- |
| POST
/model/restore/{servicetype}/{model} |
Откат модели. Делает текущую рабочую модель черновиком (future), рабочие серверы после выполнения данного метода продолжают уже с возвращенной моделью. Схематично действия над modeltype в результате выполнения данного метода можно представить так:
|
|
{"error":0,
|
- |
/corpus: работа с данными для обучения моделей
Методы данного класса предназначены только для сервисов smc и see
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/corpus/copy/{servicetype} |
метод api для копирования корпуса данных |
|
{
|
- |
| DELETE
/corpus/delete/{servicetype} |
Удаляет корпус с данными |
|
{
|
- |
| GET
/corpus/export/{servicetype} |
Возвращает текстовый файл с данными, содержащий строки вида КЛАСС<TAB>ФРАЗА |
|
Файл name.txt | - |
| GET
/corpus/get/{servicetype} |
Возвращает JSON с данными корпуса |
|
[
|
Список вложенных списков со значениями "Класс" и "Фраза" |
| POST
/corpus/import/{servicetype} |
Метод для импорта корпуса данных. Возможен как из текстового файла со строками вида КЛАСС<TAB>ФРАЗА (доступно для smc и see), так и из логов работы системы (только для smc). Если на вход поступил файл csv, происходит импорт из файла, в противном случае из логов. |
|
{
|
- |
| GET
/corpus/list/{servicetype} |
Возвращает список всех корпусов данных для указанного типа сервиса |
|
[
|
Список с названиями всех имеющихся корпусов |
| POST
/corpus/put/{servicetype} |
Перезаписывает корпус отправленным массивом данных |
|
{
|
- |
| POST
/corpus/rename/{servicetype} |
Переименование корпуса |
|
{
|
- |
/spr: работа с сервисом SPR
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET/spr/audio/{taskID} | Метод для получения аудиофайла отложенного задания | taskID - идентификатор задания в очереди | Wav файл | |
| GET/spr/queue | Метод для получения очереди отложенных заданий | {
"id задания": { "created": "ХХХХ-ХХ-ХХ ХХ:ХХ:ХХ", "status": "waiting", "filename": "wav" } Статусы ready - готово waiting - ожидание failed - сбой |
||
| DELETE/spr/queue/{taskID} | Метод для удаления задания из очереди | taskID - идентификатор задания в очереди | {
"error": 0, "message": "success" } |
|
| GET/spr/result/{taskID} | Метод для получения результатов распознавания отложенного задания | taskID - идентификатор задания в очереди | Вывод аналогичен выводу метода stt + добавлено поле status, которое содержит информацию о статусе отложенной задачи:
ready - готово waiting - ожидание not found - не найдена failed - сбой |
|
| POST
/stt/{model} |
Метод для отправки файла на распознавание речи. Моно-файлы до 30 секунд распознаются без разбивки на фрагменты. Многоканальные файлы и файлы длиннее 30 секунд предварительно разбиваются на фрагменты по отсутствию речи. Настройка данных параметров описана в руководстве администратора SPR. В случае отправки переменной speakers=1, дополнительно производится поиск говорящих и получение метаданных по каждому говорящему. |
|
{
|
Более подробное описание доступно в пользователя SPR. |
| GET/spr/waveform/{taskID} | Служебный метод для отображения аудио в графическом виде, содержит пики сигнала | taskID - идентификатор задания | {
<"error": 0, "waveform": [ 0.016, .......... .......... 0.015, 0.01 ] } |
/smc: работа с сервисом SMC
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/smc/classify/{model} |
метод для классификации текстовой фразы |
|
{
"classes": [ { "class": "название класса", "confidence": 1 }, { "class": "название класса 2", "confidence": 1 } ], "groups": [ { "group": "название группы 1", "intersection": 2, "classes": [ "название класса", "название класса 2" ] } ], "nearest": [ { "group": "название группы 2", "percent": 0.6666666666666666, "need": "название класса которого не хватило 1" }, { "group": ""название группы 3", "percent": 0.6666666666666666, "need": "название класса которого не хватило 2" } ] } |
|
| GET
/smc/compress |
Убирает из фразы слова не влияющие на ее смысл. |
|
{
"text": "сжатый текст" } |
|
| GET
/smc/correct |
Коррекция правописания. Изменяет неправильно написанные слова меняя их на наиболее близкие правильные (из знакомых модели). | text - текст для коррекции | ||
| GET
/smc/emotion |
Анализ эмоций. | text - фраза для анализа эмоций | { "emotion": "positive", "score": 0.9601 } | |
| POST
/smc/groups/{model} |
Добавляет к модели группы |
|
{
"error": 0, "message": "string" } |
|
| GET
/smc/groups/{model} |
Поиск групп по ранее полученным меткам. |
|
{
"groups": [ { "group": "Группа 1", "intersection": 3, "classes": [ "метка1_о", "метка2_о", "метка3_о" ] }, { "group": "Группа 2", "intersection": 2, "classes": [ "метка1_о", "метка5_о" ] } ], "nearest": [ { "group": "Группа до которой не хватило 1 метки", "percent": 0.75, "need": "недостающая метка_о" } ] } |
Ищет группы по набору меток. Результат - группы (если найдены) и ближайшие группы с указанием недостающих меток.
Позволяет сохранять контекст в виде меток и дозапрашивать группы с учетом контекста. |
| GET
/smc/normalize |
Обратная нормализация текста | text - текст для обработки | {"text": "<строка после обратной нормализации>"} | Пример: двадцать пятого апреля в пятом часу - 25 апреля в 5-м часу |
| GET
/smc/punctuate |
Расстановка знаков препинания | text - текст для преобразования | {
"text": "string" } |
|
| POST
/smc/stop/{model} |
Остановка обучения модели. | model - имя модели | {
"error": 0, "message": "string" } |
Удаляет тестовую версию модели с сервера обучения, тем самым прерывает обучение |
| POST
/smc/test/{model} |
Запуск тестирования модели smc |
|
{ "error": 0,
|
Метод асинхронный, статус тестирования можно запросить методом GET
/info/{servicetype}/{model} |
| POST
/smc/train/{model} |
Запуск обучения модели future |
|
{ "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,
|
- |
/sbs: работа с сервисом SBS
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| POST
/analyze/{model} |
Получение аналитических метаданных из голосового фрагмента |
|
{ age: { class: 20-29, confidence: 0.99 }, emotion: { class: SADNESS, confidence: 0.99 }, gender: { class: FEMALE, confidence: 0.99 } }
|
Более подробные сведения находятся в руководстве пользователя SBS. |
| POST
/search/{model} |
Поиск говорящего по базе слепков |
|
{ error: 0, speaker: Ivan, confidence: 0.79 }
|
- |
| DELETE
/speaker/{model}/{speaker_id} |
Удаление слепка из базы |
|
{ "error": 0,
|
- |
| GET
/speakers/{model} |
Получение списка всех слепков в модели |
|
[ "Kiryl","Artem", "vladimir", "Sergey", "vladimir2", "Alla" ]
|
- |
| POST
/verify/{model}/{speaker_id} |
Сравнение оцифрованного представления wav-файла cо слепком в базе |
|
{"error": 0,
|
- |
/tts: методы работы с сервисом tts
| Метод | Описание | Входные параметры | Ответ | Пояснения | |
|---|---|---|---|---|---|
| GET
/tts/dictionary/export |
Предназначен для экспорта пользовательского словаря в виде строк | - | привет прив+ет
|
- | |
| GET
/tts/dictionary/get |
Предназначен для экспорта пользовательского словаря в виде json | - |
|
- | |
| POST
/tts/dictionary/import |
Предназначен для загрузки пользовательского словаря в виде строк из файла .csv | csv файл с разделителем - "табуляция" | {
"error": 0, "message": "success", "answers": { "http://127.0.0.1:6186": "{\"error\": 0, \"message\": \"success\"}\n" } } |
Пользовательский словарь будет переписан, не дополнен! | |
| POST
/tts/dictionary/put |
Предназначен для загрузки пользовательского словаря в виде json списка | [ [ "привет", "прив+ет" ] ] | {
"error": 0, "message": "success", "answers": { "http://127.0.0.1:6186": "{\"error\": 0, \"message\": \"success\"}\n" } } |
Пользовательский словарь будет переписан, не дополнен! |
/qas: методы работы с сервисом qas
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/qas/ask |
Метод генерирует ответ на поставленный вопрос на основе информации из документов в базе |
возможные варианты: - "no" не использовать - "all" использовать все - "checked" использовать только проверенные
возможные варианты "yes" "no" |
{
"error": 0, "text": "Здесь будет текст ответа" } |
Ответ на вопрос генерируется на основе информации, содержащейся в одном или нескольких документах. Документы должны быть в текстовом формате. Ответ возвращается в формате JSON, его можно скачать. Если метод не смог найти ответ, возвращается код ошибки и сообщение. |
| GET
/qas/cachemaker/start |
Генерация ответов на вопросы в кэше. |
paraphrase - генерирует вариации ответов перефразированием уже проверенных ответов, если таковые имеются на вопросе generate - генерирует кэш через разные ответы на каждый вопрос по документации
|
{"error": 0, "message": "success"} | - |
| GET
/qas/cachemaker/status |
Состояние генерации ответов на вопросы в кэше.
статусы: started, stopped, если были ошибки поле ответа error будет содержать код ошибки |
- | {
"error": "", "status": "started", "progress": 33.33 } |
- |
| GET
/qas/cachemaker/stop |
Остановить генерацию ответов на вопросы в кэше. | - | {"error": 0, "message": "success"} | - |
| POST/qas/category/add | Добавить категорию с указанным именем |
|
В ответе - id созданной категории или сообщение об ошибке:
{ "error": 0, "message": "success", "id": "ad895085-2e48-439a-831e-b5f699b6a54a" } |
|
| DELETE
/qas/category/delete/{id} |
Удалить категорию |
|
{
"error": 0, "message": "success" } |
В ответе или сообщение об успехе или ошибке если категория используется или не существует |
| GET
/qas/category/list |
Получить список категорий | - | В ответе json с именами и id категорий | - |
| POST
/qas/category/modify/{id} |
Изменить категорию. У категории пока есть только наименование, поэтому метод только переименовывает категорию |
|
{
"error": 0, "message": "success" } |
- |
| POST
/qas/channel/add |
Добавление канала |
|
{
"error": 0, "message": "success", "id": "a46fb887-5d98-41e0-8299-bcc94f615e91" } |
В ответе id созданного канала или сообщение об ошибке |
| DELETE
/qas/channel/delete/{id} |
Удаление канала |
|
{
"error": 0, "message": "success" } |
- |
| GET
/qas/channel/list |
Получить список всех каналов | - | {
"error": 0, "channels": [ { "id": "1", "name": "voice" }, { "id": "56442779-e871-43fd-ae4d-caf4ab6d09b9", "name": "канал++" }, { "id": "0", "name": "default" } ] } |
- |
| POST
/qas/channel/modify/{id} |
Изменить канал. У канала пока есть только наименование, поэтому метод только переименовывает канал |
|
{
"error": 0, "message": "success" } |
|
| POST
/qas/doc/add |
Предназначен для загрузки текстового документа |
|
{ "error": 0, "message": "success", "id": "ebe2bc57551c2d17f892987d1f62306d" } |
Добавляет документ в базу. |
| DELETE
/qas/doc/delete/{id} |
Предназначен для удаления документа | id - идентификатор документа | {"error": 0,"message": "success"} | - |
| GET
/qas/doc/get/{id} |
Предназначен для выгрузки текста документа | id - идентификатор документа | {
"error": 0, "text": "Здесь будет полный текст документа" } |
|
| GET
/qas/doc/list |
Предназначен для получение списка имеющихся документов | - | {
"error": 0, "docs": [ { "id": "d4999cdee5ad1faf2cb3066ea1b5e96b", "title": "PVE. Установка сервисного пакета окружения", "category": "Техническая поддержка" }, { "id": "759042575b965745b9d2af869bca1740", "title": "UPS. Руководство администратора", "category": "Техническая поддержка" } ] } |
|
| POST
/qas/doc/modify/{id} |
Метод для обновления документа |
title: string, category: string, text: string } параметр который не меняется может отсутствовать в json
|
В случае успеха метод вернет статус выполнения операции (например, “success”), в случае неудачи - код ошибки.
{"error": INT, "message": DESCRIPTION} |
|
| POST
/qas/question/add |
Метод для добавления вопроса |
[ { "checked": true, "channel": "0", "answer": "ответ" } ]
["вопрос","еще вопрос"] |
В случае успеха метод вернет id вопроса, в случае неудачи - код ошибки.
{ "error": 0, "id": "527be9f0-f773-4a3e-bd0b-81b40a061d0d" } |
|
| DELETE
/qas/question/delete/{id} |
Метод для удаления вопроса | id - идентификатор вопроса | В случае успеха метод вернет статус выполнения операции (например, “success”), в случае неудачи - код ошибки.
|
|
| GET
/qas/question/get/{id} |
Метод для получения вопроса вместе с ответами и синонимами вопроса | id - идентификатор вопроса | {
"error": 0, "answers": [ { "checked": true, "channel": "0", "answer": "ответ" } ], "aliases": [ "вопрос", "синоним вопроса", "еще синоним вопроса" ] } |
|
| GET
/qas/question/list |
Метод для получения списка вопросов. | - | {
"error": 0, "questions": [ { "id": "77b42c9b-2075-4a5f-b6d9-a284bba7cf43", "question": "вопрос", "category": "9580b3b7-34cb-4d0e-ba75-d17313ead16d" }, { "id": "d1836e5e-010e-4f3a-b306-813c3acb7efb", "question": "n-й второй вопрос", "category": "7d8a3415-cb09-4dad-a169-478ba15ade47" } ] } |
|
| POST
/qas/question/modify/{id} |
Метод для модификации вопроса. Позволяет заменить как все параметры так и отдельные |
{ "answers": [ { "checked": true, "channel": "0", "answer": "новый ответ" } ], "question":"новый вопрос", "category": "a3801cc0-f8e5-4f3b-bb10-e42148cd772b", "aliases": [ "новый вопрос", "синоним", "еще синоним" ] }
|
В случае успеха метод вернет статус выполнения операции (например, “success”), в случае неудачи - код ошибки.
{"error": INT, "message": DESCRIPTION} |
|
| GET
/qas/questionmaker/start |
Запуск генерации вопросов для кэша. |
|
{"error": 0, "message": "success" } | По каждому документу генерируются по 5 вопросов на фрагмент. Количество фрагментов зависят от размера документа и настройки размера контекста из конфигурационного файла. Если вопрос сильно похож на существующий - новый не создается, а добавляется к существующему в aliases |
| GET
/qas/questionmaker/status |
Проверка состояния генерации | - | {
"error": "", "status": "stopped", "progress": 0 } |
Статусы: started, stopped.
Если были ошибки поле ответа error будет содержать код ошибки |
| GET
/qas/questionmaker/stop |
Прервать генерацию. | - | {"error": 0, "message": "success"} | |
| GET/qas/search | Предназначен для поиска фрагментов содержащих ответ |
|
{
"error": 0, "text": " Фрагмент 1:Здесь будет текст найденного фрагмента Фрагмент 2:Здесь будет текст найденного фрагмента", "fragments": [ { "id": "3a386b0a9e0e19efb0870685e1d0b484", "title": "Заголовок документа", "category": "Категория документа", "text": "Здесь будет текст найденного фрагмента" }, { "id": "44fd73ea1ac63f32cf18d79c854dbfe2", "title": "Заголовок документа", "category": "Категория документа", "text": "Здесь будет текст найденного фрагмента" } ] } |
- |
/transcription: методы работы со стенографией
| Метод | Описание | Входные параметры | Ответ | Пояснения |
|---|---|---|---|---|
| GET
/transcription/audio/{id} |
Предназначен для получения аудиофайла по id стенограммы | taskID - идентификатор стенограммы | wav файл сохраненной стенограммы | Идентификатор нужной стенограммы можно получить методом
"GET /transcription/list" |
| POST
/transcription/create |
Предназначен для создания стенограммы из завершенного задания в очереди распознавания | taskID - идентификатор задания из очереди | {
"error": 0, "message": "success", "id": "74721a3b-9055-4650-9afb-de4d103cafc7" } |
В ответ придет id созданной стенограммы |
| DELETE
/transcription/delete/{id} |
Предназначен для удаления стенограммы | id - идентификатор стенограммы | {"error": 0,"message": "success"} | |
| GET
/transcription/get/{id} |
Предназначен для получения стенограммы | id - идентификатор стенограммы | стенограмма в json формате | Используется для отображения стенограммы в веб интерфейсе |
| GET
/transcription/list |
Предназначен для получения списка сохраненных стенограмм | - | [
{ "id": "926e8d25-4275-4a78-906b-a1109cdacbea", "name": "название", "model": "big", "created": "2024-03-29 12:37:42", "modified": "2024-04-24 16:09:09", "user": "0", "dataset": "0" } ] |
- |
| POST
/transcription/save/{id} |
Предназначен для сохранения стенограмы | стенограмма в json формате
id стенограммы |
- | Используется для сохранения изменений по нажатию кнопки "сохранить" |
| GET
/transcription/waveform/{id} |
Служебный метод для отображения аудио в графическом виде, содержит пики сигнала | id - идентификатор стенограммы | {
<<"error": 0, "waveform": [ 0.016, .......... .......... 0.015, 0.01 ] } |
- |