Все ноды/AI/Agent State
Память агента
Долгосрочная структурированная память агента: хранит key-value данные между вызовами. Агент может читать, изменять и удалять значения через встроенные инструменты. Подключается ко входу «Расширения агента» ИИ-агента выходом «Расширение агента».
Тип в графе: agent_memory
ToolExecStateful
Можно включить выход ошибки и обработать сбой отдельным путём.
Как попробовать
Минимальный рабочий сценарий
- Исполнение + данные
- Данные
Запускается сразу
Как применять
Память агента — это долгоживущий словарь фактов, который модель ведёт про себя: имя клиента, номер заявки, стадия сценария, предпочтения. Она не хранит реплики: лентой диалога занимаются ноды памяти: Вся история диалога, Последние сообщения и Память со сжатием. От переменных её отличает, кто пишет: переменную записывает нода графа в момент, который выбрали вы, а сюда пишет модель, когда сочтёт нужным.
Как это работает
Содержимое памяти подставляется в системный промпт блоком <memory> перед каждым запросом —
модель видит его всегда, отдельно спрашивать не нужно. Меняет она его инструментами
agent_memory_set, agent_memory_delete и agent_memory_clear; набор задаётся полем
«Разрешённые инструменты», а «Открыть инструменты для LLM» выключает запись целиком — память
становится справкой только для чтения.
Путь у значения точечный: client.name, order.items.0. Промежуточные словари создаются по
дороге, поэтому структуру заранее объявлять не требуется.
«Область» решает срок жизни: thread (по умолчанию) переживает сообщения одного чата,
session живёт один запуск, call начинается с нуля каждый ход. Ключ — пара «нода + тред»,
так что две ноды памяти в графе хранят разные словари. Подробнее — в разделе
Переменные и память.
«Запоминать вложения» — отдельный механизм: нода сохраняет ссылки на файлы, которые получил агент (по умолчанию 8 последних), и на следующих ходах снова вкладывает в контекст три самых свежих; остальные перечисляются в промпте по имени. Сами файлы не копируются.
Частые ошибки
- Тянуть ребро в порт «Память» агента. Выход у ноды — связь расширения, и идёт она в порт Расширения агента ИИ-агента. Порт «Память» принимает только три ноды памяти диалога.
- Ждать, что нода отработает шагом графа. Входа «Запуск» у неё нет: она живёт спутником агента. Порт Задать память и exec-выход появляются, только когда включено «Задать память из входа», и такое срабатывание заменяет словарь целиком.
- Читать память шаблоном
nodes.<id>.output. Чтобы отдать словарь в граф, включите «Вывод памяти» и тяните ребро от порта Содержимое памяти. - Оставлять модели инструмент очистки.
agent_memory_clearстирает весь словарь одним вызовом; если это нежелательно, уберите его из «Включённых инструментов». - Складывать в память то, что нужно графу. Условие, фильтр, поле запроса надёжнее держать в переменной: она типизирована, и её значение не зависит от того, вспомнила ли модель про запись.
Входы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Расширения агентаtools | Расширениеlink_extension | — | несколько связей |
Задать памятьmemory_in | Исполнение + данныеexecute_data | object | показывается, когда overwrite_from_input = true |
Выходы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Расширение агентаoutput | Расширениеlink_extension | — | |
Содержимое памятиmemory_out | Данныеdata | object | показывается, когда expose_memory_output = true |
Настройки
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
Разрешённые инструментыenabled_tools | array<string> | ["set","delete","clear"] | Какие инструменты памяти доступны LLM |
Вывод памятиexpose_memory_output | boolean | false | Показать выход, который отдаёт текущую память следующему шагу. |
Открыть инструменты для LLMexpose_tools | boolean | true | Разрешить LLM вызывать инструменты памяти (set, delete, clear) |
Читаемый вид в Catchformat_in_catch | boolean | true | Использовать короткие читаемые строки для вызовов инструментов памяти в потоке Extra |
Начальное состояние памятиinitial_memory | object | {} | Начальное состояние памяти агента (пары ключ-значение) |
Вложений в контекстmax_reinlined_attachments | integer | 3 | Сколько самых свежих запомненных вложений повторно встраивать в контекст при каждом запуске. Файлы сверх этого числа только перечисляются по имени. |
Макс. запоминаемых вложенийmax_remembered_attachments | integer | 8 | Сколько ссылок на вложения хранить (сохраняются самые новые). |
Задать память из входаoverwrite_from_input | boolean | false | Показать вход, который одновременно запускает шаг и приносит значение: пришедшее полностью заменяет сохранённую память. Появляется и его выход «Успех», который срабатывает после записи. |
Запоминать вложенияremember_attachments | boolean | false | Сохранять ссылки на вложения, которые получает агент, и повторно встраивать самые свежие из них в контекст модели в последующих ходах/сессиях. |
Областьscope | string | thread | thread: сохраняется между сообщениями чата · session: живёт одно выполнение · call: заново каждый раз Варианты: |
Общие поля
Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.
expose_error_output— Показывает выход, который срабатывает, если не удалась запись памяти.