В Нейро42 можно ссылаться на данные любого предыдущего узла в рабочем процессе. Это не обязательно должен быть узел, непосредственно предшествующий текущему — можно обращаться к любому узлу в цепочке, используя выражение: $(<node-name>).item
Как Нейро42 определяет, какой элемент использовать
Если предыдущий узел возвращает несколько элементов, платформа должна понять, какой именно элемент использовать. Когда вы применяете .item, Нейро42 автоматически определяет правильный элемент, опираясь на цепочку связывания данных.
Для каждого элемента система отслеживает, какие элементы предыдущих узлов использовались для его генерации. Эта цепочка позволяет корректно находить нужный элемент в заданном узле.
Когда возникает ошибка при использовании .item
Использование .item может вызвать ошибку в следующих случаях:
- Цепочка связывания нарушена — платформа не может определить исходный элемент.
- Цепочка указывает на несколько элементов — непонятно, какой элемент использовать, когда предыдущий узел возвратил несколько возможных вариантов.
Решения проблем с .item
Избежать использования .item
Можно использовать альтернативные методы:
- .first() — выбрать первый элемент.
- .last() — выбрать последний элемент.
- .all()[index] — выбрать элемент по индексу в массиве.
Эти методы требуют знания позиции целевого элемента в выходных данных предыдущего узла. Для подробностей см. раздел Встроенные методы и переменные | Output of other nodes.
Исправить первопричину ошибки
- Ошибка: «Информация для выражений, отсутствующих в предыдущем узле»
Сообщение ошибки:
ОШИБКА: Информация для выражений, отсутствующих в предыдущем узле
Причина: в цепочке есть узел, который не возвращает информацию о связывании элементов.
Решение зависит от типа узла:
- Code узлы: убедитесь, что вы возвращаете информацию о том, какие входные элементы использовались для создания каждого выходного элемента. См. раздел Связывание элементов в узле Code.
- Пользовательские или сторонние узлы: разработчик узла должен обновить его, чтобы возвращать информацию о входных элементах для каждого выходного элемента. См. раздел “Связывание элементов” для разработчиков узлов
- Ошибка: «Несколько совпадающих элементов для выражения»
Сообщение ошибки:
ОШИБКА: Несколько совпадающих элементов для выражения
Причина: предыдущий узел использует несколько элементов для создания одного нового элемента. Примеры узлов, которые могут это делать: Summarize, Aggregate, Merge.
Если вы применяете .item и есть несколько совпадений, система не знает, какой элемент выбрать.
Возможные решения:
- Использовать .first(), .last() или .all()[index] для точного указания целевого элемента.
- Ссылаться на другой узел, который содержит ту же информацию, но не возвращает несколько совпадающих элементов.
Таким образом, правильное понимание работы .item и цепочек связывания позволяет избежать ошибок и корректно обращаться к данным предыдущих узлов.