Инструменты5 сентября 2026 г., 07:22 МСК🤖 Auto

funes: Собственная память для AI-агентов с локальным индексированием

Hugging Face представил funes — инструмент, превращающий разрозненные сессии кодовых агентов в единую, переносимую и приватную базу знаний с точным поиском по контексту.

Баннер новости 6833

Проблема: агенты-«чужаки» и потеря контекста

Каждый раз, когда разработчик переключается между сессиями или машинами, AI-агент (Claude Code, Codex, pi, Hermes) начинает работу с чистого листа. История решений, ошибок и найденных решений теряется. Хотя логи сессий (traces) содержат информацию о том, почему были приняты те или иные решения, они представляют собой лишь архив, по которому невозможно эффективно искать причинно-следственные связи без сложной инфраструктуры.

Решение: funes как слой памяти

funes — это бинарный файл (без зависимостей ML-рантайма), который устанавливается локально и интегрируется с агентами через одну команду: funes add claude. Он создает индекс из существующих сессий, обеспечивая агента инструментами recall (поиск) и get (просмотр полного контекста).

Ключевые технические особенности:

  • Локальность и приватность: Векторизация и реранкинг происходят на машине пользователя. Данные не отправляются в облако для обработки.
  • Инкрементальное индексирование: Новые ходы сессий добавляются в индекс без пересчета всей истории.
  • Единый формат: Поддерживаются Claude Code, Codex, pi и Hermes. Все они пишут в один формат, позволяя одному агенту вспомнить логику другого.
  • Точная провенансность: Результат поиска возвращает исходный текст, а не сжатое резюме, с указанием таймстампа, сессии и автора хода.

Архитектура поиска и хранения

В основе funes лежит гибридный поиск. Данные хранятся в локальном формате Lance. При запросе система:

  1. Парсит трассы в унифицированную структуру «ход-блок».
  2. Чанкует и эмбеддит данные локально.
  3. Комбинирует векторный поиск и BM25.
  4. Реранкирует кандидаты кросс-энкодером.
  5. Взвешивает результаты по свежести (recency) и добавляет соседние чанки для контекста.

Синхронизация через Hugging Face Hub

Память может быть перенесена между машинами или командами. Команда funes add codex acme/funes-memory привязывает локальную память к приватному датасету на Hugging Face Hub. Перед публикацией происходит сканирование на наличие секретов (credentials redaction). При работе на другой машине данные кэшируются локально для скорости.

Результаты бенчмарков: Recall vs Compaction

Авторы сравнили три подхода к управлению длинными сессиями: компактизацию (сжатие контекста), передачу контекста (handoff) и recall (поиск по памяти). Тестирование проводилось на бенчмарке handoff-vs-recall.

Метод Описание Результат на бенчмарке
Compaction Агент сжимает историю в краткое резюме Неоднозначный. На одной задаче сработал, на другой — нет. При провале важные детали «сплющивались» и терялись.
Handoff Ручная или автоматическая передача контекста новой сессии Требует явного управления, увеличивает стоимость контекстного окна.
Recall (funes) Агент сам ищет нужные фрагменты в истории Возвращает исходные фрагменты. Найденное не зависит от качества суммаризации. Позволяет агенту «вспомнить» логику из прошлых сессий.

Установка доступна через скрипт: curl -fsSL https://huggingface.co/buckets/huggingface/funes/resolve/install.sh | sh.

Источник: Hugging Face blog ↗