ИИ-ассистент в Code Node — это способ сгенерировать рабочий JavaScript прямо в вашем сценарии, используя встроенную интеграцию с ChatGPT. Он помогает быстро сформировать основу кода, которую вы можете доработать вручную.
Доступно только в облачной версии.
В Python — недоступно.
Что делает ИИ внутри Code Node?
ИИ-генерация позволяет:
- автоматически писать JavaScript-логику под конкретные данные нода
- преобразовывать данные, объединять их, фильтровать или агрегировать
- получать готовый код по текстовому запросу
- ускорять разработку — особенно на этапе прототипирования
Но важный момент:
Сгенерированный код полностью заменяет ваш текущий код в ноде.
Используйте его как стартовую точку, а не как финальный результат.
Как использовать ChatGPT в Code Node
- Откройте Code Node.
- В параметре Язык выберите JavaScript.
- Перейдите на вкладку Спросить ИИ.
- Опишите задачу: что должны делать данные, как они устроены, что вы хотите получить.
- Нажмите Сгенерировать Код.
- Результат автоматически появится на вкладке Код.
После этого вы можете редактировать код вручную.
Ограничения ИИ-функции
ИИ-интеграция внутри Code Node работает с рядом ограничений по контексту и данным:
Что делать нельзя:
- Запрашивать данные из внешних источников — ИИ работает только с входящими данными нода.
- Работать с большим объемом данных — большие схемы могут не обработаться.
- Генерировать Python (Python не поддерживается).
- Полагаться на исполнение переднего контекста — ИИ не имеет доступа к данным workflow, пока ноды не выполнены.
На что стоит обратить внимание:
- ИИ видит схему данных, но не сами значения. Вы должны объяснять, где находится нужное поле и как к нему обратиться.
- Если перед Code Node много нодов, контекст может быть неполным.
- Входящие данные должны быть вычислены — т.е. предыдущие ноды должны быть уже выполнены.
Лимиты использования
- Во время пробного периода лимитов нет.
- В дальнейшем ограничения могут зависеть от тарифного плана (как и другие ИИ-функции).
Как писать хорошие ИИ-запросы
Хорошая формулировка — хороший результат.
Рекомендации:
- Давайте примеры
Если можно — приложите пример нужного результата.
- Описывайте шаги
Например: Отфильтруй пользователей младше 18, затем отсортируй по фамилии
- Избегайте двусмысленностей
Вместо “старшие пользователи” — “пользователи 60 лет и старше”.
- Четко задавайте формат выходных данных
Напишите: агрегация? сортировка? фильтрация? структура JSON?
Нейро42-специфичные советы
- Уточняйте происхождение данных
Используй данные только из нода «Purchases» и игнорируй «Refunds».
- Указывайте, какие поля входящих данных важны
Входящие данные лежат в item.json.person.email, поле может быть null.
- Помните про структуру результата
ИИ должен вернуть данные в формате массива объектов: return [{ json: {…} }]
Примеры рабочих промтов
Ниже — адаптированные версии оригинальных примеров, чтобы структура была сохранена, но текст был уникальным.
Пример 1: Найти пользователя из второй выборки
Промт:
Данные Slack содержат один объект. Входящие данные — список пользователей из Notion. Поле email в Notion иногда бывает null. Нужно найти Notion-пользователя с таким же email, как у Slack, и вернуть его notionId.
Нужный JavaScript:
const slackUser = $(«Mock Slack»).all()[0];
const notionUsers = $input.all();
const slackEmail = slackUser.json.email;
const matched = notionUsers.find(
(u) => u.json.person && u.json.person.email === slackEmail
);
return matched ? [{ json: { notionId: matched.json.id } }] : [];
Пример 2: Преобразование данных в строку
Промт:
Верни строку, в которой перечислены все username, каждый в двойных кавычках, через запятую.
Нужный JavaScript:
const items = $input.all();
const list = items.map(i => `»${i.json.username}»`);
return [{ json: { usernames: list.join(«, «) } }];
Пример 3: Сводка данных + сообщение для Slack
Промт:
Сформируй markdown-сообщение, подсчитав количество идей, фич и багов по полю property_type. Затем выведи топ-5 записей по количеству голосов, оформленных ссылками в Slack.
Нужный JavaScript:
const data = $input.all();
let ideas = 0, features = 0, bugs = 0;
data.forEach(d => {
const type = d.json.property_type[0];
if (type === «Idea») ideas++;
if (type === «Feature») features++;
if (type === «Bug») bugs++;
});
const topFive = data
.sort((a, b) => b.json.property_votes — a.json.property_votes)
.slice(0, 5)
.map(s => `<${s.json.url}|${s.json.name}> with ${s.json.property_votes} votes`)
.join(«\n»);
const message = `*Summary*\nIdeas: ${ideas}\nFeatures: ${features}\nBugs: ${bugs}\nTop 5:\n${topFive}`;
return [{ json: { slackMessage: message } }];
Пример: Подсказать ИИ структуру входящих данных
Промт:
Входящие данные из «Mock data» — список людей. Для каждого элемента верни объект с personal_info.first_name и work_info.job_title.
Нужный JavaScript:
const items = $input.all();
return items.map(i => ({
json: {
firstName: i.json.personal_info.first_name,
jobTitle: i.json.work_info.job_title,
}
}));
Полезные ресурсы
- Руководство Pluralsight о том, как писать промты для генерации кода. https://www.pluralsight.com/resources/blog/business-and-leadership/how-use-chatgpt-programming-coding
- Документация по структуре данных