UPS. Описание API: различия между версиями
Материал из Флора AI
KorolkovS (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
| Строка 2544: | Строка 2544: | ||
*<small>'''robot_id''' - id робота</small> | *<small>'''robot_id''' - id робота</small> | ||
* | *<small>'''endpoint''' - id точки, в которую передать управление диалогом (необязательный параметр, используется для исходящих оповещений)</small> | ||
| style="width: 50%" |<small>{ "error": 0,</small><small> "question": "Вопрос",</small> | | style="width: 50%" |<small>{ "error": 0,</small><small> "question": "Вопрос",</small> | ||
Версия от 14:05, 16 июля 2025
Описание часто используемых параметров
| Параметр | Тип | Описание |
|---|---|---|
| servicetype | запрос | Тип сервиса. Возможные значения: spr, smc, see, sbs, tts. |
| servertype | запрос | Тип группы серверов. Возможные значения: trainer (серверы обучения), cluster (рабочие серверы). |
| model | запрос | Название модели. |
| modeltype | запрос | Тип модели. Возможные значения: future — планируемая/черновик, current — текущая/рабочая, previous — архивная. |
| error | ответ | Флаг ошибки. |
| message | ответ | Информационное сообщение. |
"/external modules" методы внешних модулей
В этом разделе будут методы соответствующим образом оформленных внешних модулей
/auth: методы авторизации
| POST/auth/access | Получение токенов доступа. Токен доступа определяет, какие из методов будут доступны конкретному пользователю. Формируется на основании роли. Дополнительный входной параметр во всех методах, кроме перечисленных в разделе «nopassword» конфигурационного файла. Время действия токена определяется параметром auth.accessLifeTime конфигурационного файла. | ||
|---|---|---|---|
|
{
"x-access-token": "XXXXXXXXXXXXXXXXXXXX", "x-refresh-token": "XXXXXXXXXXXXXXXXXXXX" } | ||
| POST/auth/dataset/add | Добавление dataset (набора данных). Dataset (набор данных) используется для ограничения доступа к данным. В ответе метод вернет id созданного набора данных. | ||
|
{
"error": 0 "message": "success", "dataset_id": "XXXXXXXXXXXXX" } | ||
| DELETE/auth/dataset/delete/{id} | Удаление dataset (набора данных). | ||
|
{
"error": 0, "message": "success" } | ||
| POST/auth/dataset/modify/{id} | Переименование dataset (набора данных). Метод меняет все параметры набора данных, но на данный момент времени у набора данных, кроме id, только один параметр — наименование. | ||
|
{
"error": 0, "message": "success" } | ||
| GET/auth/datasets | Получение списка наборов данных. | ||
| Нет входных параметров | [
{"id": "XXXXXXXXXXXXXXXXXX", "name": "XXX"}, {"id": "0", "name": "По умолчанию"} ] | ||
| GET/auth/refresh | Обновление токенов доступа. Время, в течение которого можно обновить доступ, регулируется параметром auth.refreshLifeTime конфигурационного файла. Служебный метод, используется в основном в веб-интерфейсе, чтобы не запрашивать лишний раз пароль. | ||
|
{
"x-access-token": "XXXXXXXXXXXXXXXXXXXX", "x-refresh-token": "XXXXXXXXXXXXXXXXXXXX" } | ||
| GET/auth/rights | Получение списка прав доступа. Служебный метод — по токену получает название роли и все права доступа этой роли, а также общедоступные методы. | ||
| Нет входных параметров | <<<{ "РОЛЬ": [
"GET:/......" ], "nopassword": [ "GET:/.......", ............... <<<............... "POST:/......." ] } | ||
| POST/auth/role/add | Создание роли. Служебный метод — используется веб-интерфейсом при создании роли. | ||
"name": "проверка создания", "rights": [ "набор прав через запятую" ] } |
{
"error": 0, "message": "success", "role_id": "a7e68bb83169f864c2fc868401b5250c" } | ||
| DELETE/auth/role/delete/{id} | Удаление роли. | ||
|
{"error": 0,"message": "success"} | ||
| POST/auth/role/modify/{id} | Изменение роли. Параметры как при создании роли. Роль будет переписана. | ||
"name": "проверка создания", "rights": [ "набор прав через запятую" ] } |
{"error": 0,"message": "success"} | ||
| GET/auth/roles | Получение списка ролей. | ||
| Нет входных параметров | [{
"id": "XXXXXXXXXXX", "name": "имя роли", "rights": [ "набор прав через запятую" ] },............] | ||
| POST/auth/user/add | Создание нового пользователя. Метод вернет или id нового пользователя или описание ошибки | ||
"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} | Удаление пользователя | ||
|
{"error": 0,"message": "success"} | ||
| GET/auth/user/get/{id} | Получение параметров пользователя | ||
|
{"id": "XXXXXXXXXX",
"username": "loginname", "fullname": "Full Name", "role": "0", "dataset": "0", "datasets": [ "0", "2dc34d3454243522e5407d3a170815a2" ] } | ||
| GET/auth/user/info | Получение параметров пользователя по его токену доступа. Служебный метод - для предоставления прав текущему пользователю по его токену | ||
|
{"id": "XXXXXXXXXX",
"username": "loginname", "fullname": "Full Name", "role": "0", "dataset": "0", "datasets": [ "0", "2dc34d3454243522e5407d3a170815a2"] }, "rights": [..........] } | ||
| GET/auth/user/list | Получение списка пользователей с их параметрами. Тоже самое что и в методе GET /auth/user/info, только для всех пользователей | ||
| Нет входных параметров | [
{"id": "XXXXXXXXXX", "username": "loginname", "fullname": "Full Name", "role": "0", "dataset": "0", "datasets": [ "0", "2dc34d3454243522e5407d3a170815a2"] }, "rights": [..........] }, ...... ] | ||
| POST/auth/user/modify/{id} | Изменение параметров пользователя | ||
|
{ "error": 0,
"message": "success"} | ||
| POST/auth/user/password | Смена пароля пользователя по его токену доступа. | ||
|
{ "error": 0,"message": "success"} | ||
| POST/auth/userlog | Получение действий пользователя за период времени по его токену | ||
|
{
"error": 0, "message": "success", "data": [ [ "время", "id", "метод", {измененные данные в формате метода} ], [ "время", "id", "метод", {измененные данные в формате метода} ], ......... } | ||
| GET/auth/version | Получение версии сервиса ups | ||
| Нет входных параметров | {
"version": "4.082 release" } | ||
/lang: методы мультиязычности
| GET/lang/ | Выводит информацию о переводе элементов интерфейса на текущий язык | ||
|---|---|---|---|
| Нет входных параметров | { "see":"Сущности",
"smc":"Классификатор", ... } | ||
| GET/lang/wallpaper | Отдает случайный фон рабочего стола в виде jpeg из каталога «wallpapers» на сервере ups | ||
| Нет входных параметров | image/jpeg | ||
/server: получение информации о серверах
| GET/server/get/addresses/{servicetype} | Вывод информации о серверах, обслуживающих данный сервис, а также настроенных параметров обращения к данным серверам.
trainer — сервер обучения, cluster — рабочие серверы, connect — время на подключение, read — время на ответ, failed — время пребывания в сбойных, install — время на установку модели, info — время на получение информации о модели, counter — счетчик запросов, current — индекс последнего опрошенного cluster-сервера fail — массив сбойных серверов со временем постановки в сбой. | ||
|---|---|---|---|
|
{ "trainer": "http://127.0.0.1:6181",
"cluster": [ "http://127.0.0.1:6181" ], "timers": { "connect": 0.5, "read": 1, "failed": 600, "install": 60, "info": 3 }, "counter": 0, "current": 0, "fail": {"http://127.0.0.1:6181":1686295678} } | ||
| GET/server/get/models/{servicetype}/{servertype} | Вывод информации о моделях указанного сервиса на каждом сервере указанного типа. Вывод представляет собой массив URL-серверов, для каждого из которых указан список моделей. | ||
|
{ "http://127.0.0.1:6181": [
"model1", ... "modelN" ], ... } | ||
/model: методы работы с моделями
| POST/model/add/{servicetype}/{model} | Создание пустой модели в указанном сервисе. Доступно для следующих сервисов: smc, see, spr. | ||
|---|---|---|---|
|
{
"error":0, "message":"success" } | ||
| POST/model/apply/{servicetype}/{model} | Применение установленной на рабочих серверах модели. После применения модель становится доступна для штатного режима работы. Доступно для следующих сервисов: smc, see, spr. | ||
|
{
"error":0, "message":"success" } | ||
| DELETE/model/delete/{servicetype}/{model} | Полностью удаляет модель из системы и со всех управляемых серверов. Доступно для следующих сервисов: smc, see, spr. | ||
|
{
"error":0, "message":"success" } | ||
| GET/model/errors/{servicetype}/{model}/{modeltype} | Запрос на получение списка ошибок модели после тестирования/обучения. Доступен для сервисов see и smc. Ответ содержит список вложенных списков. В каждом три значения: правильное значение, предсказанное моделью значение и начальные данные (фраза). | ||
- train ошибки обучения - test ошибки тестирования - mark ошибки авторазметки
|
[ [true, predicted, phrase],
... ] | ||
| GET/model/export/{servicetype}/{model}/{modeltype} | Экспорт модели, модель скачивается в виде zip-архива. | ||
|
Файл model.zip, где model — название модели | ||
| DELETE/model/handler/{servicetype}/{model} | Удаление постобработчика из модели типа future. Более подробно об обработчике см. руководства пользователя smc и see. | ||
|
{"error":0,
"message":"success" } | ||
| POST/model/handler/{servicetype}/{model} | Отправка файла-постобработчика в указанную модель типа future. Обработчик становится активным сразу после успешной отправки. Более подробно об обработчике см. руководства пользователя smc и see. | ||
|
{"error":0,
"message":"success" } | ||
| GET/model/handler/{servicetype}/{model} | Получение файла-постобработчика из модели типа future. | ||
|
Файл handler.py | ||
| DELETE/model/handler/{servicetype}/{model}/{modeltype} | Удаление постобработчика в указанной модели указанного типа. | ||
|
{
"error":0, "message":"success" } | ||
| POST/model/handler/{servicetype}/{model}/{modeltype} | Отправка файла-постобработчика в указанную модель указанного типа. Становится активным сразу после успешной отправки. | ||
|
{
"error":0, "message":"success" } | ||
| GET/model/handler/{servicetype}/{model}/{modeltype} | Получение файла-постобработчика из указанной модели указанного типа. | ||
|
Файл handler.py | ||
| POST/model/import/{servicetype}/{model} | Импортирует модель в черновик (modeltype=future) | ||
|
{
"error":0, "message":"success" } | ||
| GET/model/info/{servicetype} | Получение информации о всех моделях указанного сервиса. Аналогичен методу GET /info/{servicetype}/{model}, но выводит информацию обо всех моделях. | ||
|
{ "model1": {
"previous": null, "current": null, "future": { "status": "empty", ... } }, ... } | ||
| GET/model/info/{servicetype}/{model} | Получение информации о каждом типе (modeltype) указанной модели. Итоговый массив содержит переменные типа modeltype, в каждой из который содержится информация о модели. | ||
|
{ "previous": null,
"current": { "status": "trained", ... }, "future": { "status": "trained", ... } } | ||
| POST/model/install/{servicetype}/{model} | Установка импортированной или обученной модели на рабочих серверах.
Доступно для следующих сервисов: smc, see, spr. | ||
|
{
"error":0, "message":"success" } | ||
| GET/model/log/{servicetype}/{model}/{modeltype} | Выводит лог обучения и тестирования модели. Доступно для следующих сервисов: smc, see. | ||
|
[
"training", "preparing data", "tokenizing", ... ] | ||
| POST/model/restore/{servicetype}/{model} | Откат модели. Делает текущую рабочую модель черновиком (future), рабочие серверы после выполнения данного метода продолжают уже с возвращенной моделью. Схематично действия над modeltype в результате выполнения данного метода можно представить так:
| ||
|
{"error":0,
"message":"success" } | ||
/corpus: работа с данными для обучения моделей
Методы данного класса предназначены только для сервисов smc и see
| GET/corpus/automark/list | Перечень заданий автоматической маркировки корпусов. | ||
|---|---|---|---|
| Нет входных параметров | { "error": 0,
"message": "success", "tasks": [ { "id": "29d9da98-d6c1-4dc1-bbc9-111309816002", "taskname": "test_doc", "status": "finished" }, { "id": "1a5e9bdc-9f98-49d2-84de-1a9bde8fc37c", "taskname": "sssss", "status": "finished" } ] } | ||
| GET/corpus/automark/result/{id} | Результат выполнения задания на автомаркировку корпуса. Если задание завершено в ответе придет маркированый корпус и время старта и финиша задания | ||
|
{
"error": 0, "message": "success", "started": "2024-10-09 18:05:51", "finished": "2024-10-09 18:05:51", "corpus": [[ [], [ ["тэг"],"фраза 1"]], [ [], [["тэг"],"фраза 2"]] ] } | ||
| GET/corpus/automark/start | Начать автоматическую разметку корпуса. | ||
[ [класс1,... классН], текст ]]
[ метка, [синоним, синоним2 ... синоним Н], порог ]]
|
{
"error": 0, "message": "success", "id": "уникальный id задания" } | ||
| GET/corpus/automark/status/{id} | Получить статус задания на автоматическую разметку корпуса. | ||
|
{
"error": "", "status": "finished", "started": "2024-10-09 13:49:46", "finished": "2024-10-09 13:49:46", "progress": 0 } | ||
| GET/corpus/automark/stop/{id} | Прервать задание на автоматическую разметку корпуса. | ||
|
{ "error": 0,
"message": "success"} | ||
| POST/corpus/copy/{servicetype} | Копирование корпуса данных | ||
|
{
"error": 0, "message": "success" } | ||
| DELETE/corpus/delete/{servicetype} | Удаляет корпус с данными | ||
|
{ "error": 0,
"message": "success"} | ||
| GET/corpus/export/{servicetype} | Возвращает текстовый файл с корпусом, содержащий строки вида КЛАСС<TAB>ФРАЗА | ||
|
Файл name.txt | ||
| GET/corpus/get/{servicetype} | Возвращает JSON с данными корпуса | ||
|
[
| ||
| POST/corpus/import/{servicetype} | Метод для импорта корпуса данных. Возможен как из текстового файла со строками вида КЛАСС<TAB>ФРАЗА (доступно для smc и see), так и из логов работы системы (только для smc). Если на вход поступил файл csv, происходит импорт из файла, в противном случае — из логов. | ||
|
{
"error": 0, "message": "success" } | ||
| GET/corpus/list/{servicetype} | Возвращает список всех корпусов данных для указанного типа сервиса | ||
|
[ "корпус1",
"корпус2", ...] | ||
| POST/corpus/put/{servicetype} | Перезаписывает корпус отправленным массивом данных | ||
|
{
"error": 0, "message": "success" } | ||
| POST/corpus/rename/{servicetype} | Переименование корпуса | ||
|
{
"error": 0, "message": "success" } | ||
/marks: работа с наборами меток в smc
| POST/marks/add | Добавление набора менток | ||
|---|---|---|---|
["синоним1", "синоним2", "синоним3", "синонимN" ], 0.9 # достоверность для метки (0 - 1) ], [ "меткаN", ["синоним11", "синоним21","синоним31", "синонимN1"], 0.9 # достоверность для метки (0 - 1) ] ]
|
{
"error": 0, "message": "success", "id": "132310fa-98c7-4b12-896f-ff113827d077" } | ||
| DELETE/marks/delete/{id} | Удаление набора меток | ||
|
{ "error": 0,
"message": "success" } | ||
| GET/marks/export/{id} | Получение набора меток в виде строк | ||
|
Пример:
метка1 синоним1,синоним2,синоним3,синонимN 0.9 меткаN синоним11,синоним21,синоним31,синонимN1 0.9 | ||
| GET/marks/get/{id} | Получение набора меток в виде json | ||
|
Пример:
{ "error": 0, "message": "success", "data": [ ["метка1", [ "синоним1", "синоним2", "синоним3", "синонимN" ], 0.9 ], ["меткаN", ["синоним11","синоним21", "синоним31","синонимN1"], 0.9 ] ] } | ||
| POST/marks/import/{id} | Импорт в существующий набор меток из файла. Набор будет переписан из файла | ||
|
{ "error": 0,
"message": "success" } | ||
| GET/marks/list | Получение списка наборов меток | ||
| Нет входных параметров | Пример:
{ "error": 0, "message": "success", "result": [ { "id": "416fbe08-19e9-453c-b140-37008a08a76c","name": "test" }, {"id": "16e77fa2-7c4d-47f9-8644-6385876525d6","name": "Рыжик" }, {"id": "132310fa-98c7-4b12-896f-ff113827d077", "name": "test" } ]} | ||
| POST/marks/put/{id} | Импорт в существующий набор меток из json строки. Набор будет переписан | ||
["синоним1", "синоним2", "синоним3", "синонимN" ], 0.9 # достоверность для метки (0 - 1) ], [ "меткаN", ["синоним11", "синоним21","синоним31", "синонимN1"], 0.9 # достоверность для метки (0 - 1) ] ]
|
{ "error": 0,
"message": "success" } | ||
| POST/marks/rename/{id} | Присваивает новое наименование существующему набору меток | ||
|
{ "error": 0,
"message": "success" } | ||
/spr: работа с сервисом SPR
| GET/spr/audio/{taskID} | Получение аудиофайла отложенного задания | ||
|---|---|---|---|
|
Wav файл | ||
| GET/spr/queue | Получение очереди отложенных заданий. Выводит очередь со статусами выполнения заданий. Статусы: ready — готово, waiting — ожидание, failed — сбой | ||
| Нет входных параметров | { "id задания": {
"created": "ХХХХ-ХХ-ХХ ХХ:ХХ:ХХ", "status": "waiting", "filename": "wav"} | ||
| DELETE/spr/queue/{taskID} | Удаление задания из очереди | ||
|
{"error": 0,
"message": "success"} | ||
| GET/spr/result/{taskID} | получениеПезультатов распознавания отложенного задания. Статусы: ready — готово, waiting — ожидание, failed — сбой, not found — не найдена | ||
|
Вывод аналогичен выводу метода stt + добавлено поле status, которое содержит информацию о статусе отложенной задачи | ||
| POST/spr/stt/{model} | Отправка файла на распознавание речи. Моно-файлы до 30 секунд распознаются без разбивки на фрагменты. Многоканальные файлы и файлы длиннее 30 секунд предварительно разбиваются на фрагменты по отсутствию речи. Настройка данных параметров описана в руководстве администратора spr. | ||
|
В случае async=1 возвращается только taskID, результат по taskID смотреть в методе /spr/result.
Для коротких файлов:
Для транскрибации больших файлов:
| ||
| GET/spr/waveform/{taskID} | Служебный метод для отображения аудио в графическом виде, содержит пики сигнала. | ||
|
{"error": 0,
"waveform": [ 0.016, 0.015, 0.01 ] } | ||
/smc: работа с сервисом SMC
| GETsmc/classify/{model} | Классификация текстовой фразы. В случае если модель была создана из меток, в ответе groups и nearest будут пустыми, а ответ будет построен без учета confidenceThreshold из запроса.
В ответе:
| ||
|---|---|---|---|
|
{ "corrected": "исправленный текст", # при наличии флага коррекции "classes": [
{ "class": "название класса", "confidence": 1 }, { "class": "название класса 2", "confidence": 1 } ], "groups": [ { "group": "название группы 1", "intersection": 2, "classes": [ "название класса", "название класса 2" ] } ], "nearest": [ { "group": "название группы 2", "percent": 0.67, "need": "название класса которого не хватило 1" }, { "group": ""название группы 3", "percent": 0.67, "need": "название класса которого не хватило 2" } ] } | ||
| GET/smc/compress | Убирает из фразы слова не влияющие на ее смысл. | ||
|
{ "text": "сжатый текст"} | ||
| GET/smc/correct | Коррекция правописания. Изменяет неправильно написанные слова, меняя их на наиболее близкие правильные (из знакомых модели). Если модель коррекции не смогла предложить правильное написание текста, метод вернёт текст неизменным. | ||
|
{ "text": "корректный текст" } | ||
| GET/smc/emotion | Анализ эмоций. На выходе один из вариантов: positive, negative, neutral. | ||
| 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 | Обратная нормализация текста. Пример: двадцать пятого апреля в пятом часу — 25 апреля в 5-м часу. | ||
|
{"text": "<строка после обратной нормализации>"} | ||
| GET/smc/punctuate | Расстановка знаков препинания | ||
|
{ "text": "string" } | ||
| POST/smc/stop/{model} | Остановка обучения модели. Удаляет тестовую версию модели с сервера обучения, тем самым прерывает обучение. | ||
|
{ "error": 0,
"message": "string"} | ||
| POST/smc/test/{model} | Запуск тестирования модели smc. Метод асинхронный, статус тестирования можно запросить методом GET/info/{servicetype}/{model} | ||
|
{ "error": 0,
"message": "success" } | ||
| GET/smc/toxicity | Определение токсичности высказывания. Высказывание анализируется по 4 параметрам, по каждому выдается вероятность от 0 до 1: | ||
|
{ "insult": 0.13, # оскорбление
"obscenity": 0, # брань "threat": 0, # угрозы "politeness": 0.53 вежливость} | ||
| POST/smc/train/{model} | Добавление модели. | ||
|
{ error: INT, message: DESCRIPTION } | ||
/see: работа с сервисом SEE
| GET/see/entities/{model} | Поиск сущностей. Вернется массив со всеми моделями, в которых были найдены сущности (модели для поиска указываются в поле id). Каждая переменная с названием модели будет содержать список всех найденных сущностей. | ||
|---|---|---|---|
|
{ ID-модели: [
{ position: 0, # позиция слова начала фрагмента, определяющего сущность confidence: 1, #вероятность правильного определения сущности text: текст сущности, calculated: vaktsinatsiya # поле, содержащее значение сущности, использованный при обучении модели }, {...} ] } | ||
| POST/see/stop/{model} | Остановка обучения модели | ||
|
{ "error": 0,
"message": "success"} | ||
| POST/see/train/{model} | Запуск обучения модели future | ||
|
{ "error": 0,
"message": "success"} | ||
/sbs: работа с сервисом SBS
| POST/sbs/analyze | Получение аналитических метаданных из голосового фрагмента. Вернется массив с метаданными голосового фрагмента. | ||
|---|---|---|---|
|
Пример:
{ age: { class: 20-29, # {"00-05", "06-12", "13-19", "20-29", "30-39", "40-49", "50-59", "60+"} confidence: 0.99 }, emotion: { class: SADNESS, # { "ANGER", "BORE", "DISAPPOINTMENT", "DISGUST", "EXCITEMENT", "FEAR", "NEUTRAL", "PAIN", "PLEASURE", "SADNESS", "SUPRISE"} confidence: 0.99 }, gender: { class: FEMALE, # { "MALE", "FEMALE" } confidence: 0.99 } } | ||
| POST/sbs/noiselevel | Возвращает процент зашумленности аудио | ||
|
Пример ответа:
| ||
| POST/sbs/search | Поиск говорящего по базе слепков. | ||
|
Пример ответа:
{ error: 0, speaker: Ivan, confidence: 0.79 } | ||
| POST/sbs/speakers/add | Добавление слепка в базу. | ||
|
{
"error": 0, "id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433" } | ||
| DELETE/sbs/speakers/delete/{id} | Удаление слепка из базы. | ||
|
{ error: INT, message: DESCRIPTION } | ||
| GET/sbs/speakers/list | Получение списка всех слепков. | ||
| Входные параметры отсутствуют | [ {
"id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433", "name": "наименование слепка" }] | ||
| POST/sbs/speakers/modify/{id} | Дообучение слепка. | ||
|
{ "error": 0,
"message": "Success"} | ||
| POST/sbs/verify/{id} | Сравнение wav-файла cо слепком в базе. В ответе - вероятность совпадения от 0 до 1. | ||
|
{ "error": 0, "confidence": 0.78 } | ||
/tts: методы работы с сервисом tts
| GET/tts/dictionary/export | Выгрузка пользовательского словаря ударений. | ||
|---|---|---|---|
| Входные параметры отсутствуют | Простой текст — строки со словом и его интерпретацией с ударением. | ||
| GET/tts/dictionary/get | Выгрузка пользовательского словаря ударений в виде json. | ||
| Входные параметры отсутствуют | [ [ "слово", "замена слова с удар+ением"],
[ "слово2", "замена слова2 с удар+ением"], ...] | ||
| POST/tts/dictionary/import | Загрузка пользовательского словаря ударений. Текущий словарь будет переписан. | ||
|
{ "error": 0,
"message": "сообщение о статусе результата"} | ||
| POST/tts/dictionary/put | Загрузка пользовательского словаря ударений в виде json. Текущий словарь будет переписан. | ||
|
{
"error": 0, "message": "сообщение о статусе результата" } | ||
| POST/tts/normalize | Нормализация текста — перевод цифр в слова и расстановка ударений (ударения только в нормализованной части фразы), например «в понедельник 10.10.2025» -> «в понедельник дес+ятого октябр+я две т+ысячи дв+адцать п+ятого г+ода». | ||
|
{ "error": 0,
"message": "success", "text": "нормализованный текст" } | ||
| POST/tts/revoice/{revoicer} | Модификация или искажение голоса | ||
|
wav-файл с модифицированным (искаженным) голосом | ||
| GET/tts/revoicers | Перечень моделей модификации или искажения голоса. Модели поставляются только в составе дистрибутива. Модель distortion — искажение голоса, делает голос неузнаваемым и речь неразборчивой. | ||
| Входные параметры отсутствуют | [ "distortion" ] | ||
| POST/tts/synthesize/{model} | Синтез звукового файла из текста/ | ||
|
файл с синтезированой фразой | ||
/qas: методы работы с сервисом qas
| GET/qas/ask | Метод генерирует ответ на поставленный вопрос на основе информации из документов в базе. Ответ на вопрос генерируется на основе информации, содержащейся в одном или нескольких документах. Документы должны быть в текстовом формате. Ответ возвращается в формате JSON, его можно скачать. Если метод не смог найти ответ, возвращается код ошибки и сообщение. | |
|---|---|---|
возможные варианты: - "no" не использовать - "all" использовать все - "checked" использовать только проверенные
|
{
"error": 0, "text": "Здесь будет текст ответа" } | |
| GET/qas/cachemaker/start | Генерация ответов на вопросы в кэше. | |
|
{"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 | Добавление канала. В ответе id созданного канала или сообщение об ошибке | |
|
{"error": 0,
"message": "success", "id": "a46fb887-5d98-41e0-8299-bcc94f615e91"} | |
| 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/chat | Поиск ответа за пределами документов. На стадии разработки, не используется. | |
|
Пример ответа на вопрос "как пройти в библиотеку"{"error": 0,
"text": "1. Проверить время работы библиотеки (обычно от 9 до 20)\n2. Проверить местоположение библиотеки на карте или с помощью сервиса Google Maps\n3. Убедиться, что у вас есть необходимые документы для входа (паспорт, карта члена библиотеки и т.д.)\n4. Посетить библиотеку по адресу: [адрес библиотеки]\n5. Проверить правила поведения в библиотеке перед входом" } | |
| GET/qas/chat | Поиск ответа за пределами документов. Аналогичен методу "POST/qas/chat". Не поддерживает большие тексты.На стадии разработки, не используется. | |
|
Аналогично методу "POST/qas/chat". | |
| POST/qas/cleandoc | Очистка документа от лишней информации | |
|
{"error": 0, "message": "success", "text": "измененный текст"} | |
| POST/qas/doc/add | Загрузить текстовый документ. Добавляет документ в базу. В ответе — id созданного документа или сообщение об ошибке. | |
|
{"error": 0,
"message": "success", "id": "ebe2bc57551c2d17f892987d1f62306d"} | |
| DELETE/qas/doc/delete/{id} | Удаление документа | |
|
{"error": 0,"message": "success"} | |
| GET/qas/doc/get/{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} | Обновление документа. В случае успеха метод вернет статус выполнения операции (например, «success»), в случае неудачи — код ошибки. | |
параметр который не меняется может отсутствовать в json
|
{"error": INT, "message": DESCRIPTION} | |
| POST/qas/doc/replace | Замена подстроки в текстах категории Будут заменены все найденные вхождения | |
|
{"error": INT, "message": DESCRIPTION,"replacements":INT} | |
| POST/qas/doc/modifyphrases | Массовая замена текста в указанных фразах. | |
[ { 'doc_id': 'ad895085-2e48-439a-831e-b5f699b6a54a', 'phrase_id': 5, 'text': 'новый текст' } ] |
{"error": 0,"message": "success"} | |
| GET/qas/gpt/list | Получение списка доступных(установленных) GPT моделей | |
| Входные параметры отсутствуют | { "error": 0, "message": "success", "models": ["default" ]} | |
| POST/qas/question/add | Добавление вопроса. В случае успеха метод вернет id вопроса, в случае неудачи — код ошибки. | |
|
{
"error": 0, "id": "527be9f0-f773-4a3e-bd0b-81b40a061d0d" } | |
| POST/qas/question/append/{id} | Добавляет алиасы/кандидаты к другому вопросу | |
|
{error: 0 | 1, message: string} | |
| POST/qas/question/approve/{destination_id} | Перемещает кандидаты в формулировки другого вопроса | |
|
{error: 0 | 1, message: string} | |
| POST/qas/question/delete/list | Удаление списка вопросов или ответов | |
|
{"error": INT, "message": DESCRIPTION} | |
| DELETE/qas/question/delete/{id} | Удаление вопроса | |
|
{"error": INT, "message": DESCRIPTION} | |
| GET/qas/question/get/{id} | Получение вопроса вместе с ответами и синонимами вопроса | |
|
{ "error": 0,
"answers": [ { "checked": true, "channel": "0", "answer": "ответ" } ], "aliases": [ "вопрос", "синоним вопроса", "еще синоним вопроса" ] } | |
| GET/qas/question/list | Получение списка вопросов. | |
|
{ "error": 0,
"questions": [ {"id": "","question": "","incomplete": "", "aliases": [],"candidates": [],"category": "", "checked": 0,"unchecked": 0}, {"id": "","question": "","incomplete": "", "aliases": [],"candidates": [],"category": "", "checked": 0,"unchecked": 0} ] } | |
| POST/qas/question/modify/{id} | Модификация вопроса. Позволяет заменить как все параметры так и отдельные | |
|
В случае успеха метод вернет статус выполнения операции (например, «success»), в случае неудачи — код ошибки.
{"error": INT, "message": DESCRIPTION} | |
| POST/qas/question/replace | Поиск и замена подстроки. Будут заменены все найденные вхождения | |
|
{"error": INT, "message": DESCRIPTION,"replacements":INT} | |
| POST/qas/question/modifyanswers | Массовая замена текста в указанных ответах. | |
[ { 'question_id': 'ad895085-2e48-439a-831e-b5f699b6a54a', 'answer_id': 5, 'text': 'новый текст' } ] |
{"error": 0,"message": "success"} | |
| POST/qas/paraphrase | Генерация фраз-синонимов для предложения. | |
|
{"error": 0, "message": "success", "texts": [ "перефразированный текст 1", ... ]} | |
| GET/qas/questionlist/answers | Отображает лог массовой обработки вопросов | |
| Входные параметры отсутствуют | на выходе :
массив из объектов { error: number; question: string; answer: string; confidence: number | null; } | |
| POST/qas/questionlist/start | Старт массовой обработки вопросов из файла | |
возможные варианты: — "no" не использовать - "all" использовать все - "checked" использовать только проверенные
|
{error: 0 | 1, message: string} | |
| GET/qas/questionlist/status | Статус массовой обработки вопросов | |
| Входные параметры отсутствуют | { error: string;
status: 'started' | 'stopped'; progress: number; } | |
| GET/qas/questionlist/stop | Остановка массовой обработки вопросов | |
| Входные параметры отсутствуют | {error: 0 | 1, message: string} | |
| GET/qas/mismatchsearcher/answers | Отображает лог найденных несоответствий | |
| Входные параметры отсутствуют | на выходе :массив из объектов {
'question_id' 'category' 'answer_id' 'answer' 'description' 'error' } | |
| POST/qas/mismatchsearcher/start | Старт поиска несоответствий | |
|
{error: 0 | 1, message: string} | |
| GET/qas/mismatchsearcher/status | Статус поиска несоответствий | |
| Входные параметры отсутствуют | { error: string; status: 'started' | 'stopped';
progress: number; } | |
| GET/qas/mismatchsearcher/stop | Остановка поиска несоответствий | |
| Входные параметры отсутствуют | {error: 0 | 1, message: string} | |
| 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": "Здесь будет текст найденного фрагмента" } ] } | |
| POST/qas/summarization_template/add | Добавление шаблона протокола. В случае успеха метод вернет id шаблона, в случае неудачи — код ошибки. | |
|
{ "error": 0, "id": "527be9f0-f773-4a3e-bd0b-81b40a061d0d"} | |
| DELETEqas/summarization_template/delete/{id} | Удаление шаблона. | |
|
{"error": INT, "message": DESCRIPTION} | |
| GET/qas/summarization_template/get/{id} | Получение json с шаблоном. | |
|
На выходе словарь, основные элементы: data — словарь с шаблоном, остальные элементы этого уровня служебные. В data: id, name (идентификатор и наименование).И options — словарь с разделами шаблона. | |
| GET/qas/summarization_template/list | Получение всех шаблонов. | |
| Входные параметры отсутствуют | На выходе словарь, основной элемент — templates, содержит список шаблонов (каждый шаблон как в выдаче метода GET /qas/summarization_template/get/{id}). | |
| POST/qas/summarization_template/modify/{id} | Изменение шаблона. | |
|
{"error": INT, "message": DESCRIPTION} | |
| POST/qas/summarize | Построение протокола или краткого содержания совещания | |
|
{ "error": 0,
"message": "success", "summary": "здесь текст протокола" } | |
| POST/qas/replace | корректировка информации в тексте при помощи LLM | |
|
{ "error": 0, "message": "success",
"text": "итоговый текст" } | |
| POST/qas/replacementlist | список всех фраз в документах и ответов в вопросах, подлежащих правке. Векторно ищет все фрагменты по указанному тексту. | |
|
[ "error": 0,
"message": "success", "docs": [], "answers": [] ] | |
| POST/qas/prompt/add | Добавление шаблона запроса к LLM. В случае успеха метод вернет id вопроса, в случае неудачи — код ошибки. | |
|
{ "error": 0,
"id": "527be9f0-f773-4a3e-bd0b-81b40a061d0d" } | |
| DELETE/qas/prompt/delete/{id} | Удаление шаблона. | |
|
{"error": INT, "message": DESCRIPTION} | |
| GET/qas/prompt/get/{id} | Получение шаблона. | |
|
{ "error": 0, "prompt": {
"id": "cleandoc", "type": "cleandoc", "isDefault": false, "name": "Чистка документа", "prompt": "Удали сноски, колонтитуры и мусорную информацию из текста ниже. Не удаляй ничего лишнего. Не добавляй ничего, только информация из текста. Выведи только конечный результат без отчета о результате.\n###Текст:\n{context}\n\n###Конечный результат:", "postprompt": "", "_modified": 1751475766.7460272, "_created": 1751475766.7460272, "_modified_date": "2025-07-02", "_created_date": "2025-07-02" } } | |
| GET/qas/prompt/list | Получение списка шаблонов. | |
| { "error": 0, "prompts": [
{ "id": "chat", "type": "chat", "isDefault": false, "name": "Чат", "prompt": "Ты спокойный вежливый консультант.[\n\n###История переписки:\n{history}]\n\n###Вопрос: {question}\n###Ответ:", "postprompt": "", "_modified": 1751475766.7460272, "_created": 1751475766.7460272, "_modified_date": "2025-07-02", "_created_date": "2025-07-02" } ] } | ||
| POST/qas/prompt/modify/{id} | Модификация шаблона. Позволяет заменить как все параметры, так и отдельные. | |
|
В случае успеха метод вернет статус выполнения операции (например, «success»), в случае неудачи — код ошибки.{"error": INT, "message": DESCRIPTION} | |
/ses: методы работы с роботом
| для некоторых путей, где используется {robot_id} - это обращение к версии черновика, чтобы обращаться к продовой версии - нужен постфикс "_prod", для бэкапа "_backup"
актуально для методов - получения данных робота GET/ses/robot/get/{id} - применение настроек робота GET/ses/robot/commit/{id} - экспорт робота GET/ses/robot/export/{id} - список скриптов GET/ses/robot/script/list/{robot} - получение скрипта GET/ses/robot/script/get/{robot}/{id} - список ЭД GET/ses/robot/data/list/{robot} - получение ЭД GET/ses/robot/data/get/{robot}/{id} - список КТ GET/ses/robot/endpoint/list/{robot} - получение КТ GET/ses/robot/endpoint/get/{robot}/{id} - метода ask (отладчика) POST/ses/ask/{robot_id} - данные сессии (отладчика) GET/ses/session/{robot_id}/{session_id} | |||
|---|---|---|---|
| GET/ses/archive/audio/{uuid} | Получение аудио-файла из архива диалогов | ||
|
аудио-файл с расширением opus | ||
| GET/ses/archive/dialog/{uuid} | Получение диалога из архива | ||
|
{ "error": 0, "message": "success",
"dialog": [{"id": "...", "robot": "...", "channel": "...", "unknown": true/false, "closed": true/false, "endpoint": "...", "answered": true/false, "models": [...], "variables": {}, "current": { "id": "...", "qas": "", "category": "...", "entry": [...], "nearest": "...", "missingRunData": [...], "waitingRunData": "...", "answered": true/false, "lastreply": "..."}, "request": {"datetime": "...", "message": "", "data": [...]}, "reply": {"answers": [{"messages": [...], "voice": "...", "interruptible": true/false, "file": null}], "datetime": "...", "answered": true/false}}]} | ||
| GET/ses/archive/list | Получение списка диалогов из архива | ||
|
[{"uuid": "...", "datetime": "...","phone": "", "channel": [...], "robot": ["..."]}] | ||
| GET/ses/archive/waveform/{uuid} | Служебный метод для визуализации полученного из архива диалогов аудио-файла, содержит пики сигнала. | ||
|
[0.016,
0.015, 0.01] | ||
| POST/ses/ask/{robot_id} | Получение ответа на запрос пользователя. Метод для отладки робота | ||
|
{ "error": 0, "question": "Вопрос",
"answer": [ { "messages": [ "ответ" ], "voice": "", "interruptible": true/false, "file": "" } ], "session": "", "uuid": "" } | ||
| POST/ses/robot/add | Создание нового робота. На выходе id созданного робота или сообщение об ошибке | ||
|
{ "error": 0, "id": "2fd2f909-2069-4b20-a725-3a598c83f886"} | ||
| POST/ses/robot/apply/{id} | Применение робота. Переводит черновик робота в статус prod. Если до этого был prod вариант — становится backup. | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/cleardraft/{id} | Обнуление черновика рабочей версией робота | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/commit/{id} | Применение текущих изменений настроек робота. Применимо ко всем версиям (черновик, рабочая, резервная копия) | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/data/add/{robot} | Добавление элемента данных | ||
|
{ "error": 0, "message": "success"} | ||
| DELETE/ses/robot/data/delete/{robot}/{id} | Удаление элемента данных | ||
|
{ "error": 0, "message": "success"} | ||
| GET/ses/robot/data/get/{robot}/{id} | Получение настроек элемента данных | ||
|
{ "error": 0, "data": { "id": "id ЭД", "name": "Имя ЭД", "comment": "",
"type": "...", "rtype": "report", "model": "Имя модели", "param": "Ответ", "script": "", "weight": 3, "slaveData": [], "getOnlyAsNearest": true/false, "injectToMessage": true/false, "longWaiting": true/false, "dataWaiting": [], "actions": { "alone": { "default": [{"action": "say", "type": "random", "text": ["....."]}]}}, "exceptions": {}}} | ||
| GET/ses/robot/data/list/{robot} | Получение списка элементов данных | ||
|
[ { "id": "3ebfe38b-95bf-4927-a662-17f6e5da22ea",
"name": "pve", "type": "smc", "rtype": "report", "weight": 3, "hasNearestAction": false } ] | ||
| POST/ses/robot/data/modify/{robot}/{id} | Изменение элемента данных. Формат data как на выходе метода GET/ses/robot/data/get/{robot}/{id} | ||
|
{ "error": 0, "message": "success"} | ||
| DELETE/ses/robot/delete/{id} | Удаление всех версий робота | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/endpoint/add/{robot} | Создание конечной точки. Формат data как на выходе метода GET/ses/robot/endpoint/get/{robot}/{id} | ||
|
{ "error": 0, "id": "8576593b-b0d8-4b03-a623-74f3132356ea"} | ||
| DELETE/ses/robot/endpoint/delete/{robot}/{id} | Удаление конечной точки. | ||
|
{ "error": 0, "message": "success"} | ||
| GET/ses/robot/endpoint/get/{robot}/{id} | Получение настроек конечной точки | ||
|
{ "error": 0, "data": { "id": "...", "name": "...", "comment": "",
"entryType": "conditions", "entry": [{ "conditions": [{ "type": "...", "depth": 5, "id": "...", "operation": "...", "value": ""}], "run": []}], "run": [], "actions": { "default": [{ "action": "...", "voice": "", "type": "...", "interruptible": true/false}]}, "type": "report"}} | ||
| GET/ses/robot/endpoint/list/{robot} | Получение списка конечных точек робота | ||
|
[{ "error": 0, "data": { "id": "...", "name": "точка 1", "comment": "",
"entryType": "conditions", "entry": [{ "conditions": [{ "type": "...", "depth": 5, "id": "...", "operation": "...", "value": ""}], "run": []}], "run": [], "actions": { "default": [{ "action": "...", "voice": "....", "type": "...", "interruptible": true/false}]}, "type": "report"}}] | ||
| POST/ses/robot/endpoint/modify/{robot}/{id} | Изменение конечной точки. Формат data как на выходе метода GET/ses/robot/endpoint/get/{robot}/{id} | ||
|
{ "error": 0, "message": "success"} | ||
| GET/ses/robot/export/{id} | Выгрузка робота в архив | ||
|
zip файл с именем = идентификатор робота | ||
| GET/ses/robot/files/download/{robot}/{id} | Получение файла. | ||
|
файл | ||
| POST/ses/robot/files/upload/{robot} | Отправка файла. | ||
|
{"error": 0, "message": "success", "id": "Id файла"} | ||
| GET/ses/robot/get/{id} | Выгрузка основных настроек робота | ||
|
{ "error": 0, "data": {
"id": "9fd7f6f1-2cac-4f0f-a121-75c40f2b5e78", "name": "test", "description": "", "voice": "", "session": { "lifetime": 600 }, "models": {}, "servicedata": {}, "exceptions": {}, "actions": {}, "holidays": [], "timeintervals": { "name": { "weekdays": [ 1, 2, 3, 4, 5, 6, 7 ], "dates": [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31], "months": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ], "days": "all", "intervals": [ [ 0, 1440 ] ] }}}} | ||
| POST/ses/robot/import/{id} | Загрузка архива робота в черновик существующего робота | ||
|
{ "error": 0, "message": "success"} | ||
| GET/ses/robot/list | Получение списка роботов | ||
| Входные параметры отсутствуют | [ { "id": "9fd7f6f1-2cac-4f0f-a121-75c40f2b5e78", "name": "test",
"hasProd": true, "hasBackup": true } ] | ||
| POST/ses/robot/modify/{id} | Изменение основных настроек робота. Формат data как в ответе метода GET/ses/robot/get/{id} | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/restore/{id} | Откат рабочей версии из бэкапа. Резервная копия становится рабочей, и удаляется, а черновик остается без изменений | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/script/add/{robot} | Добавление нового скрипта. Формат data как в ответе метода GET/ses/robot/script/get/{robot}/{id} | ||
|
{ "error": 0, "message": "success"} | ||
| DELETE/ses/robot/script/delete/{robot}/{id} | Удаление скрипта | ||
|
{ "error": 0, "message": "success"} | ||
| GET/ses/robot/script/get/{robot}/{id} | Получение текста скрипита | ||
|
{ "error": 0, "data": {
"id": "6a9f91b6-9634-4079-ac2b-60a944922c61", "type": "Тип скрипта", "name": "Наименование скрипта", "code": "Текст скрипта" } } | ||
| GET/ses/robot/script/list/{robot} | Получение списка скриптов | ||
|
[ { "id": "9b9d83b7-d5c3-49e6-9bd4-a123a9047939", "name": "наименование1",
"type": "Тип скрипта"}, { "id": "48b508ba-a32b-4ada-bcc3-66ce26d81c6a", "name": "наименование2", "type": "Тип скрипта"}] | ||
| POST/ses/robot/script/modify/{robot}/{id} | Изменение скрипта.Формат data как в ответе метода GET/ses/robot/script/get/{robot}/{id} | ||
|
{ "error": 0, "message": "success"} | ||
| POST/ses/robot/script/test/{robot}/{id} | Тестирование скрипта. Формат data как в ответе метода GET/ses/session/{robot_id}/{session_id} | ||
|
{"error": 0, "message": "success", "result": {.....}, "variables": {}} | ||
| POST/ses/robot/userdata/data/add/{robot}/{structure} | Добавление записи в пользовательский справочник. | ||
|
{"error": 0, "id": "id записи"} | ||
| DELETE/ses/robot/userdata/data/delete/{robot}/{structure}/{id} | Удаление записи из пользовательского справочника. | ||
|
{"error": 0, "message": "success"} | ||
| GET/ses/robot/userdata/data/list/{robot}/{structure} | Получение данных из пользовательского справочника. | ||
|
[{ "колонка 1": "значение 1", "колонка n": "значение n", "id": "id записи"}] | ||
| POST/ses/robot/userdata/data/modify/{robot}/{structure} | Массовое изменение данных в пользовательском справочнике. | ||
|
{"error": 0, "message": "success"} | ||
| POST/ses/robot/userdata/data/modify/{robot}/{structure}/{id} | Изменение одной записи пользовательского справочника. | ||
|
{"error": 0, "message": "success"} | ||
| POST/ses/robot/userdata/data/put/{robot}/{structure} | Добавление данных с заменой в пользовательском справочнике. | ||
|
{"error": 0, "message": "success"} | ||
| POST/ses/robot/userdata/structure/add/{robot} | Добавление пользовательского справочника. | ||
|
{"error": 0, "id": "id справочника"} | ||
| DELETE/ses/robot/userdata/structure/delete/{robot}/{id} | Удаление пользовательского справочника. | ||
|
{"error": 0, "message": "success"} | ||
| GET/ses/robot/userdata/structure/list/{robot} | Получение списка пользовательских справочников. | ||
|
[{"id": "id справочника", "name": "справочник", "fields": {"колонка1": "значение по умолчанию"}}] | ||
| POST/ses/robot/userdata/structure/modify/{robot}/{id} | Модификация структуры пользовательского справочника. | ||
|
{"error": 0, "message": "success"} | ||
| GET/ses/session/{robot_id}/{session_id} | Выдает параметры сессии. Для отображения на боковой панели тестирования в UPS. Основные блоки результата: | ||
|
{ "started": "", "modified": "",
"robot": "", "session": "", "channel": "", "connector": "", "unknown": true/false, "current": {"id": "", "qas": "", "answered": true/false, "category": "", "nearest": "", "entry": [.....], "missingRunData": [], "passedRunData": [.....], "waitingRunData": null, "border": int, "preborder": int, "lastreply": ""}, "models": [.....], "scripts": [.....], "data": [{"request": {.....}, "reply": {.....}}], "timers": [], "variables": {}, "error": "", "events": {.....}, "closed": "" } | ||
| GET/ses/widget/config | Выдает параметры виджета для web канала по запросу js скрипта | ||
|
Состав конфига канала, для передачи виджету. Подробней в Руководстве администратора | ||
| GET/ses/widget/js | Выдает код js скрипта виджета для web-канала | ||
| Входные параметры отсутствуют | Код скрипта | ||
/res: методы работы с сервисом отчетов
| GET/res/dashboards | Получить список рабочих столов kibana с наборами отчетов | ||
|---|---|---|---|
| Входные параметры отсутствуют | { "error": 0, "message": "success",
"dashboards": { "Наименование1": "https://........", "Наименование2": "https://........." }} | ||
/transcription: методы работы со стенографией
| GET/transcription/audio/{id} | Получить аудиофайл по id стенограммы. Идентификатор нужной стенограммы можно получить методом
"GET /transcription/list" | ||
|---|---|---|---|
|
wav файл сохраненной стенограммы | ||
| POST/transcription/create | Создание стенограммы из завершенного задания в очереди распознавания. В ответ придет id созданной стенограммы | ||
|
{"error": 0,
"message": "success", "id": "74721a3b-9055-4650-9afb-de4d103cafc7"} | ||
| DELETE/transcription/delete/{id} | Удаление стенограммы | ||
|
{"error": 0,"message": "success"} | ||
| GET/transcription/get/{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} | Сохранение стенограмы. Используется для сохранения изменений по нажатию кнопки «Сохранить». | ||
|
{"error": 0,"message": "success"} | ||
| GET/transcription/waveform/{id} | Служебный метод для отображения аудио в графическом виде, ответ содержит пики сигнала | ||
|
{ "error": 0,
"waveform": [ 0.016, .......... .......... 0.015, 0.01 ] } | ||