4 Гід-напрямний 5 Майже архітектор ~9 хв

Памʼять ШІ-агента: як Claude запамʼятовує тебе між сесіями

То він «вже знає твої звички», то перепитує те саме по колу - розбираємося чому

Як працює памʼять ШІ-агента: що таке інстинкти, впевненість і область памʼяті, чому довга памʼять агента живе у файлах, а не в моделі, і як її налаштувати.

Скіли ECC у цьому уроці: continuous-learning-v2

Що таке памʼять агента простими словами

Уяви нового бариста в улюбленій кавʼярні. Першого дня кажеш: «капучино на вівсяному, без цукру». Він киває, робить - ідеально. Назавтра приходиш, а він знову: «вам як?». І післязавтра. І за тиждень. Кожен. Раз. Заново.

Бісить, так? Ось так само поводиться «гола» модель. Усередині однієї розмови вона геніальна, памʼятає кожну дрібницю. Але закрив чат - і ти для неї знову незнайомець. Не тому що дурна. Просто їй буквально ніде тебе зберігати між зустрічами.

А тепер уяви, що бариста завів блокнотик і записав: «постійний гість - капучино, вівсяне, без цукру». Зранку відкрив, прочитав - і зустрічає як рідного. Цей блокнотик і є памʼять агента. І весь фокус у тому, що і як туди писати.

Бариста-робот з блокнотом, у якому записані вподобання постійного гостя
Модель не памʼятає тебе. Блокнот - памʼятає. Памʼять агента - це його блокнот.

Навіщо вайбкодеру розбиратися в памʼяті ШІ

Ти вайбкодер. Ганяєш агента по своєму проєкту день у день. Зрозумієш, як він запамʼятовує - і одразу кілька речей стануть на місце:

  • перестаєш пояснювати те саме вдесяте по колу - агент сам накопичує твої звички;
  • знаєш, куди покласти важливе правило, щоб воно пережило перезапуск;
  • більше не ловиш сюрприз «у новому чаті він усе забув і зробив по-своєму»;
  • розумієш, чому то агент упевнено ліпить «як ти любиш», то обережничає.

Уся різниця між «щоразу з нуля» і «агент уже знає мій проєкт» зводиться до трьох речей: де живе памʼять, у якому вигляді й наскільки агент їй довіряє. Зараз розкладемо по поличках.

Як влаштована памʼять Claude: інстинкти, впевненість і область

У розумних системах памʼяті (наприклад, у скілі continuous-learning ) агент не звалює в блокнот усе підряд. Він пише акуратні маленькі шматочки. Тримається все на трьох китах.

Інстинкт - це одна звичка, а не полотно тексту

Памʼять не пишеться абзацами на кшталт «а ось що в нас було вчора». Вона пишеться інстинктами . Інстинкт - атомарна цеглинка: один тригер, одна дія. І все.

Наприклад: «коли пишу нову функцію - роби у функціональному стилі». Або: «коли зберігаю файл - спершу прочитай його». Дрібно, конкретно, без води. Такі цеглинки легко додати, легко перевірити і не шкода викинути, коли застаріли.

Впевненість - наскільки агент довіряє звичці

У кожного інстинкту є число - впевненість від 0.3 до 0.9. Це і є різниця між «начебто ви без цукру?» і «капучино вівсяне, як завжди, уже наливаю».

ВпевненістьЩо означаєЯк поводиться агент
0.3Боязка здогадкаТільки запропонує, навʼязувати не стане
0.5СерединкаЗастосує, якщо доречно
0.7СильнаЗробить сам, не перепитуючи
0.9Майже залізнаБазова поведінка, само собою

Впевненість зростає, коли звичка повторюється, а ти її не правиш. І падає, коли кажеш «ні, не так» або патерн давно не зринав. Тобто памʼять не застигає в камені - вона живе й підлаштовується під тебе.

Шкала впевненості від боязкої здогадки до залізного правила
Що довше ти не сперечаєшся - то сміливіше агент робить «як ти любиш».

Область памʼяті - правило для проєкту чи для всього одразу

Тут штука, на якій новачки спотикаються. Памʼять живе у двох областях:

  • Проєктна - діє тільки всередині цього проєкту. Сюди йдуть конвенції мови та фреймворку: «використовуй React-хуки», «тести клади в папку tests», «тут стиль такий-то».
  • Загальна - діє всюди. Сюди йдуть універсальні істини: «завжди перевіряй користувацький ввід», «пиши тести», «спочатку прочитай файл, потім міняй».

Хороша памʼять проти поганої: плюси й мінуси

