Память
bee remember "Redis кэширует токены сессий, а не данные пользователей" \ --type decision --reason "у пользовательских данных другой TTL"Четыре типа, и тип — это и есть суть: он решает, что ещё стоит спросить.
| тип | запишите также |
|---|---|
decision |
--reason, --alternative "вариант: почему нет" (повторяемо) |
error |
--solution, --prevention |
learning (по умолчанию) |
--category |
pattern |
--category |
Всё хранится в MongoDB с отметкой проекта, сессии, автора (из конфигурации git) и времени.
bee remember search "redis"bee remember search "кэширование" --all-projects --since 30dbee remember search "кэширование пользовательских сессий" --semanticПочему поиск возвращает две половины
Заголовок раздела «Почему поиск возвращает две половины»Поиск возвращает объединение самых свежих и самых релевантных совпадений, потому что каждая половина по отдельности что-то теряет.
Измерено на хранилище из 50 001 записи: половина, отсортированная по дате, так и не добралась до двухлетнего факта, отвечавшего на вопрос — он был погребён под 50 000 более новых. Половина, отсортированная по релевантности, вернула его первым, за 27 мс. И наоборот: одна релевантность упускает «что я только что делал» — а это большая часть того, что нужно агенту, возобновляющему работу.
Семантический поиск
Заголовок раздела «Семантический поиск»--semantic ранжирует по смыслу, а не по совпадению слов, поэтому «кэширование
пользовательских сессий» находит «Redis кэширует токены сессий».
- Локально (по умолчанию) — многоязычный sentence-transformer
(
distiluse-base-multilingual-cased-v2, более 50 языков), запускаемый через ONNX Runtime и скачиваемый в~/.bee/models/при первом использовании. Ни вызовов API, ни ключей. - Gemini —
bee config set embedding.provider geminiплюсbee config set gemini.apiKey <ключ> --secret.
Косинус считается внутри MongoDB, и обратно приходят только победители. Ранжирование на клиенте означало скачивание всех сохранённых векторов на каждый запрос — измеренные 96,5 МБ при десяти тысячах записей. Теперь это 1,5 КБ, с побитово идентичными оценками.
Эмбеддинги при сохранении делаются по мере возможности: если бэкенд недоступен,
факт всё равно сохраняется, просто --semantic его не найдёт.
Контекст сессии
Заголовок раздела «Контекст сессии»bee remember context # что усвоил этот проект, полезное вперёдbee remember history --since 7dbee remember statsАвторство
Заголовок раздела «Авторство»Записи памяти хранят, кто их создал; имя берётся из конфигурации git так же, как
для правил — локальная для репозитория личность важнее глобальной, и связанные
рабочие деревья (worktree) учтены: конфигурация живёт в основном репозитории, а
не под файлом .git внутри worktree.
В общем хранилище именно это не даёт заметке коллеги читаться как ваша.