Все ноды/AI/Conversation Memory

Вся история диалога

Копит историю диалога из СОБСТВЕННЫХ прошлых прогонов этого сценария: на первом ходу пуста и заполняется по мере переписки. Если нужны сообщения, уже написанные в чате до этого сценария, читай их нодой «История чата». Подключается ко входу «Память» ИИ-агента. У LLM Response входа памяти нет — историю беседы ему подают нодой «История чата» на вход «Сообщение». Область хранения: thread (между сообщениями), session (в рамках выполнения) или call (разово).

Вся история диалога▶S
Задать историюПамять
Сообщения

Тип в графе: buffer_memory

ExecStateful

Можно включить выход ошибки и обработать сбой отдельным путём.

Как попробовать

Агент, который помнит весь диалог

Память подключается к ИИ-агенту связью link_memory — собственного входа Run у неё нет.

Вход
LLM▦
Вся история диалога▶S
ИИ-агент▶▦
Выход▶
  • Исполнение + данные
  • LLM
  • Память
Нажмите «Скопировать ноды», откройте редактор и нажмите Ctrl+V на холсте.

Запускается сразу Перед запуском укажите: модель в ноде LLM.

Как применять

Нода отдаёт агенту весь диалог целиком: ничего не обрезается и не сжимается. Берите её, пока разговор короткий и предсказуемый — справочный бот на пару реплик, пошаговый опрос, отладка нового графа. Как только тред живёт долго, контекст растёт вместе с ним, и каждый следующий ход стоит дороже предыдущего: тогда переходите на Последние сообщения (фиксированный хвост) или Память со сжатием (сжатие старого в текст).

Как это работает

Нода не исполняется сама по себе — входа «Запуск» у неё нет. Её «тянет» потребитель по связи link_memory, и такой потребитель один: порт Память у ИИ-агента. У Ответа LLM входа памяти нет вовсе — историю беседы ему подают нодой История чата на порт «Сообщение».

После каждого хода агент дописывает в память весь раунд: сообщение пользователя, ответы модели, вызовы инструментов и их результаты. Поэтому «двадцать сообщений» у агента с инструментами — это часто два-три обмена репликами.

Хранилище адресуется тройкой «id ноды + тред + тип памяти». Отсюда два следствия: две памяти в одном графе не видят историю друг друга, а замена буферной памяти на оконную на том же месте начинает историю заново — прежние сообщения остаются в базе, но уже под другим ключом.

Поле «Область» решает, сколько живёт запись: thread — история переживает сообщения чата и лежит в базе; session — только текущий запуск; call — пустая при каждом обращении.

Частые ошибки

  • Нода на холсте, но не связана с агентом. Сама по себе она не делает ничего: связь рисуется от выхода Память к порту Память агента.
  • Ждать историю там, где нет треда чата. При запуске по вебхуку, по расписанию или кнопкой «Запустить» треда нет, и thread-память привязывается к идентификатору запуска — то есть ведёт себя как session.
  • Путать память с историей чата. В панели чата видно то, что сохранил канал; память агента — отдельное хранилище со своим ключом. Удалили ноду или сменили ей id — агент забыл диалог, хотя переписка в панели осталась на месте.
  • Включать «Задать историю из входа» ради чтения. Порт messages_in перезаписывает хранилище целиком. Чтобы просто посмотреть текущее состояние, включите «Вывод сообщений».

Входы

ПортПроводДанныеПримечания
Задать историюmessages_inИсполнение + данныеexecute_datamessages

показывается, когда overwrite_from_input = true

Выходы

ПортПроводДанныеПримечания
ПамятьoutputПамятьlink_memory—
Сообщенияmessages_outДанныеdatamessages

показывается, когда expose_messages_output = true

Настройки

ПолеТипПо умолчаниюОписание
Вывод сообщенийexpose_messages_outputbooleanfalse

Показать выход, который отдаёт сохранённые сообщения следующему шагу.

Задать историю из входаoverwrite_from_inputbooleanfalse

Показать вход, который одновременно запускает шаг и приносит значение: пришедшие сообщения полностью перезаписывают сохранённую историю. Появляется и его выход «Успех», который срабатывает после записи.

Областьscopestringthread

thread: сохраняется между сообщениями чата · session: живёт одно выполнение · call: заново каждый раз

Варианты: thread — Тред, call — Вызов, session — Сессия

Общие поля

Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.

  • expose_error_output — Показывает выход, который срабатывает, если не удалась запись истории.