Действия

SBS. Руководство пользователя: различия между версиями

Материал из Флора AI

Строка 36: Строка 36:
|Получение аналитических метаданных из голосового фрагмента
|Получение аналитических метаданных из голосового фрагмента
|
|
* '''id''' - идентификатор модели.
* '''wav''' - файл для анализа
* '''wav''' - файл для анализа
|Вернется массив с метаданными голосового фрагмента. Пример:
|Вернется массив с метаданными голосового фрагмента. Пример:
Строка 83: Строка 82:
|Поиск говорящего по базе слепков
|Поиск говорящего по базе слепков
|
|
* '''id''' - идентификатор модели.
* '''wav''' - файл для анализа
* '''wav''' - файл для анализа
* threshold - процент совпадения
|Пример ответа:
|Пример ответа:
<code>{</code>   
<code>{</code>   
Строка 92: Строка 91:
<code>}</code>
<code>}</code>
|-
|-
|/sbs/speaker/{id}/{speaker_id}
|/sbs/verify/{id}
|POST
|Сравнение  wav-файла cо слепком в базе
|
* '''id''' - идентификатор говорящего
* wav - файл звукового отрезка
|<code>{</code>
 
<code>"error": 0,</code>
 
<code>"confidence": 0.78</code>
 
<code>}</code>
|-
|/sbs/speakers/add
|POST
|POST
|Добавление слепка в базу.
|Добавление слепка в базу.
|
|
* '''id''' - идентификатор модели
* '''name''' - имя говорящего
* '''speaker_id''' - идентификатор говорящего
* '''wav''' - файл для создания оцифрованного представления говорящего
* '''wav''' - файл для создания оцифрованного представления говорящего
|<code>{ error: INT, message: DESCRIPTION }</code>
|{
 
  "error": 0,
 
  "id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433"
 
}
|-
|-
|/sbs/speaker/{id}/{speaker_id}
|/sbs/speakers/delete/{id}
|DELETE
|DELETE
|Удаление слепка из базы
|Удаление слепка из базы
|
|
* '''id''' - идентификатор модели
* '''id''' - идентификатор говорящего
* '''speaker_id''' - идентификатор говорящего
|<code>{ error: INT, message: DESCRIPTION }</code>
|<code>{ error: INT, message: DESCRIPTION }</code>
|-
|-
|/sbs/speakers/{id}
|/sbs/speakers/list
|GET
|GET
|Получение списка всех слепков
|Получение списка всех слепков
|'''id''' - идентификатор модели
|'''-'''
|<code>[</code>  <code>"Kiryl",</code>
|[
<code>"Artem",</code> 
 
<code>"vladimir",</code>
  {
<code>"Sergey",</code> 
 
<code>"vladimir2",</code>
    "id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433",
<code>"Alla"</code>
 
<code>]</code>
    "name": "наименование слепка"
 
  }
 
]
|-
|-
|/sbs/verify/{id}/{speaker_id}
|/sbs/speakers/modify/{id}
|POST
|POST
|Сравнение оцифрованного представления wav-файла cо слепком в базе
|Дообучение слепка
|
|
* '''id''' - идентификатор модели
* '''wav''' - файл для обучения
* '''speaker_id''' - идентификатор говорящего
 
|<code>{</code>
* '''id''' - идентификатор слепка
|{


<code>"error": 0,</code>
  "error": 0,


<code>"confidence": 0.78</code>
  "message": "Success"


<code>}</code>
}
|}
|}

Версия от 17:03, 29 мая 2024

Общее описание

Сервис Simple Biometry Server предназначен для извлечения именованных сущностей из текстовых фрагментов (фраз естественной речи). Принимает на вход текстовую строку и возвращает структурированные данные в формате JSON.


Термины и определения

Simple Biometry Server (SBS) - сервис извлечения метаданных.

Swagger UI – интерактивная  веб-консоль с кратким описанием методов АPI и возможностью выполнять запросы к сервису SBS.


Описание методов API сервиса биометрии (SBS)

Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом SBS. По умолчанию используется порт 6185/tcp.

Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"

Ответ сервиса представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6185 будет отображен интерфейс swagger со всеми методами с возможностью их проверки. Модель может содержать постобработчик. Это стандартный файл на языке Python, который выполняет произвольные действия с результатом работы модели. Обязательным условием является наличие функции handler, которая должна возвращать данные такого же вида, как и метод GET /sbs/entities/{id}.

Пример пустой функции:

def handler(entities=[],text=""):

  returns entities

На вход подается результат работы модели, а также начальный текст.

Метод Тип Описание Входные параметры Ответ
/sbs/analyze/{id} POST Получение аналитических метаданных из голосового фрагмента
  • wav - файл для анализа
Вернется массив с метаданными голосового фрагмента. Пример:

{ age: { class: 20-29, confidence: 0.99 }, emotion: { class: SADNESS, confidence: 0.99 }, gender: { class: FEMALE, confidence: 0.99 } }

  • age - возраст
    • 00-05
    • 06-12
    • 13-19
    • 20-29
    • 30-39
    • 40-49
    • 50-59
    • 60+
  • emotion - эмоция
    • ANGER
    • BORE
    • DISAPPOINTMENT
    • DISGUST
    • EXCITEMENT
    • FEAR
    • NEUTRAL
    • PAIN
    • PLEASURE
    • SADNESS
    • SUPRISE
  • gender - пол
    • MALE
    • FEMALE
/sbs/search/{id} POST Поиск говорящего по базе слепков
  • wav - файл для анализа
  • threshold - процент совпадения
Пример ответа:

{ error: 0, speaker: Ivan, confidence: 0.79 }

/sbs/verify/{id} POST Сравнение wav-файла cо слепком в базе
  • id - идентификатор говорящего
  • wav - файл звукового отрезка
{

"error": 0,

"confidence": 0.78

}

/sbs/speakers/add POST Добавление слепка в базу.
  • name - имя говорящего
  • wav - файл для создания оцифрованного представления говорящего
{

  "error": 0,

  "id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433"

}

/sbs/speakers/delete/{id} DELETE Удаление слепка из базы
  • id - идентификатор говорящего
{ error: INT, message: DESCRIPTION }
/sbs/speakers/list GET Получение списка всех слепков - [

  {

    "id": "251f78d7-ee50-4ba1-a669-ee89fdaf5433",

    "name": "наименование слепка"

  }

]

/sbs/speakers/modify/{id} POST Дообучение слепка
  • wav - файл для обучения
  • id - идентификатор слепка
{

  "error": 0,

  "message": "Success"

}