Перейти к основному содержимому

$rag.query.getAnswer

Метод возвращает статус запроса на генерацию ответа.

Синтаксис

Метод принимает 3 аргумента:

АргументТипОписаниеОбязательный
secretNameСтрокаНазвание токена для базы знаний.Да
queryIdЧисло

Идентификатор запроса на генерацию ответа.

Вы можете получить идентификатор с помощью $rag.query.generateAnswerAsync.
Да
waitTimeSecondsЧислоТаймаут для получения статуса в секундах. По умолчанию: 3.Нет

Метод доступен только в среде ECMAScript 6 и является асинхронным:

await $rag.query.getAnswer(secretName, queryId, waitTimeSeconds);

Возвращаемое значение

Метод возвращает объект с информацией о запросе на генерацию ответа. Если запрос имеет статус FINISHED, то поле response содержит ответ на вопрос пользователя.

{
"id": 12345,
"request": "Что делает сервис Example",
"status": "FINISHED",
"createdAt": "2024-12-03T15:02:08.385742Z",
"response": "Сервис Example обрабатывает запросы пользователей …",
"updatedAt": "2024-12-03T15:02:14.255934Z",
"comment": null
}

Объект имеет такой же формат, как ответ на запрос GET /api/knowledge-hub/query/{queryId} в Jay Knowledge Hub API.

Использование в сценарии

state: Answer
intent!: /вопрос
scriptEs6:
const ragRequest = await $rag.query.generateAnswerAsync("MyKnowledgeHub", $request.query);

var statusRequest = await $rag.query.getAnswer("MyKnowledgeHub", ragRequest.id, 5);
$reactions.answer("Статус запроса:" + statusRequest.status)

В этом стейте:

  1. Бот создает запрос и сохраняет его идентификатор.
  2. Бот получает статус запроса по этому идентификатору и отправляет его пользователю.