Действия

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

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

Нет описания правки
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 22: Строка 22:
Ответ сервиса SEE представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6184 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.  
Ответ сервиса SEE представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6184 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.  


<onlyinclude>
{| class="wikitable" style="width: 110%"
{| class="wikitable" style="width: 110%"
|+''Описание методов API''
|+''Описание методов API''
! style="color:green;width: 15%" |'''POST/see/copy'''
! colspan="3" style="width: 85%" |<small>Копирование существующей модели</small>
|-
| colspan="2" style="width: 50%" |
*<small>'''source''' - исходная модель</small>
*<small>'''destination''' - целевая модель</small>
*<small>'''backup''' - путь для резервного копирования</small>
*<small>'''remove''' - флаг для удаления исходной модели</small>
| colspan="2" style="width: 50%" |<small><code>{ error: INT, message: DESCRIPTION }</code></small>
|-
! style="color:red;width: 15%" |'''DELETE/see/delete/{id}'''
! style="color:red;width: 15%" |'''DELETE/see/delete/{id}'''
! colspan="3" style="width: 85%" |<small>Удаление модели.</small>
! colspan="3" style="width: 85%" |<small>Удаление модели.</small>
Строка 145: Строка 156:
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small>
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small>
| colspan="2" style="width: 50%" |<small><code>{ models: [model1,...,modelN] }</code></small>
| colspan="2" style="width: 50%" |<small><code>{ models: [model1,...,modelN] }</code></small>
|-
! style="color:green;width: 15%" |'''POST/see/stop/{id}'''
! colspan="3" style="width: 85%" | <small>Остановка обучения модели</small>
|-
| colspan="2" style="width: 50%" |
<small>'''id''' - идентификатор модели</small>
| colspan="2" style="width: 50%" |<small><code>{ error: INT, message: DESCRIPTION }</code></small>
|-
! style="color:green;width: 15%" |'''POST/see/train/{id}'''
! colspan="3" style="width: 85%" | <small>Обучение модели</small>
|-
| colspan="2" style="width: 50%" |
*<small>'''id''' - идентификатор модели</small>
*<small>'''csv-file''' - текстовый файл для обучения модели или json файл с метками</small>
*<small>'''noise''' - уровень шума для генерации синтезированных данных для обучения модели, от 1 до 5, по умолчанию 2.</small>
*<small>'''corpusName''' - наименование имеющегося корпуса данных</small>
*<small>'''corpusData''' -  json строка с корпусом данных</small>
| colspan="2" style="width: 50%" |<small><code>{ error: INT, message: DESCRIPTION }</code></small>
|}
|}
</onlyinclude>





Текущая версия от 13:30, 12 января 2026

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

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


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

Simple Entity Extractor (SEE) — сервис извлечения именованных сущностей.

Модель — предварительно подготовленная специализированная модель распознавания и извлечения именованных сущностей из коротких фраз.

Именованная сущность — слово или словосочетание, выделяющее определенный предмет или явление из ряда однотипных предметов или явлений. Например, это названия городов, стран, валют, имен.

Swagger UI — интерактивная веб-консоль с кратким описанием методов API и возможностью выполнять запросы к сервису SEE.


Описание методов API SEE

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

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

Ответ сервиса SEE представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6184 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.


Описание методов API
POST/see/copy Копирование существующей модели
  • source - исходная модель
  • destination - целевая модель
  • backup - путь для резервного копирования
  • remove - флаг для удаления исходной модели
{ error: INT, message: DESCRIPTION }
DELETE/see/delete/{id} Удаление модели.
  • id — идентификатор модели.
{ error: INT, message: DESCRIPTION }
GET/see/export/{id} Получение архива модели.
  • id — идентификатор модели.
