Все ноды/AI/RAG
Запись в KB
Добавляет текст в базу знаний: чанкинг → эмбеддинг → vector store. По умолчанию создаёт документ (виден в UI KB); опционально — raw-режим без записи документа.
Тип в графе: kb_write
Exec
Можно включить ветку ошибки (expose_error_output) и обработать сбой отдельным путём.
Порты можно разделить на исполнение и данные (split ports).
Как попробовать
Минимальный рабочий воркфлоу
- Исполнение + данные
Перед запуском выберите своё подключение или базу знаний — в графе стоит REPLACE_ME.
Как применять
Нода нужна, когда в базу знаний пишет сам воркфлоу: итог разговора, распознанный документ, карточка из формы, ответ внешней системы. Загрузка файлов руками — это раздел «База знаний» в приложении, нода его не заменяет и новую базу не создаёт: базу нужно завести заранее и выбрать в поле.
Как это работает
Текст режется на чанки, каждый чанк эмбеддится и попадает в векторное хранилище — то же самое, что
происходит с загруженным файлом. Порт Text приносит и запуск, и содержимое; если в него пришло
только исполнение, текст берётся из поля «Текст» (шаблон вида {{ inputs.text }}).
Размер чанка и перекрытие со значением 0 означают «взять из настроек базы», а не «не резать».
Метка источника — это имя, под которым документ появится в списке документов базы.
Метаданные — типизированные пары ключ/значение; они прикрепляются к каждому чанку и потом
работают как жёсткие фильтры при поиске. Значения рендерятся как Jinja, поэтому пара
session / {{ variables.sid }} сохранится уже разрешённой и совпадёт с таким же фильтром на
стороне чтения — так делается изоляция контекста по диалогу.
На выходе — document_id, chunk_count и kb_id.
Частые ошибки
- Пустой текст. Это не «успешно ничего не записали», а ошибка ноды: документ, который автор собирается искать позже, иначе просто не появился бы, а обнаружилось бы это через несколько ходов.
- Ожидание дедупликации. Каждый запуск создаёт новый документ. Нода, которая пишет каждое сообщение чата, за неделю превращает базу в свалку почти одинаковых чанков.
- Выключенный тумблер «Отслеживать как документ». Чанки проиндексируются и будут находиться, но записи документа не будет — из интерфейса базы удалить их станет нечем.
- Ожидание, что порт KB настроит запись. Из подключённой Базы знаний берётся только идентификатор базы; Top K и порог относятся к поиску.
- Метаданные добавили после наполнения базы. Старые чанки их не получат, и фильтр по новому ключу отсечёт всё, что было записано раньше.
Входы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Texttext | Исполнение + данныеexecute_data | — | Content to ingest; replaces the Text template when connected |
KBkb | Данныеdata | — | Knowledge Base node config; its kb_id overrides the field here |
Выходы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Resultoutput | Исполнение + данныеexecute_data | object |
Настройки
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
База знанийkb_id | string | "" | База знаний, в которую пишется текст. Подключённая нода Knowledge Base задаёт это значение и перекрывает поле. перекрывается портом: kb |
Текстtext_template | string | {{inputs.text}} | Содержимое для загрузки. Поддерживает {{inputs.text}}, {{nodes.x.output.text}}. поддерживает шаблоны |
Метка источникаsource_label | string | workflow | Имя файла/метка, показываемые для созданного документа. поддерживает шаблоны |
| Дополнительно | |||
Отслеживать как документcreate_document_record | boolean | true | Когда включено, создаётся запись документа KB (видна и удаляема в UI KB). Отключите для эфемерных raw-вставок чанков, минующих список документов. |
Размер чанка (переопределение)chunk_size | integer | 0 | 0 = использовать размер чанка, заданный в KB. |
Перекрытие чанков (переопределение)chunk_overlap | integer | 0 | 0 = использовать перекрытие чанков, заданное в KB. |
Метаданныеmetadata | array | — | Типизированные метаданные ключ/значение, прикрепляемые к каждому чанку; доступны для поиска через жёсткие фильтры. |
Общие поля
Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.
expose_error_output— Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этого шага.split_ports_in— Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.split_ports_out— Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.