Как проанализировать с помощью LLM хранилище из тысяч заметок, которое не помещается в контекст
В рекомендуемом режиме Batch + Отчёт заметки собираются в батчи по объёму текста, а не по количеству файлов. На этапе Map модель параллельно превращает каждую заметку в компактную структурированную сводку с основной мыслью, тезисами, сущностями, оценкой качества и тегами. На этапе Reduce эти сводки кластеризуются и сворачиваются в общий отчёт; при слишком большом объёме запускается иерархическая агрегация.
Чтобы не оплачивать повторный анализ, плагин хранит индекс с временем изменения каждого файла и повторно обрабатывает только новые или отредактированные заметки. Пул воркеров ограничивает число одновременных запросов, повторяет их после сетевых сбоев и не останавливает весь аудит из-за ошибки одного батча. Отдельный парсер извлекает JSON даже из ответов с Markdown-обёрткой и вводным текстом модели.
Плагин поддерживает OpenRouter, OpenAI, Groq и локальную Ollama через общий OpenAI-совместимый интерфейс. В локальном режиме заметки не покидают устройство. Дополнительно доступны пакетное редактирование, потоковая работа с текстом, генерация Dataview-запросов и экспорт аудита в Markdown и Canvas; перед публикацией в каталоге Obsidian разработчик исправил около 120 блокирующих замечаний автоматической проверки.
Коротко
- Батчи формируются по бюджету символов: несколько длинных заметок не получают тот же лимит, что и набор коротких записей.
- Если компактные сводки занимают менее 40 000 символов, кластеризация проходит за один запрос; иначе Reduce становится иерархическим.
- Индекс сравнивает mtime файлов и пропускает неизменённые заметки, поэтому повторный аудит хранилища почти не расходует токены.
- Сбой одного батча не останавливает весь аудит: запросы изолированы, повторяются с задержкой и поддерживают отмену через AbortSignal.
- Потоковая генерация включает буферизацию неполных SSE-строк и детектор повторений, который прерывает зациклившуюся модель.
FAQ
Зачем использовать MapReduce для анализа большого хранилища заметок вместо одного запроса к модели с длинным контекстом?
Корпус из тысяч заметок может содержать миллионы токенов. MapReduce позволяет анализировать его частями, а затем объединять компактные результаты без передачи всех исходных текстов в финальный запрос.
Как Vault Audit AI защищает личные и рабочие заметки от передачи внешним поставщикам языковых моделей?
Плагин можно подключить к локальной Ollama. В этом режиме обработка выполняется на компьютере пользователя, и содержимое хранилища не отправляется во внешние API.
Что происходит, если модель возвращает повреждённый JSON, зацикливается или один из запросов завершается ошибкой?
Парсер очищает ответ от Markdown и вводного текста, детектор останавливает повторяющийся стрим, а ошибка отдельного батча сохраняется без остановки всего аудита.
Читайте также
Как собрать System Context Pack за час
Как я добавил MAX в китайский AI-мост и запустил Claude прямо в мессенджере
Rich Messages в Telegram-ботах: сложные сообщения, черновики и ограничения
Как я обучил русский RAG-сплиттер, который режет документы по индексам, а не по тексту
ИИ добрался до раритетов: цены на память DDR2 выросли на 60% за три месяца
- MapReduce для анализа корпуса, не помещающегося в контекст LLM: Большой корпус документов следует делить на независимые части, анализировать их параллельно, а затем объединять результаты отдельным запросом. Такой пайплайн позволяет работать с тысячами документов без передачи всего исходного массива в контекст одной модели.
[Архитектура LLM-систем]
Зарегистрированные пользователи видят только два тезиса.
Зарегистрироваться
Vault Audit AI — плагин для Obsidian, который с помощью LLM анализирует хранилища из тысяч заметок, не пытаясь загрузить весь корпус в один контекст. Он находит несвязанные и дублирующиеся записи, объединяет темы в кластеры, предлагает теги, связи и план дальнейшей работы.