Источники знаний: агенты Knowledge Retrieval и Knowledge Router

Knowledge Retrieval (поиск знаний) и Knowledge Router (подбор знаний) достают факты из ваших лорбуков и добавляют их в чат только тогда, когда они нужны сцене. Не приходится вписывать каждую деталь в каждый промпт. Оба агента работают только в чатах Roleplay, и по умолчанию ни один из них не включен.

Зачем они нужны

Лорбук – это набор заметок о мире или персонажах. Каждая заметка – это запись. Если отправлять все записи на каждом ходу, тратятся токены (небольшие кусочки текста, которые читает модель и за которые вы платите), а ИИ может запутаться.

Эти агенты используют генерацию, дополненную поиском (RAG): Marinara находит записи, которые подходят текущей сцене, и добавляет в промпт этого хода только их.

Выбор между Retrieval и Router

ВопросKnowledge RetrievalKnowledge Router
Как добавляет содержимоеСначала пересказывает источникиДобавляет выбранные записи дословно
Стоимость одного ходаВышеНиже
Читает загруженные файлыДаНет
Когда подходитНебольшие источники или компактная сводкаБольшие лорбуки с хорошими описаниями записей

В один чат можно добавить оба агента, но они пересекаются и повышают расход. Редактор агентов предупреждает, когда настроены оба. Выберите одного.

Добавление агента знаний в чат

Перед началом: установите агента в Agent Organizer (организатор агентов). См. Обзор агентов.

  1. В чате Roleplay откройте Chat Settings (настройки чата).
  2. Найдите раздел Agents (агенты) и включите Enable Agents (включить агентов).
  3. Нажмите Add Agent (добавить агента).
  4. Раскройте группу Writer Agents и выберите Knowledge Retrieval или Knowledge Router.
  5. В окне настройки выберите источники (см. ниже).

После этого в Agents появляется карточка настроек агента, и он запускается на каждом новом ходу. Пока работает Knowledge Retrieval, индикатор прогресса может показывать Retrieving knowledge....

Примечание: эти агенты запускаются только на новых ходах. При повторной генерации ответа они не запускаются снова.

Выбор источников

У обоих агентов одни и те же элементы выбора источников.

Фиксированные источники удобны, когда агент должен всегда читать один и тот же справочный лорбук. Чтобы агент следовал за тем, что использует чат, оставьте переключатель включенным и не выбирайте фиксированных лорбуков.

Загрузка файлов (только Knowledge Retrieval)

В настройках Knowledge Retrieval нажмите Upload file (загрузить файл). Загруженные файлы доступны всем чатам с агентом Knowledge Retrieval.

Поддерживаются типы .txt, .md, .csv, .json, .xml, .html, .htm, .log, .yaml, .yml, .tsv и .pdf. Остальные типы выбрать не получится. Для каждого файла видны название и размер, а также кнопка удаления.

Как писать хорошие описания записей

Это важнее всего для Knowledge Router, который выбирает записи по их полю Description (описание).

  1. Откройте запись в редакторе лорбука.
  2. Заполните Description короткой и конкретной сводкой того, о чем запись.

Описание нужно агенту только для выбора записей. Основной модели ИИ оно как часть истории не отправляется. Если описания нет, агент берет начало содержимого записи, а это менее точно.

Когда вы выбираете для агента лорбуки-источники, рядом с Fixed source override появляется значок покрытия, например 75% described (9/12). Точка зеленая при 75% и выше, желтая от 25% до 74% и красная ниже 25%. Для пустых лорбуков на значке написано No entries yet. Стремитесь к зеленому.

Необязательно: отбор по смыслу

Knowledge Router умеет искать записи-кандидаты не только по ключевым словам, но и по смыслу. Для этого нужна модель эмбеддингов – небольшая модель, которая переводит текст в числа, чтобы Marinara могла сравнивать смысл. Без нее агент тоже работает.

  1. Откройте редактор лорбука и найдите Semantic search (embeddings) (семантический поиск).
  2. Выберите аккаунт с моделью эмбеддингов. Если в Connections → Defaults (подключения → по умолчанию) задано значение по умолчанию для Embeddings (эмбеддинги), оно выбирается само, если раньше вы не выбрали другой источник.
  3. Используйте тот же источник эмбеддингов, что и аккаунт чата. Векторы другого размера пропускаются.
  4. Нажмите кнопку векторизации. На ней указано, скольким записям еще нужны векторы. Re-vectorize all (векторизовать все заново) пересчитывает каждую запись.

Если у лорбука нет векторов или модель эмбеддингов недоступна, агент составляет список кандидатов только по ключевым словам. Ничего не ломается. См. Семантический поиск в лорбуках.

Смежные руководства