$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);
});
подсказка
Примеры работы с базой знаний и различные варианты вызова смотрите в статье Использование в сценарии.