Как я превращал свалку заметок в библиотеку для ИИ-агентов
База растёт сама из работы над контентом. Под каждый материал агент сначала делает исследование: идёт в веб, собирает данные, цифры, источники. Конспект сразу сохраняется в research/ под конкретную статью — это страховка от потери данных, если сессия оборвётся. Важный момент: исследование сохраняется автоматически, ещё до того, как автор начал писать.
Дальше срабатывает правило: перед новым ресёрчем агент обязан проверить, что уже собрано. Если по теме что-то есть, он это дополняет, а не пересобирает с нуля. А самое ценное и многоразовое из разовых исследований переезжает в постоянную базу. Так разовый сбор под одну статью со временем превращается в библиотеку, которой пользуются все агенты.
Звучит красиво, но было три проблемы:
— агент порой не знал, что в базе уже есть инфа, и искал заново;
— мог взять устаревшую цифру, потому что никто не помечал, когда факт «протух»;
— в документации написано «агент смотрит в базу», а в коде этого нет.
Слои: от свалки к полкам
Факты хранятся по-разному, в зависимости от роли. Большие документы разбил на атомарные карточки:
— fact-card — один проверяемый факт = одна карточка. С источником, уровнем доверия и сроком годности.
— case-card — один публичный кейс клиента, и что про него говорить нельзя.
— objections — карточка возражения («облако дороже») с готовым безопасным ответом.
— personas — карточки аудиторий: боли, KPI, запретные углы.
Зачем дробить? Большой текст легко выдаёт лишнее — непубличную деталь или старую цифру. Атомарная карточка хранит ровно один факт. Просрочилась — система сама её отложит.
Интеграции: появился библиотекарь
Полки — это полдела. Дальше нужен тот, кто приносит нужное:
— Картотека плюс ретривер в коде: даёшь тему — получаешь короткий список релевантных карточек, просроченные помечены.
— Компактная коробка вместо всей базы. Агенту едет не дамп на пол-базы, свежие факты, публичные кейсы, и список того, чего в базе нет.
— У каждого типа задач своя карта. Не «загляни в базу», а «для пресс-релиза бери позиционирование и публичные кейсы, а конфиденциальные числа только после проверки».
— Починил пайплайн. Шаги, которые раньше были красивым описанием, заработали: повторный фактчек сомнительных цифр реально запускается, а 19 ресёрчеров наконец получили веб-поиск, которым «просили» пользоваться.
Предохранитель на финале
Последний шаг любого пайплайна — редактор. Берёт только разрешённые к публикации карточки, а просроченные не пускает в текст. И всё закреплено тестами: рассинхрон «база — агент» теперь роняет сборку.
Что в итоге
Конечно, это не очень обязательный элемент фабрики контента. В воркфлоу записано, что надо найти, передать, написать, проверить. Всё в чистом контексте и галлюцинаций в финале не остаётся. Но каждый запрос это токены и время. И деньги. А запросы повторяются, в конце концов мы крутимся вокруг одних и тех же цифр исследований, бенчмарков, фактов. Поэтому постепенно наполнять базу знаний и оперативно обращаться к ней кажется не такой уж плохой идеей. Стоит потратить на реализацию несколько вечеров.
Ставьте плюсы, подписывайтесь на канал.