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

$rag.retrieveChunks

Метод возвращает чанки, которые релевантны запросу пользователя.

предупреждение

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

Синтаксис

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

АргументТипОписаниеОбязательный
secretNameСтрокаНазвание токена для базы знаний.Да
queryСтрокаТекстовый запрос пользователя.Да
historyМассивИстория диалога с ботом. Вы можете передать историю, чтобы база знаний учитывала контекст. Получите историю с помощью $rag.getChatHistory.Нет
settingsОбъект

Настройки поиска чанков. По умолчанию используются настройки из проекта Jay Knowledge Hub.

Формат settings совпадает с форматом одноименного объекта в запросе POST /api/knowledge-hub/retrieve в Jay Knowledge Hub API.
Нет
timeoutЧисло

Таймаут в миллисекундах на выполнение метода. Если таймаут превышен, возникнет ошибка.

По умолчанию таймаут не установлен.
Нет

Вы можете передавать аргументы в метод разными способами.

Укажите аргументы по порядку:

await $rag.retrieveChunks("MyKnowledgeHub", "Что делает сервис Example?", undefined, undefined, 5000);

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

Метод возвращает объект со списком чанков. Они отсортированы в порядке убывания релевантности.

{
"chunks": [
{
"score": 0.7486038,
"content": "Сервис Example обрабатывает запросы пользователей …",
"docId": "Документация.pdf",
"metadata": null
},
{
"score": 0.7337575,
"content": "Сервис Example может выдерживать большую нагрузку …",
"docId": "Сервисы.pdf",
"metadata": null
}
]
}

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

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

В этом стейте бот отправит пользователю самый релевантный чанк:

state: Chunks
intent!: /вопрос
scriptEs6:
// Бот получает историю диалога
const history = await $rag.getChatHistory();
// Бот отправляет запрос в базу знаний
const chunks = await $rag.retrieveChunks("MyKnowledgeHub", $request.query, history);
$reactions.answer(chunks.chunks[0].content);