Возвращает zip-файл с моделью.
POST/see/import/{id} Добавление модели. Метод асинхронный. Окончание работы проверяется через метод /see/info/{id}.
  • id — идентификатор модели;
  • zip-model — zip-архив с файлами модели;
{ error: INT, message: DESCRIPTION }
GET/see/entities/{id} Поиск сущностей. Вернется массив со всеми моделями, в которых были найдены сущности (модели для поиска указываются в поле id). Каждая переменная с названием модели будет содержать список всех найденных сущностей.
  • id — идентификатор[ы] модели. Может быть указано несколько через запятую, тогда запрос будет обработан всеми указанными моделями.
  • text — текст для анализа.
  • similarity — порог похожести найденной сущности на эталонные, %. По умолчанию 70.
{ ID-модели: [

{

position: 0, # позиция слова начала фрагмента, определяющего сущность

confidence: 1, #вероятность правильного определения сущности

text: текст сущности,

calculated: vaktsinatsiya # поле, содержащее значение сущности, использованный при обучении модели

}, {...}

]

}

GET/see/errors/{id} Получение файла с ошибками модели. В случае, если производилось тестирование модели, то файл содержит ошибки тестирования. Если не производилось — ошибки после обучения.
  • id — идентификатор модели.
текстовый файл со строками вида:

ИСТИНА<TAB>ОПРЕДЕЛЕНО<TAB>ФРАЗА

DELETE/see/handler/{id} Удаление постобработчика.
  • id — идентификатор модели.
{ error: INT, message: DESCRIPTION }
GET/see/handler/{id} Получение файла-постобработчика.
  • id — идентификатор модели.
Файл handler.py
POST/see/handler/{id} Отправка файла-постобработчика в указанную модель. Становится активным сразу после успешной отправки.
  • id — идентификатор модели.
{ error: INT, message: DESCRIPTION }
GET/see/info/{id} Получение информации о модели. В результате выполнения будет возвращен массив с данными о модели. Матрица ошибок отдельно содержат классы, определяющие столбцы и строки матрицы, их количество может быть меньше, т.к. в матрицы попадают только те классы, по которым были ошибки.
  • id — идентификатор модели.
  • id — идентификатор
  • status — статус
  • classes — список сущностей в модели
  • entityMaxWords — максимальная длина сущности в корпусе обучения
  • sequenceLength — максимальная длина последовательности при обучении
  • noiseLevel — уровень шума, использованный при обучении модели
  • trainCorpusName — название файла, использованного при обучении
  • trainAccuracy — точность обучения и тестирования
  • testCorpusLength — размер тестового корпуса
  • trainCorpusLength — размер обучающего корпуса
  • trainConfusionMatrix — матрица ошибок обучения
  • testConfusionMatrix — матрица ошибок тестирования.
GET/see/log/{id} Лог всех действий во время обучения/тестирования модели.
  • id — идентификатор модели.
Лог содержится в переменной log в виде списка.

{

  "log": [

    "training",

    "macroEpoch: 1, microEpoch: 1 loss: 1.23790...",

    ...

  ]

}

GET/see/models Вывод списка моделей.
Входные параметры отсутствуют { models: [model1,...,modelN] }
POST/see/stop/{id} Остановка обучения модели

id - идентификатор модели

{ error: INT, message: DESCRIPTION }
POST/see/train/{id} Обучение модели
  • id - идентификатор модели
  • csv-file - текстовый файл для обучения модели или json файл с метками
  • noise - уровень шума для генерации синтезированных данных для обучения модели, от 1 до 5, по умолчанию 2.
  • corpusName - наименование имеющегося корпуса данных
  • corpusData - json строка с корпусом данных
{ error: INT, message: DESCRIPTION }


Постобработка

Модель может содержать постобработчик. Это стандартный файл на языке Python, который выполняет произвольные действия с результатом работы модели. Обязательным условием является наличие функции handler, которая должна возвращать данные такого же вида, как и метод GET /see/entities/{id}.

Пример пустой функции, которая просто повторяет на выходе результат:

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

  returns entities

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