Все ноды/Integrations/Files

Файлы: прочитать файл

Читает текстовый файл из файлового хранилища.

Файлы: прочитать файл▶
Хранилище файловСодержимое файла
Ошибка
Файл

Тип в графе: file_read

Exec

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

Порты можно разделить на исполнение и данные (split ports).

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

Минимальный рабочий сценарий

Вход
Файлы: прочитать файл▶
Выход▶
  • Исполнение
  • Исполнение + данные
Нажмите «Скопировать ноды», откройте редактор и нажмите Ctrl+V на холсте.

Запускается сразу

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

Нода читает один файл, путь которого известен заранее. Если путь ещё нужно найти — сначала Поиск файлов. Если файл табличный и нужны строки и колонки, а не текст, — Читать CSV или Читать XLSX: они возвращают таблицу, а не строку. Если решать, какой файл открыть, должна модель — Инструмент файлов.

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

Поле «Источник подключения» по умолчанию стоит в значении «Из текущего запуска»: нода работает с собственным хранилищем воркспейса — тем же деревом, что показывает вкладка «Файлы». Порт file_store в этом режиме не рисуется. Чтобы читать из другого места, переключите поле на «Внешнее подключение» и подключите Хранилище пространства или Подключение WebDAV. «Подпапка» действует только в первом режиме — у подключённой конфиг-ноды свой корень.

Текстовый файл или бинарный, нода решает по расширению пути, ещё до чтения. Текст возвращается в content вместе с encoding и флагом truncated. Бинарный (картинка, PDF) не декодируется: он уходит на порт file ленивой ссылкой, а content остаётся пустым — байты подтянутся там, где они действительно нужны, например при отправке в модель или при вложении в ответ.

Отсутствующий файл, отказ в доступе, недоступное хранилище — это отказ ноды с кодом ошибки, а не пустой content. Включите «Выход ошибки», чтобы обработать такой случай в графе.

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

  • Бинарный файл из хранилища воркспейса. Ленивая ссылка резолвится только для хранилища с подключением, а у встроенного его нет — нода откажет вслух, вместо того чтобы отдать ссылку без байтов. Для картинок и PDF нужен внешний диск через WebDAV.
  • Расширение не совпадает с содержимым. Файл dump.txt, внутри которого PDF, будет декодирован как текст.
  • Ожидание, что «Макс. байт» можно поднять выше 1 МиБ. Это потолок: чтение обрывается и поднимает truncated, ошибки при этом нет.
  • Чужая кодировка. Нечитаемые байты заменяются символом-заглушкой, а не роняют ноду: файл в cp1251, прочитанный как utf-8, вернёт мусор, который выглядит как успех.
  • Абсолютный путь в поле. Ведущий / просто отбрасывается, и путь читается от корня хранилища: /etc/hosts превращается в etc/hosts внутри хранилища, а не в системный файл. Сегмент .. отвергается сразу.

Входы

ПортПроводДанныеПримечания
Хранилище файловfile_storeДанныеdata—

показывается, когда connection_source ≠ "auto"

Выходы

ПортПроводДанныеПримечания
Содержимое файлаoutputИсполнение + данныеexecute_dataobject
Ошибкаon_errorИсполнение + данныеexecute_data—

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

ФайлfileДанныеdatafile

Настройки

ПолеТипПо умолчаниюОписание
Путь к файлуpathstring""

Относительно корня хранилища. Текстовый файл приходит полем ``content`` основного выхода (``nodes.<id>.output.content``); бинарный (image/pdf/…) — на порт «Файл» ленивой ссылкой, которую может прочитать LLM.

поддерживает шаблоны

Источник подключенияconnection_sourcestringauto

Откуда нода берёт подключение. «Из текущего запуска» использует то, что платформа уже знает (Telegram-бот, на который опубликован сценарий / собственное файловое хранилище этого пространства), и связей не требует. «Внешнее подключение» показывает ресурсный порт, чтобы в него можно было подключить конфиг-ноду.

Варианты: auto — Из текущего запуска, external — Внешнее подключение (подключить конфиг-ноду)

Подпапкаstore_subfolderstring""

Необязательная папка внутри хранилища этого пространства, которую считать корнем, напр. `reports` или `sessions/{{ variables.session_id }}`. Пусто = корень хранилища.

поддерживает шаблоны

показывается при «Источник подключения» = Из текущего запуска

Дополнительно
Макс. байтmax_bytesinteger1048576

Чтение останавливается здесь, и в выводе поднимается флаг `truncated`.

Кодировка текстаencodingstringutf-8

Используется для декодирования текстовых файлов; для бинарных игнорируется.

Общие поля

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

  • expose_error_output — Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этой ноды.
  • split_ports_in — Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.
  • split_ports_out — Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.