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

$rag.query.generateAnswer

Метод генерирует ответ на вопрос пользователя.

Синтаксис

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

АргументТипОписаниеОбязательный
secretNameСтрокаНазвание токена для базы знаний.Да
queryСтрокаТекстовый запрос пользователя.Да
historyМассивИстория диалога с базой знаний.Нет
settingsОбъектНастройки обработки запроса. По умолчанию используются настройки из проекта Jay Knowledge Hub.Нет
подсказка

Формат history и settings совпадает с форматом одноименных объектов в запросе POST /api/knowledge-hub/query в Jay Knowledge Hub API.

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

await $rag.query.generateAnswer(secretName, query, history, settings);

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

Метод возвращает объект с результатом обработки запроса. Поле response содержит ответ на вопрос пользователя.

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

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

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

В этом стейте бот отправит ответ из базы знаний:

state: Answer
intent!: /вопрос
scriptEs6:
$rag.query.generateAnswer("MyKnowledgeHub", $request.query)
.then(answer => {
$conversationApi.sendTextToClient(answer.response);
})
.catch(error => {
$conversationApi.sendTextToClient("Произошла ошибка: " + error);
});
подсказка

Примеры работы с базой знаний и различные варианты вызова смотрите в статье Использование в сценарии.