Действия

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

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

Строка 26: Строка 26:
|/qas/doc
|/qas/doc
|POST
|POST
|Метод используется для добавления нового документа в базу данных.
|Метод используется для добавления нового документа в базу данных. Загружаемый файл должен быть в формате txt
|
|
* '''title''' - заголовок файла.
* '''title''' - заголовок файла.
* '''category''' - категория документа.
* '''category''' - категория документа.
* '''text''' - поле для загрузки файла.
* '''text''' - поле для загрузки файла.
|Пример:
|Успешное выполнение метода возвращает сообщение об успешном добавлении файла и присвоенном ему идентификатору.
Пример:
<code>{"error": 0, "message": "success", "id": "92da6b1968616db4e8d3981c62e0f71f"}</code>
<code>{"error": 0, "message": "success", "id": "92da6b1968616db4e8d3981c62e0f71f"}</code>
|-
|-
Строка 38: Строка 39:
|Метод генерирует ответ на поставленный вопрос на основе информации из документов
|Метод генерирует ответ на поставленный вопрос на основе информации из документов
|
|
*'''text''' - вопрос, по которому нужно отыскать фрагмент в документах.
*'''text''' - текст вопроса, на основе которого будут искаться фрагменты.
* '''category''' - категория документа.
* '''category''' - категория документа.
|
|
 
Ответ на вопрос генерируется на основе информации, содержащейся в одном или нескольких документах. Документы должны быть в текстовом формате. Ответ возвращается в формате JSON, его можно скачать. Если метод не смог найти ответ, возвращается код ошибки и сообщение.
 


<code>{ "error": 0, "answer": "''ответ на вопрос''"}</code>
<code>{ "error": 0, "answer": "''ответ на вопрос''"}</code>
Строка 50: Строка 50:
|Поиск фрагмента (фрагментов) в документах указанной категории по заданному вопросу
|Поиск фрагмента (фрагментов) в документах указанной категории по заданному вопросу
|
|
* '''text''' - вопрос, по которому нужно отыскать фрагмент в документах.
* '''text''' - текст вопроса, на основе которого будут искаться фрагменты.
* '''category''' - категория документа.
* '''category''' - категория документа.
|На выходе 2 фрагмента из документа указанной категории. Поиск нужного фрагмента осуществляется с помощью векторизации: выбирается ближайшее предложение по вектору из текста, добавляются по 5 фраз до и после фразы-вопроса — это и является результатом работы метода.  
|На выходе 2 фрагмента из документа указанной категории. Поиск нужного фрагмента осуществляется с помощью векторизации: выбирается ближайшее предложение по вектору из текста, добавляются по 5 фраз до и после фразы-вопроса — это и является результатом работы метода в формате JSON, его так же можно скачать. В случае ошибки возвращается информация об ошибке.  
|-
|-
|/qas/doc/{id}
|/qas/doc/{id}
|GET
|GET
|Метод для вывода текста документа
|Метод получает текст документа из базы данных по его идентификатору
|'''id''' - идентификатор документа.
|
|На выходе полный текст документа, соответствующий указанному идентификатору.
* '''id''' - идентификатор документа.
|На выходе полный текст документа, соответствующий указанному идентификатору. При успешном выполнении метода выдается тест документа в формате JSON. В случае отсутствия документа с указанным идентификатором появится сообщение об ошибке:
<code>{ "error": 1, "message": "text not found"}</code>
|-
|-
|/qas/doc/{id}
|/qas/doc/{id}
|DELETE
|DELETE
|Удаление документа из базы
|Метод предназначен для удаления документа из базы по его ID
|'''id''' - идентификатор документа.
|
* '''id''' - идентификатор документа.
|<code>{"error": 0, "message": "success"}</code>
|<code>{"error": 0, "message": "success"}</code>
|-
|-

Версия от 12:41, 27 февраля 2024

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

Сервис предназначен для поиска ответа на заданный вопрос. Входным значением для сервиса являются данные в текстовом формате. В ответ на входящий запрос сервис возвращает данные в формате JSON.


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

Question Answering System (QAS) – сервис ответов на вопросы.


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

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

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

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

Метод Тип Описание Входные параметры Ответ
/qas/doc POST Метод используется для добавления нового документа в базу данных. Загружаемый файл должен быть в формате txt
  • title - заголовок файла.
  • category - категория документа.
  • text - поле для загрузки файла.
Успешное выполнение метода возвращает сообщение об успешном добавлении файла и присвоенном ему идентификатору.

Пример: {"error": 0, "message": "success", "id": "92da6b1968616db4e8d3981c62e0f71f"}

/qas/doc/ask GET Метод генерирует ответ на поставленный вопрос на основе информации из документов
  • text - текст вопроса, на основе которого будут искаться фрагменты.
  • category - категория документа.

Ответ на вопрос генерируется на основе информации, содержащейся в одном или нескольких документах. Документы должны быть в текстовом формате. Ответ возвращается в формате JSON, его можно скачать. Если метод не смог найти ответ, возвращается код ошибки и сообщение.

{ "error": 0, "answer": "ответ на вопрос"}

/qas/doc/search GET Поиск фрагмента (фрагментов) в документах указанной категории по заданному вопросу
  • text - текст вопроса, на основе которого будут искаться фрагменты.
  • category - категория документа.
На выходе 2 фрагмента из документа указанной категории. Поиск нужного фрагмента осуществляется с помощью векторизации: выбирается ближайшее предложение по вектору из текста, добавляются по 5 фраз до и после фразы-вопроса — это и является результатом работы метода в формате JSON, его так же можно скачать. В случае ошибки возвращается информация об ошибке.
/qas/doc/{id} GET Метод получает текст документа из базы данных по его идентификатору
  • id - идентификатор документа.
На выходе полный текст документа, соответствующий указанному идентификатору. При успешном выполнении метода выдается тест документа в формате JSON. В случае отсутствия документа с указанным идентификатором появится сообщение об ошибке:

{ "error": 1, "message": "text not found"}

/qas/doc/{id} DELETE Метод предназначен для удаления документа из базы по его ID
  • id - идентификатор документа.
{"error": 0, "message": "success"}
/qas/list/ GET Получение списка всех документов - Пример:
[
  {
    "id": "Идентификатор документа",
    "title": "Название документа",
    "category": "Категория документа"
  },
  {
    "id": "Идентификатор документа",
    "title": "Название документа",
    "category": "Категория документа

},

......

]

/qas/reinit GET Метод для обновления базы данных - {"error": 0, "message": "success"}