$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);
Передайте объект, поля которого совпадают с названиями аргументов:
await $rag.retrieveChunks({
secretName: "MyKnowledgeHub",
query: "Что делает сервис Example?",
timeout: 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);