$rag.getChatHistory
Метод возвращает историю диалога с ботом в текущей сессии.
История имеет специальный формат для базы знаний.
Вы можете передавать эту историю в параметре history
, если отправляете одиночные запросы в базу знаний:
В этом случае база знаний сможет учитывать контекст одиночных запросов.
Синтаксис
Метод доступен только в среде ECMAScript 6 и является асинхронным. Он вызывается без аргументов:
await $rag.getChatHistory();
Возвращаемое значение
Метод возвращает массив с историей диалога:
[
{
"role": "assistant",
"content": "Чем могу помочь?"
},
{
"role": "user",
"content": "Как отменить заказ?"
},
{
"role": "assistant",
"content": "Чтобы отменить заказ, напишите в поддержку. Подробнее: https://example.com/docs"
}
]
Здесь:
-
role
— роль участника диалога:user
— пользователь.assistant
— бот.
-
content
— текст сообщения.
Использование в сценарии
В этом стейте бот отправляет запрос пользователя и историю диалога в базу знаний:
state: Answer
intent!: /вопрос
scriptEs6:
// Бот получает историю диалога
const history = await $rag.getChatHistory();
// Бот отправляет запрос вместе с историей
$rag.query.generateAnswer("MyKnowledgeHub", $request.query, history)
.then(answer => {
$conversationApi.sendTextToClient(answer.response);
})
.catch(error => {
$conversationApi.sendTextToClient("Произошла ошибка: " + error);
});