Памʼять працює на тебе
  • Важливі правила лежать у файлах, а не в одному повідомленні чату, яке згине.
  • Памʼять атомарна: одна нотатка - один факт, жодних полотен тексту.
  • У фактів є впевненість - слабкі пропонуються, сильні застосовуються самі.
  • Памʼять чиститься: застаріле видаляється, а не накопичується роками.
  • Локальні правила лежать у своєму проєкті, універсальні - у загальній області.
Памʼять працює проти тебе
  • Памʼять перетворилася на звалище - агент палить контекст на читання сміття.
  • Нотатки сперечаються одна з одною: в одній «роби так», в іншій «ніколи так».
  • У памʼять потрапили секрети (паролі, ключі) - а файл потім витік.
  • Звички з чужого проєкту лізуть не туди й ламають логіку.
  • Агент вірить старій нотатці, хоча в проєкті давно все інакше.

Памʼять агента на практиці: реальний приклад

Тиждень пиляєш сайт. І щоразу заново диктуєш агентові: «відступи по 8 пікселів», «кнопки - заокруглені», «текст українською». До пʼятого дня це вже зубний біль, і ти щиро не розумієш, чому він «не запамʼятовує».

А він і не мусить запамʼятовувати сам по собі - ти йому не видав блокнот. Тямущий вайбкодер робить інакше: один раз просить агента завести памʼять і складати туди звички. Далі блокнот ведеться сам.

Промпт - скопіюй і спробуй

Заведи в проєкті файл MEMORY з моїми звичками й веди його сам.

Правила ведення:

  1. Пиши короткими пунктами в стилі «коли роблю X - роби Y». Один пункт - один факт.
  2. Що вже знаємо: відступи по 8 пікселів, кнопки заокруглені, усі тексти українською.
  3. Якщо я тебе виправляю - онови потрібний пункт, не плоди дублі.
  4. Якщо факт застарів або суперечить новому - видали старий, не тримай обидва одразу.
  5. Жодних паролів, ключів і секретів у цьому файлі.
  6. На початку кожної нової сесії спершу прочитай цей файл, потім берися за задачу.
Мем: агент у новій сесії радісно робить усе по-своєму, бо правила жили тільки в чаті
Класика жанру: «він же памʼятав це вчора!». Не памʼятав. Це жило тільки в чаті.

Чому агент забув звички: чек-лист діагностики

Агент «забув» твої звички? Пробіжися по чек-листу, перш ніж психувати:

  1. Правило взагалі у файлі? Сказав один раз у чаті - після перезапуску його вже немає. Перенеси в памʼять.
  2. Чи немає дублів і суперечностей? Якщо в памʼяті «роби А» і «ніколи А» - агента тіпатиме. Почисти.
  3. Чи не звалище це? Файл памʼяті розрісся в суцільне полотно - розбий на короткі атомарні пункти.
  4. Чи не з чужого проєкту правило? Локальну звичку могло занести не туди. Перевір, де вона лежить.
  5. Факт не протух? Агент чесно вірить старій нотатці. Якщо в проєкті все змінилося - онови запис.

Часті помилки новачка в роботі з памʼяттю

  • Вірити, що «ШІ запамʼятає сам». Без файлу памʼяті він починає кожну сесію з чистого аркуша.
  • Тримати правила тільки в листуванні. Закрив чат - правил як не було. Виноси у файл.
  • Писати в памʼять полотнами тексту. Агент потоне в тексті. Дроби на короткі «коли X - роби Y».
  • Накопичувати й не чистити. Старі й суперечливі нотатки плутають агента сильніше, ніж узагалі порожній файл.
  • Складати секрети в памʼять. Файл одного разу витече. Паролі та ключі - ніколи в памʼять.
  • Дивуватися, що звичка не спрацювала в іншому проєкті. Проєктна памʼять замкнена у своєму проєкті - це фіча, а не баг.

TL;DR - если коротко

  • Сама модель не памʼятає нічого між сесіями. Памʼять агента - це файли на диску, і читає він їх заново під час кожного запуску.
  • Тямуща памʼять зберігає не полотна тексту, а інстинкти - крихітні правила «коли X - роби Y».
  • У кожного інстинкту є впевненість від 0.3 до 0.9: слабкі просто пропонуються, сильні спрацьовують самі.
  • Памʼять ділиться на проєктну і загальну: правила React сидять у React-проєкті, «завжди перевіряй ввід» - працює всюди.
  • Хороша памʼять атомарна й чиститься: одна нотатка - один факт, протухле видаляємо, а не накопичуємо.
  • Секретам у памʼяті не місце. Паролі та ключі туди не клади: файл рано чи пізно витече.

Пошук по вікі

Натисніть Esc для закриття

Введіть запит для миттєвого пошуку по всіх сторінках курсів та уроків.