📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Как не ждать разработку: от BPMN к ИИ-агенту в n8n • Ксения Тесёлкина

школа Бескова и Богачёвой Systems Education1:42:40

Transcription

[музыка] Уважаемые зрители, всем добрый вечер. Мы готовы начинать наш пятничный вебинар на тему: "Как не ждать разработку от BPMN к агенту в N8N?" А вебинар проведёт эксперт нашей школы и по совместительству старший менеджер продукта ВК Ксения Тисёлкина. А, Ксюш, я передаю тебе слово и желаю прекрасного доклада.

А, всем добрый вечер. Рада вас сегодня видеть. Вижу, что у нас собралось много человек. Надеюсь, сегодняшний пятничный вечер вы проведёте не зря, и информация будет вам максимально полезна. Давайте для начала представлюсь. Собственно, меня зовут Ксения. А я в IT-сфере, а, работаю уже с 2010 года. Начинала как разработчик. Закончила как менеджер продукта. Собственно, сейчас работаю старшим менеджером продукта в ВК. Последний год нахожусь в декрете, но это не мешает мне заниматься разработкой. И я беру проекты на фрилансе. И сегодня как раз покажу вам некоторые подходы, которые подходят и для проектов небольших, в том числе, но и они могут быть применены также и в крупных компаниях. На самом деле мы это всё обсудим. В общем, работала я в разных сферах, разных доменных областях. У меня портфолио более тридцати проектов, как для российских, так и международных заказчиков. И последнее время я как раз специализируюсь на, а, искусственном интеллекте, на его применении, а, в работе системного аналитика и менеджера продукта.

Ну и, собственно, сегодня как раз м мы затронем одну из актуальных тем. Это работа в N8N, на платформе N8М и разработка иагентов. Собственно, сегодня наш вебинар пройдёт по следующему плану. Мы поговорим про текущий рынок, про то, как сейчас можно проверять гипотезы, а, об автоматизации некоторых бизнес-процессов. Дальше м рассмотрим, как перейти от диаграмм бизнес-процессов к процессам в N8N, как автоматизировать эти процессы и как могут быть встроены, а, интеллектуальные агенты как раз вот в эти процессы. И, а, рассмотрим несколько примеров. Я покажу, а как сделать, а, и агента с нуля, а мы прямо с вами вместе построим такого агента в N8М, запустим, протестируем. А дальше я покажу на примере своих как раз фриланс проектов несколько реальных ботов и тоже покажу их архитектуру. Ну и мы подведём итоги. Я расскажу, куда двигаться дальше можно в этом направлении, что изучить. и, собственно, как создать своего собственного и агента, если вам это необходимо, и бота в Telegram. В общем, мм, будет интересно. Поэтому я думаю, что данный вебинар, а будет актуален как системным аналитикам, так менеджерам продуктов, так и даже владельцам бизнесов или работающим на себя, если вы хотите автоматизировать какую-то свою рутину, а быстро, без, а, привлечения команды разработки.

Ну и, а, что сейчас мы видим на рынке? На рынке сейчас складывается такая ситуация, что уже просто разрабатывать постклассическому флоу разработки недостаточно. Из-за того, что повсеместно внедряются, во-первых, и и инструменты, во-вторых, а очень большие требования, в принципе, от потребителей и на рынке высокая конкуренция. И у нас а очень быстро требования начинают устаревать, рынок очень быстро программных систем меняется, а всё больше там, а выпускается новых фич и эти фичится быстрее. И, собственно, вот этот полный цикл разработки, который у нас обычно был раньше применим, да, когда мы сначала формируем идею, потом делаем анализ, потом согласуем эту идею, потом отдаём эти требования м проект, да, э, в разработку на несколько месяцев ждём, потом тестируем, смотрим результаты, да, и только потом возвращаемся к доработке этой идеи. Вот такой подход, он уже не во всех компаниях применим. Понятно, что в крупных компаниях крупные гиганты типа ВК, например, Яндекса, там, Сбера, Валбереса, в принципе, такие компании могут себе позволить такой цикл разработки, потому что компания устойчивая, у них уже наработана аудитория, а эта аудитория, в принципе, не ждёт там каких-то сильно новых фич, да, а они уже уже пользуются продуктами. И для разработки новых функций, в принципе, такой подход подходит, потому что, ну, есть время на вот эту реализацию. И то в крупных компаниях сейчас тоже повсеместно внедряется искусственный интеллект как помощник для команды разрабочиков, да. Но в мм малых, средних бизнесах, а тем более в стартапах, такой ээ процесс уже кажется слишком долгим и уже слишком поздно. аа проверять какие-то гипотезы после там двух-трёхмесячного ожидания разработки, пока она сделает этот функционал. И, собственно, как аналитики или как менеджеры продуктов, мы можем ускорить вот эту проверку актуальности каких-то процессов, автоматизаций, а, делая это раньше, за счёт, а, некоторых конструкторов, за счёт искусственного интеллекта. Сегодня, собственно, об этом и поговорим.

Ну и у нас, как у аналитиков, на самом деле есть всё для того, чтобы автоматизировать помимо самой разработки, да, то есть самого исполнения вот этой автоматизации. То есть мы хорошо понимаем процесс, глубоко понимаем бизнес-логику, потоки данных, потоки м процессные, да? А мы мм видим, кто у нас будет в этом процессе участвовать, а какие у них потребности, какие есть точки принятия решения ветления этого процесса. Мы также с вами описываем требования к данным, да, какие данные, потоки данных должны участвовать, а, в этой автоматизации, с какими данными взаимодействуют роли, что они должны, какую информацию потреблять для выполнения своих задач. Ну и мы также обычно проектируем интеграцию, да, то есть какими внешними программными системами должна взаимодействовать наша система, чтобы выполнять успешно операции и шаги бизнес-процесса. Ну и нам не хватает, на самом деле, только реализации тех задумок, которые, собственно, для которых мы пишем требования. И вот вопрос, можно ли как-то, э, без команды разработки обойтись для того, чтобы автоматизировать бизнес-процессы? Безусловно, все, наверное, бизнес-процессы мы не можем сделать без разработки. Бывают сложные процессы, требующие, конечно, каких-то кастомных решений. А плюс тот подход, про который мы сегодня подговорим, это всё-таки не продакшн решения, крупные продакшн решения, когда мы делаем для какой-то большой массовой аудитории, да, а какие-то какую-то систему. А этот подход больше подойдёт, вот, как я сказала, для малого и среднего бизнеса, для стартапов, для фриланса, когда у нас, а, не такие большие нагрузки и а нам нужно, наоборот, иметь гибкость какую-то, да, в решении быстро-быстро что-то менять.

Ну и м как раз вот такой подход, когда мы переходим от описания какого-то бизнес-процесса, от описания требований, а сразу к работающему процессу. Обычно называют либо исполняемой архитектурой, либо исполняемым бизнес-процессом. Раньше было модно, я помню, а строить очень детальные BPM диаграммы. Затем их, а, сразу же превращать в код с помощью таких движков, как Комунда, например. А, ну, такой подход, например, а, разработки был актуален в Теньков компании, я точно знаю. И, мм, что делали аналитики в этом подходе? Аналитики рисовали очень детальную BPMN-диаграмму. Дальше это BPMN диаграмма конвертировалась уже в рабочий код и исполнялась. То есть этап разработки как раз-таки пропускался. То есть не было в этом процессе разработчиков, и они подключались только для какой-то детализации. Вот в нашем случае, в принципе, у нас будет какой-то близкое близкий подход, да, только он более современный, когда мы вот эту BPMN диаграмму по сути переносим на такой движок, а конструктор, можем его так назвать, а слой оркестрации, по-другому можем его назвать, где у нас вот как раз происходит не нужно разрабатывать, а у нас вот этот движок сам исполняет вот эту архитектуру, эти процессы. Ну, как раз в качестве такого движка сегодня мы рассмотрим N8N. Это не единственный такой движок, а таких движков множество на рынке. Есть, например, Make, а, есть. А, в общем, аналоги вы можете посмотреть самостоятельно. Сегодня на них останавливаться не буду, но N8N отличается тем, что, а, он, наверное, самый популярный из этих движков. В нём множество интеграции уже настроено, есть готовые интеграции. У него достаточно понятный интерфейс, как для начинающих пользователей, так и для продвинутых. С NN можно интегрироваться мм а из сторонних систем. А то есть вы можете, например, а подключить NN к среде разработки, например, какой-нибудь. И, а, даже разработчики могут использовать NCMN для передачи части функционала, для исполнения там, да, и, а, N8N разворачивается как облачно, что удобно, да, для небольших стартапов, для проектов, а, где нет возможности, а, развернуть это всё на своих серверах. Ну и также N8R может устанавливаться локально на сервера заказчика. Собственно, это в таком случае, а, это более безопасное решение. Мм, и он, в принципе, точно также предоставляет все функции и локально. И благодаря вот такой схеме, когда мы сначала описываем необходимый нам процесс, потом его перекладываем на элемент N8N, мы можем сильно ускорить проверку наших гипотез, сильно ускорить разработку и автоматизировать, ну, практически все мм такие популярные мм бизнес-процессы и автоматизации, которые нужны для большинства бизнесов. На самом деле это будь то это работа с клиентами, их какая-то обработка, приём заявок, аа консультация сотрудников, создание AI-помощников для сотрудников, создание AI-консультантов для клиентов. Ну вот всё, что вы можете сейчас придумать примерно из того, что вам нужно автоматизировать, чтобы это вы не вы делали ручками, а делала за вас система. Вот примерно вот это всё практически можно реализовать на N8N. А в NM площадке ещё что классно, есть множество м примеров от комьюнити, и, соответственно, вы их можете переиспользовать до настроев под себя. И таким образом аналитик, например, может, придя в компанию, где он автоматизирует какие-то бизнес-процессы, ну или продакт-менеджер, да, а сначала собрать какой-то прототип решения на N8N, протестировать его на сотрудниках, например, это какая-то внутренняя автоматизация процессов, да, протестировать на сотрудниках, посмотреть результаты и потом уже сделать, например, продакшн решение полноценное, да, и это займёт в разы меньше времени, на порядке меньше времени, чем если бы сначала писалось техническое задание, потом оно передавалось в разработку, разработка реализовывала, дальше это всё тестировалось, внедрялось и и только потом бы принимались какие-то решения относительно удобства и актуальности такой автоматизации, да, и полезности её, эффективности. Поэтому, мм, рассмотрите для себя такой подход. Ну и для личного использования тоже такие автоматизации классно работают. Если, например, вы выполняете какую-то задачу хотя бы там два-три раза в неделю однотипную, тем более несколько раз в день, то вы можете её автоматизировать, да, эта задача для вас уже имеет актуальность. И, а, таким образом сократить время выполнения этой задачи. Например, вы каждый день отвечаете клиентам или вы каждый день там пишете какую-то документацию по формату какому-то, да, а и вот этот формат у вас фиксирован, да, и вам нужно только какие-то требования вносить. Вы можете это всё автоматизировать с помощью агентов нахуn для себя как для аналитика, для продукта или там для просто бизнеса.

А, собственно, с чем нам ещё нужно разобраться перед тем, как мы перейдём к практике в N8N, это с понятием вообще, что такое и агент, с которым мы будем сегодня работать. А простыми словами можно представить и агент как некоторый мозг. Вот он тут обозначен как ядро ЛМ, назовём его так, которое генерирует некоторый текст. Вот ему на вход от пользователя приходит запрос. М в этом запросе, как правило, содержится некоторая постановка задачи или цель. А в ответ этот агент должен достичь этой цели или ответить на вопрос пользователя. Ну, то есть целью может быть выполнить что-то, целью может быть ответить на какой-то вопрос. Вот вы обычно, когда в классических чатах работаете с чат GPT, например, или с Гигачатом, с Яндекс Алисы там, с любыми, а, чатботами, да, с искусственным интеллектом, а вы задаёте им обычно просто вопросы либо просите какие-то простые задачи сделать, например, там сделать документ, да, или найти в интернете что-то. Ну вот и и агент он, мм, по сути своей выполняет то же самое, только он может делать нечто большее, да? А любой иагент, он должен выполнить вот свою задачу. То есть не должен просто ответить какой-то текст на ваш вопрос, он должен именно закончить задачу. Для этого что он делает? под капотом у него есть, конечно же, а, LLM, то есть языковая модель, да, которая генерирует текст. Что она генерирует? В ответ на ваш запрос, а, ядро LLM генерирует, как правило, план того, как он будет выполнять ваше вашу задачу. После генерации этого плана он генерирует план по тому, какие инструменты у него есть и как он их будет использовать. То есть у И агента у него не просто есть вот это LLM под капотом, которая просто какой-то текст генерирует и отвечает вам. У него есть ещё набор инструментов. С этими инструментами, э, наш агент общается через интерфейс этих инструментов, то есть описание того, как он может использовать эти интерфейсы. А, и эти инструменты могут быть абсолютно разными. Например, инструментом может быть, а, запрос в какую-нибудь Googleтаблицу. Инструментом может быть публикация, а, в Инстаграме, инструментом может быть генерация картинки, инструментом может быть вызов какого-то метода любого, да, инструментом может быть, а, браузер, через который там и агент заходит на какой-то сайт. инструментом может быть любой апи, а сторонней системы, то есть, но важно, что, мм, и агент и агенту в интерфейсе инструмента описывается, как этот инструмент можно использовать, какие функции в нём есть, для чего он необходим, как его использовать, какие параметры, например, передать в какой-то апе, да, чтобы его успешно вызвать. И, соответственно, когда ядро LLM генерирует план, оно обладает информацией контекстом об инструментах и, соответственно, может выбрать, какой инструмент дальше использовать и какой инструмент вызвать и как именно вызвать.

Дальше у, конечно же, у Иагента есть память. А память состоит из нескольких частей. М, есть память, а контекстная, да, то есть, а что пользователь подал в вот в эту лмку, да, в этот агент, какой запрос, потом какой контекст был уже описан у этого агента, то есть что это за агент, как бы его суть, да, для чего он предназначен, его как бы системный промт это называется, то есть его описание того, для чего этот агент нужен, что он делает. возможно, какие-то технические детали того, как он должен какие-то задачи решать. Ну, знания, в общем, о мире. Может быть, память подключена извне, например, некоторая рак система, да, и вот эта вся память, она как раз используется в контексте, когда вот это LLM генерирует план, генерирует ответ. И, соответственно, а эта память, она может пополняться. Например, если агент что-то там сгенерировал, он себе в промежуточную память кладёт результаты своих рассуждений и дальше использует результаты этих рассуждений при следующей генерации. Или, например, вы несколько раз общаетесь вот с этим агентом и, например, первым там сообщением ему что-то сказали, он вам что-то ответил, вот это всё сохранилось в промежуточную память, в историю вашего общения. И дальше на вход идёт как контекст уже, как знание уже о том, как вы с ним общались в LLM. Соответственно, а то, как будет работать агент, зависит от нескольких вещей. насколько корректно он будет работать и насколько правильно он будет решать поставленную задачу. Это зависит от вашего запроса. Понятно? Это зависит от вот как раз той информации, в которую предварительно, которую мы загрузили в этого агента. Это зависит от тех инструментов, которые использует этот агент, и от того, как хорошо они описаны для него, потому что он может использовать их неправильно, если у него вот этот интерфейс, описание этих инструментов плохое, да, и это, конечно же, зависит от самой ЛМ. То есть мы тут используем либо свои языковые модели, ну это для продвинутых компаний, да, которые могут себе позволить разработку таких моделей или у них какие-то особые требования для безопасности, да? А можем использовать, арендовать эти модели у современных компаний, которые производят, собственно, языковые модели, большие языковые модели. Это, например, а Open AI, это CLД, это Deepsek. Ну, в общем, их очень много сейчас на рынке. Можно использовать как российские, так и международные. Тут на ваш выбор. А я сегодня тоже расскажу об особенностях некоторых моделей. Ну, в общем, результат напрямую от этого зависит. А, и результат зависит от количества итераций, которые мы разрешаем агенту выполнять в его рассуждениях. Ну, то есть вот представьте, что вы отвечаете на какой-то вопрос или выполняете какое-то действие, но вы это действие ни разу не делали. Вот у вас есть инструкция, как пользоваться молотком. Вам вы прочитали книжку о том, как забивать гвозди. А вам сказал по там, не знаю, ваш начальник забить пять гвоздей. И вот вы этого никогда не делали. Вот если у вас есть только один шанс это сделать, ну и порассуждать о том, как это сделать, скорее всего, вы сделаете это не очень хорошо. Если у вас есть много итераций, да, как попробовать это сделать, большая вероятность, что вы в итоге этого добьётесь, и вы всё-таки забьёте эти гвозди, даже если первый раз у вас не получилось. Вот. И как раз вот это количество итераций тоже сильно влияет на то, как будет работать наш иагент.

Ну и где иагенты действительно нужны. Не везде, на самом деле, все шаги бизнес-процесса мы должны передавать и агентам. То есть, кажется, давайте мы всё отдадим ей агенту, пусть он для нас везде работает, но проблема в том, что, во-первых, её агенты не бесплатные, а каждая мм цикл прохода, да, вот этой итерации агента, она будет стоить для вас денег. Вы можете использовать более простые модели, как я сказала, они стоят дешевле. модели, которые работают лучше, стоят дороже. Вы можете разместить у себя модель, но всё равно, а-а, вот вот этот проход модели, по-другому Inference, он будет стоить для вас некоторых средств. А даже если это на вашем железе происходит, всё равно вычислительные мощности необходимы, да, электричество, там, обслуживание этого железа и так далее, закупка. Поэтому использование модели в любом случае не бесплатно, и со временем менеем, а, использование модели прогнозируется, что будет расти. Потому что сейчас туда идут огромные инвестиции. Сейчас для конечных пользователей использование модели, ну, кое-где даже условно бесплатно. А в ближайшее время, понятно, это будет всё, ну, компании будут пытаться окупить свои вложения и, соответственно, цены на модели, скорее всего, будут дорожать. И поэтому и и нужно применять точечно и там, где он действительно необходим, там, где м для выполнения задачи нужно понимание контекста и семантики. То есть, например, если а вам пользователь в свободном форуме пишет какое-то обращение и вам нужно классифицировать это обращение, да, наверное, необходимо ей. Если вам нужно из текста извлечь какую-то информацию, да, а какие-то сущности, взаимосвязи между ними, и это невозможно сделать дитерминированным путём, то есть чётким алгоритмом, конечно, вам нужен и если вам нужна маршрутизация, то есть как будет идти бизнес-процесс чётко по правилам фиксированным. Причём, то есть, если то, то то, если то, то это, да, то тут вам и искусственный интеллект на самом деле не нужен, потому что можно это автоматизировать и просто логикой некоторой фиксированной, да, проверить статус в системе тоже, то есть какие-то данные проверить, получить данные, а лучше получать их не с помощью иагента, а если эти данные чётко понятно, по каким фильтрам пони получать, да, а по каким критериям, это лучше делать детерминированно. А вот, например, создать какой-то отчёт в какой-то форме можно, если он чётко этот отчёт всегда фиксирован, тоже детерминировано, а если это какой-то свободный отчёт, нужно проанализировать данные, да, то тогда тут можно как раз использовать искусственный интеллект. То есть лучше на каждом шаге бизнес-процесса, вот сейчас мы это рассмотрим, анализировать, а действительно ли вам тоже там нужен искусственный интеллект и и агент или там можно обойтись такой фиксированной логикой, так скажем, детерминированным процессом.

И, собственно, а BPM как раз очень хорошо ложится на структуру того, как в N8N работают кусочки этого конструктора. Назовём её N8N конструктором. То есть у нас есть прямые эквиваленты элементов из BPMN. Например, а стартовое событие в BPMN - это прямой его эквивалент, элемент в N8N называется триггер. Там сервисная задача. В Nos - это нода. А условия или ветвление, да, Gway из BPMAN - это if или switch в NCMN. А хранение данных, да, какой-то объект данных, который используется для выполнения шага бизнес-процесса. ВН8N - это структура данных GSON. А какая-то таблица в базе данных. Ну, то есть в NCMN для хранения данных можно использовать множество разных, а, сущностей. И, а, если это ручная операция, например, BPMN какая-то, да, то есть человеческая операция, вот как раз её можно заменить и агентом. Ну и ещё, а когда мы говорим про память в игентах, вот важно тут добавить, что м в N8N как раз есть разные тоже виды памяти. Вот помните, я говорила, что есть а память и агента о контексте, то есть о то та информация, которая грузится в нашу большую языковую модель. И, собственно, эта большая языковая модель на основе этой информации принимает какие-то там решения, ну, генерирует текст, да, с решениями. Вот. А, как правило, вот контекстная информация, в неё входят как раз данные запроса пользователя, какие-то временные переменные сессии. То есть вот момент пользователь начал что-то делать, какой-то бизнес-процесс, и вот мы об этом пользователе посылаем всю информацию в агента, что он хочет, кто этот пользователь, какой сейчас день, время и так далее. Вот это контекстная информация. А мы также можем в контексте послать вот какое-то описание того вообще, с чем работает этот пользователь, для чего этот бизнес-процесс нужен, что должен делать ей агент, его цели, задачи, инструкции какие-то. Есть краткосрочная память, а, то есть это история последних сообщений пользователя, действий пользователя, а, каких-то действий других, а, элементов вот этого бизнес-процесса в N8N. Это краткосрочная память. Долгосрочная память - это базы данных, знаний, документов, справочники, архивные данные, то всё, всё то, что мы можем тоже подключить к нашему агенту. И в NМ долгосрочная память тоже может быть подключена к агенту. Я расскажу, как. Ну и процесс память - это память, которая мм должна содержать информацию о выполнении вот этого бизнес-процесса. Ну то есть на каком шаге бизнес-процесса сейчас находится выполнение, какой проход, там где мы должны подождать выполнения других элементов бизнес-процесса. То есть вот эта логика именно выполнения самого процесса, вот эту процессную часть контролирует сам N8N, сама платформа. То есть мы в неё не лезем, как правило.

А, ну, и вот про долгосрочную память. А, не знаю, встречались ли вы с таким с такой аббревиатурой, как рак. А, довольно популярная среди тех, кто работает, ну, точнее обязательно к пониманию, да, среди тех, кто работает с искусственным интеллектом. А по сути это способ хранения данных и быстрого их получения для большой языковой модели. И м а в таком способе хранится большое количество каких-то данных. Например, информация о бизнес-процессах в вашей компании, информация там о ваших клиентах, информация м какая-то об инструкциях, регламентах. Мм, и по сути, что происходит? Мм, у нас и агент генерирует запрос какой-то, а, например, что нужно найти какую-то информацию, да, это просто предложение. Это предложение переводится в некоторый вектор и ищется мм ближайшие как бы по смыслу данные из вот этой векторной базы данных. То есть все сначала, вся информация, которая у вас есть, которую вы хотели бы, чтобы ваш а иыагент использовал для своей логики работы, да, вы загружаете сначала в векторную базу данных. Эта информация определённым образом преобразуется, укладывается вот в этой векторной базы данных. То есть там каждый элемент информации превращается в некоторый вектор. А, ну, например, а у нас есть база данных о том, мм, как должны работать я не знаю, там какие есть процедуры в медицинском центре, например. И, а, у вас и и агент заменяет сотрудника ресепшена, который консультирует по услугам медицинского центра. И вот вот этих услуг, их очень много. У них большое описание, да, там разные какие-то параметры у этих услуг есть, разные мм правила их предоставления даже, да, там где-то там нужен какой-нибудь там назначение, где-то не нужно. И вот, например, а клиент пишет такому иагенту и спрашивает про какую-то услугу. Что будет делать м в таком случае? Она вот этот запрос, например, что ему нужна какая-то услуга, да, преобразует некоторый вектор, например, что нужна услуга, не знаю, УЗИ, да? А дальше вот вся информация, которая была об этих услугах, она предварительно была загружена вот в эту векторную базу данных, преобразована. И вот будет искаться ближайшие фразы, связанные с УЗИ. Вот эти ближайшие флоразы по вероятности найдутся, отдадутся обратно в ЛМ, языковую модель, и эта языковая модель на основе вот этой информации уже ответит. То есть вот вот это, да, вот эти данные, они как раз дополняют наш контекст. То есть не просто у вот этого агента, который консультирует по медицинским услугам, у него есть какое-то правило того, как он должен отвечать, да, что-то он может не может делать, какие инструменты он может использовать, но ему ещё и будет добавлено в контекст этой модели, в информацию, которую она использует, информация из вот этой векторной базы данных, ближайшая к запросу пользователя по смыслу именно. Вот. Ну и, собственно, а мы рак системы тоже обойти не можем. Сегодня покажу пример, как она может быть устроена. Ну и важно ещё отметить, что последнее время у нас тренд такой, что мы не просто используем агентов, а мы используем мультиагентную архитектуру. То есть у нас не один агент, который выполняет какие-то действия, а целое множество этих агентов, которые взаимо общаются между собой, передают друг

другу данные, передают друг другу управление. И, собственно, а таким образом мы получаем лучше результат, чем если бы мы всё в одного агента все функции напихали и требовали бы от него решения всевозможных задач.

Но это то же самое, как если вы берёте специалиста, а, какого-то себе сотрудника, да, и если вы ему дадите инструкции должностные, что он должен там и клиентов обслуживать, и в туалете убираться, и блинчики печь для клиентов, не знаю, там ещё и почтой заниматься, скорее всего, он ничего делать хорошо не будет, да. Вот тут то же самое. Мы стараемся этих агентов специализировать и просто их в рамках бизнес-процесса, а, выстраивать так, чтобы они передавали друг другу потоки управления, информацию, ну, и работали в связке оркестром таким.

И, собственно, как раз на базе N8N удобно вот этих агентов объединять в такие команды, цепочки и чтобы они работали вместе. И также при изменении, получается, одного агента мы остальных не трогаем. И важно, что если остальных мы отладили, сделали так, что они работают у нас хорошо, соответственно, мы только одного правим. Ну, такая некоторая независимость у нас получается.

Ну и, собственно, что можно-то делать вот на N8N? Какие проекты? Например, я буду показывать проекты из своего портфолио. А я делала, например, бота для правильного питания. А я покажу сегодня Telegram ботов, но у нас понятно, интерфейс пользователя может быть любым. На самом деле можно сделать, что пользователь будет общаться с подобными агентами и и автоматизация его процесса, бизнес-процесса будет происходить через веб-интерфейс. Ну, то есть когда он на сайте что-то делает, а дальше сайт web отправляет, вызывает какой-то вебху, да, и дальше запускается процесс на N8N. А можно, что это происходит через Telegram бота, там месенджер любой, Макс и так далее. Instagram какой-то любое событие может запускать процесс. Например, там комментарии в Инстаграме под вашим постом написали. Это тоже может вызывать некоторый процесс в N8N.

То есть любые действия, триггеры, которые мм либо инициирует пользователь, либо случается по инициативе системы, например, по времени, да, то есть наступил как новый день. И вот какой-то триггер случился. 10:00 утра нового дня наступило, случился триггер. С этого момента начинает бизнес-процесс работать. Или пользователь написал в чат Telegram бота. С этого процесса, с этого момента начинает бизнес-процесс работать. Вот в основном, конечно, а автоматизации, они сейчас все вот работают либо на базе каких-то мессенджеров, либо на базе соцсетей. Ну, просто потому, что это удобный интерфейс. Сейчас многие сотрудники работают в этих системах, и удобно как раз их работу автоматизировать таким образом.

Ну вот, например, я делала э бота, Telegram-бота для правильного питания, который считает калорийность на основе таблиц с рецептами и продуктами в Google. То есть у нас получается, что под капотом есть некоторый и иагент, который знает правила правильного питания. в него они загружены с помощью рак системы как раз, потому что правил питания очень много, да, они там разнообразные, в разных случаях нужно поразуму там вставлять тарелку, например, да? А плюс есть таблицы калорийности определённые, есть рецепты, да, и, соответственно, вот это вот всё должен должен иметь к этому доступ, к этим данным. Нельзя всё запихнуть в один промт и постоянно, ну, как бы генерировать ответы агента на основе вот всей этой информации сразу.

М, во-первых, если сразу и агента всю информацию пихать, он будет, конечно, плохо отвечать. Во-вторых, это дороже, потому что у нас токенов больше использует. То есть вот эта входная информация больше получается, да, в агента в ней в большую языковую модель. И, соответственно, мм, в принципе, большие языковые модели, они имеют разный объём вот информации, который они могут обработать в данный момент. Да, там обычно 200.000 токенов, но токен - это как бы обычно, ну, вы можете так средне представить, это не всегда одинаково, но в среднем это одно слово, да, вот 200.000 слов, а плюс-минус агент, э, нейронная сеть может одновременно у себя в памяти содержать, но это не значит, что она будет сразу хорошо работать с этой информацией. То есть чем меньше на самом деле информации у неё есть, она эффективнее с ней работает. Это то же самое, что если бы вы прочитали там "Войну и мир" и вам потом бы по ней вопросы задавали. Явно вы бы хуже отвечали, если бы вы прочитали конкретную главу и вам по этой главе бы задавали вопросы. Ну, понимаете, о чём я, да? Вот тут то же самое. Соответственно, мы стараемся в агента подавать только необходимую ему информацию, не сразу всё.

А, ну и в данном Telegramботе м была интеграция, например, с Google таблицами, чтобы в некоторые моменты времени этот агент, например, когда он не знает, сколько м по калориям будет какой-то конкретный рецепт, шёл в базу с рецептами в Google таблицах, смотрел, есть ли там этот рецепт, если его нет, там уточнял у пользователя, сколько там действительно что-то по калориям вышло у него, и добавлял этот сред в базу, да? То есть вот такая вот автоматизация ежедневного питания. Ну и по итогу там, например, дня а этот бот присылал отчёт о том, сколько человек наел по команде его и по итогу дня. Ну и отвечал на вопросы по правильному питанию. Ну такой, например, бот - это очень примитивный, на самом деле, бот, но такого бота можно сделать там условно за 2-3 часа на базе N8N. Сколько бы потребовалось для подобной системы раньше для разработки, я даже представить не могу. На несколько месяцев, так точно.

Второй мой проект, над которым я работала, о котором я сегодня хочу поподробнее вам рассказать, это Telegramбот помощника архитектора. Собственно, ко мне, а, обратилось архитектурное бюро, а, которая, мм, которым необходимо было быстро отвечать на вопросы сотрудников о их доходах в рамках этого архитектурного бюро, потому что там м зарплата сдельная, то есть она зависит от проектов, которые выполняет каждый конкретный сотрудник этого архитектурного бюро. А от зависит от того, в каком статусе находятся эти проекты. В принципе, архитекторам, ну и другим ролям в этом архитектурном бюро требуется информация о мм содержании этих проектов, да, что там на какой стадии находятся, какие есть результаты работ. В принципе, какие-то детали проектов им часто требуются в в моменте, например, на совещании или при общении с заказчиками. Соответственно, им необходим был такой удобный интерфейс. не какие-то таблицы, да, а вот именно Telegramбот, с помощью которого они могли бы быстро и оперативно получать информацию из базы знаний своей компании, да, из базы данных, по сути, из СРМ можем назвать этой компанией.

Но проблема была в том, что у мм этого мм бюро у них а все данные хранились в Google таблицах, то есть у них не было никакой системы ЦРМ, никакой базы данных, ничего. Всё хранилось на базе Google таблиц. И вместо того, чтобы начать полноценную масштабную разработку, когда бы мы все, да, сначала создали бы им базу данных, да, потом, а, сделали бы интерфейс к этой базе данных, какой-то там личный кабинет, мы пошли немножко с другой стороны. Мы сначала решили проверить, вообще, будут ли они этим пользоваться, полезны ли будут им такие инструменты. И мы собрали им помощника интеллектуального на базе как раз N8N, достаточно быстро подключив его к имеющимся Google таблицам. Единственное, что мы сделали, об этом не могу не сказать, а поскольку данные, которые хранились в этих таблицах, были м неструктурированы, они были, ну, можно сказать, в бардаке, то есть где-то там одни статусы, где-то другие, где-то заполнены данные, где-то не заполнены, где-то название с большой буквы, где-то с маленькой. Нам потребовалось некоторое время, а, чтобы эти данные привести в порядок. Ни один Aагент не будет работать хорошо на данных, которые находятся в бардаке. То есть, если в вашей компании вы планируете любую автоматизацию, вам всё равно придётся первым этапом приводить в какой-то, ну, стандартизированный вид данный этой компании. Поэтому, когда мы проектируем любого и агента или делаем автоматизацию, мы сначала должны посмотреть и удостовериться, в каком состоянии у нас находятся исходные данные, с которыми он будет работать. Одно дело - это какие-то инструкции текстовые. О'кей, если они там находятся просто в каких-то текстовых документах, в этом нет ничего страшного. Но другое дело, когда мы работаем с цифрами, с доходами, например, да, а и эти данные, цифры находятся в бардаке. Ни один её агент не справится с обработкой информации, если она м не структурирована.

Соответственно, вот мы как раз проверили такую гипотезу, сделали бота, а сотрудники с ним поработали, поняли, что им это полезно, и только потом мы сделали дополнительный шаг, когда мы сделали уже базу данных стандартизированную, но мы нам на неё уже было легко загрузить данные, потому что мы уже с ними поработали, мы их привели в порядок, и, соответственно, мы знали, какие данные нужны в этой базе данных, и потом уже сделали интерфейс, веб-интерфейс личного кабинета, где уже там в более структурированном виде можно там смотреть свои договора, стадии работы и так далее, но при этом это не отменяет вот такого оперативного общения с этим ботом. Вот.

Ну ещё из интересного, а вот в этой сфере а архитекторов а есть некоторый слнг принятый. Я думаю, в любой, на самом деле, предметной области есть слнг, на котором говорят конечные пользователи. И м вот, чтобы бот понимал этот слнг, вот этот AI агент понимал слнг, например, дай мне доходы по стадии R. Вот вы что понимаете, что значит стадия R? Ну, даже я забыла, что значит стадия R. По-моему, это рабочая документация означает. Ну, в общем, ээ оченьочень много терминов из предметной области архитектурной и работы. в принципе вот эту проектной деятельности. Соответственно, AI агент-то он же общий, вот эти ЛМ, а они же обучены на общей информации, они не всегда понимают этот слнг. Мы делали очень интересную м иерархию вот этих агентов. Один агент отвечал за то, чтобы а распознать, что хочет пользователь. То есть он был погружён вот в этот контекст, он знал эти термины, мы ему эту всю информацию предоставили. Второй агент уже искал информацию, ему уже первый агент передавал действительно постановку задачи. То есть по сути мы сделали агента аналитика, который от заказчика делает постановку задачи. Второй агент был исполнителем, а он искал информацию. Ну и, собственно, она так сейчас работает. А третий агент переводил эту информацию, ответ второго на язык пользователя. Причём с каждым пользователем мы здесь сделали, что он ещё и общается. ну, на в определённой манере, потому что у нас сотрудники этой компании это такие творческие достаточно люди, им хотелось, чтобы такая возможность была. В принципе, такое добавить было совершенно несложно а в рамках этого конструктора. Ну вот так и получилось. Вот видите, тут Ксюш, выбирай, не томи. Тут вот всякий слнг используется при общении с пользователем конечным.

Ну и, собственно, а давайте перейдём уже к работе в N8N. А, собственно, как выглядит вот подобный бот, да, в реальной жизни. Я вам сейчас покажу этот проект. [смех] Выглядит, на самом деле, возможно, с первого раза это кажется страшным, да? То есть вот у нас есть некоторое событие, а, называется Telegram Trigger. В данном случае у нас получается, что пользователь пишет вот этому агенту или боту в Telegram, и дальше происходит цепочка там преобразования его вопроса, а определяется это, возможно, какие-то конкретные детерминированные команды, потому что вот этого бота у него есть конкретные команды, например, а выдай мне бюджет и по такому-то договору, например. И это тут не нужен никакой агент, потому что пишется номер договора и сразу понятно, а по какому договору нужно дать бюджет, да? То есть это очень детерминированный процесс. Поэтому вот здесь вот в этих цепочках это вот детерминированные разные процессы. В них нету никаких AI агентов, они там не нужны. там очень строгий поиск информации, например, или, например, а а пасхалочка такая была сгенерируй мем на тему артери. Тоже это абсолютно детерминированный процесс. Просто сгенерировать мем, отправить мем пользователю, да, никакой нету здесь а логики для того, чтобы работал у нас A.

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

А я предлагаю нам попрактиковаться на примере и сейчас прямо с нуля с вами за примерно 30 минут собрать а некоторую автоматизацию. Собственно, а давайте представим, что у нас есть некоторый сейчас ручной процесс а публикации контента в Telegram. То есть у нас есть заказчик, который формулирует идею поста, например, какого-то в Telegram, пишет эту идею маркетологу, пишет, ну, маркетолог, в свою очередь пишет текст, а пишет требования картинки, дальше дизайнеру отдаёт дизайнер рисует это изображение. Дальше всё это возвращается владельцу. владелец проверяет картинку, этот текст, и если а ему не понравилось, возвращает на доработку маркетологу. Если ему всё понравилось, маркетолог публикует такой, а, вот текст, да, и картинку в Telegram. Вот здесь у нас получается участвует сейчас три участника бизнес-процесса. Это, собственно, владелец аккаунта Telegram-каналы, где публикуется идея, да, маркетолог и дизайнер. И они как-то между собой взаимодействуют. Каждый выполняет свою ручную задачу. Вот мы можем часть или всю работу как раз заменить в данном случае либо сервисными задачами в N8N, либо AI агентами.

А как у нас может выглядеть процесс с агентом? Например, у нас также владелец отправляет идею в Telegram, агент дальше генерирует текст и пром для картинки, а там потом агент или там N8N генерирует картинку, дальше отправляет всё это владельцу на согласование, владелец опровит это и агент, например, публикует это в Telegram или NBCN публикует в Telegram. То есть часть этих задач мы можем делегировать уже агенту, да? И, соответственно, у нас сильно меньше участников этого процесса становится людей. Соответственно, владелец может экономить на вот этой работе, да, но он будет платить за каждого генерацию агента. Это понятно.

А можно сделать ещё вообще более автономный процесс, ещё пойти дальше, где мы владельца вообще исключаем из этой цепочки. У нас, например, раз в месяц генерируются идеи, сохраняются в базу данных и составляется контент-план. А то есть сам агент, мы его обучаем, говори, даём ему необходимую информацию о нашем бизнесе, об нашем канале, да, о стратегии этого канала. о там том, как привлекать аудиторию на этот канал, кто эта аудитория. Ну, в общем, всё, что должен знать маркетолог, да, мы ему даём эту информацию исходную о нашей аудитории, целях, задачах. И дальше просим генерировать, соответственно, идеи на месяц. С помощью NEN сохраняем эти идеи в табличку. И вот у нас контент-план готов. Дальше, например, мы, а, каждый день в там определённое время, а, запускаем бизнес-процесс, когда у нас берётся идея из этой базы данных, по ней генерируется текст и картинка. А дальше мы передаём этот текст и картинку, например, агенту, который агенту, не человеку, который проверяет, что этот текст действительно хороший, что картинка действительно показывает то, что она изображено на в тексте, да, и дальше говорит исправления, если они необходимы. Потом агент это же исправляет и потом только это всё публикуется в Telegram. То есть мы можем полностью вообще исключить даже владельца из этого процесса, да, заменив вот этот этап ревью этапом ревью другим агентам. Сейчас, кстати, так очень часто делается, особенно когда с помощью AI разрабатывают именно программные системы, то есть где AI выступает в качестве разработчика, а там специально делают агентов-ревьюеров, потому что так качество разработки сильно повышается, меньше багов и так далее. Вот.

Аа, можем так. И вот я предлагаю нам сейчас в NemN какой-нибудь процесс из этих, а, простой создать. А я сейчас хочу показать вам прямо на базе Telegram, как сделать нам вот такого бота. А так, одну секунду, я перенесу экран с Телеграмом к нам в чат. Для того, чтобы, а, нам создать нового бота в Телеграме, по крайней мере, нам нужно воспользоваться так называемым Botfer. Это система на базе Телеграма, созданная Телеграмом, которая позволяет как раз создавать ботов. А потому что нам нужно, чтобы было место, которое нас слушает, наши действия, да, запросы пользователя, а, ну и, собственно, общается с пользователем, да, давайте придумаем какого-то первого бота. Я не знаю, назовём его. У меня сейчас в своём канале в Телеграме я хочу продвигать AI агентов. Пусть будет и я одного из них назвала Вектор. Пусть будет вот такой AI агент. Вот у него у меня есть фотография у этого агента. Назовём его АТ Ксения Сёлкинапернита вектор. Вот так. А бот в конце должен быть у нас. У нас слово бот должно быть в конце обязательно. Вектор бот. Так, а слово бот. Telegram требует, чтобы подписывать ботов всегда в конце словом бот, чтобы пользователи, конечно, могли различать, что это бот или не бот. Ну вот мы создаём такого бота. У него есть апи ключ, и я его сейчас скопирую. И теперь мы перейдём в N8N. А я тут создала нам а заглушку. И вот с чего мы начнём. То есть нам нужно, чтобы наш бот, чтобы вот эта платформа сначала приняла наш запрос, вопрос как пользователя, да? То есть мы должны, у нас, помните процесс, что мы как заказчик сначала даём идеи какие-то AIгенту. Этот AIгент генерирует на основе этих идей промт и картинку, дальше генерирует эту картинку и, соответственно, возвращает нам на согласование. Да, собственно, мм, у нас есть вот как раз Telegramтриг, то есть событие, с которого начинается наше действие. Вот эти элементы управления, да, с которых мы начинаем, и, ну, вообще, которые мы используем, они вот все здесь есть. То есть у нас есть здесь триггерные действия, например, триггер. Вот их куча разных триггерных действийх. Они вот таким вот молнией помечены. То есть с чего может начаться выполнение процесса? Это может быть время, это может быть событие какое-то, например, в данном случае, например, это у нас событие того, что аа пришло сообщение. Вот онож, да. И вот я хочу создать нового бота. А у меня тут уже некоторые доступы есть других ботов. Ведь я нового бота вставляю сюда вот этот токен, который я получила при создании этого бота. А, нажимаю. И вот у меня написано, что этот бот успешно добавлен, да? А теперь вот смотрите, давайте посмотрим. Я нажму save и а нажму execute workflow, да? Вот мы начнём его тестировать. Я нажимаю Executeflow. И теперь сейчас я покажу окно Телеграма. М, секунду. М, я хочу скопировать имя нашего бота, чтобы ему написать. Вот он наш бот. Вот он вектор. А, собственно, мы ему пишем. Вот мы ему послали команду старт. Если мы сейчас передём в, то мы увидим, что от моего user ID, я Ксения Тесёлкина, а ему пришла текст старт, да? То есть мы с ним начали работу. А, например, если я сейчас нажму, а, выполнить процесс и напишу ему, например, привет, N8N подхватит это действие. У неё Webхуhop сработает. И, соответственно, тут будет вот он текст. Привет, да? То есть вот как раз тоже от меня и текст. Привет.

А дальше что мы делаем? Дальше нам нужен агент, да, который вот этот текст будет, ну, например, задание, которое мы дадим, а будет дальше по этому заданию генерировать нам текст картинки для генерации картинки и текст промта, да. У нас вот здесь есть, а, некоторые вот AI блок называется и есть AI агент. Вот мы добавили нового AI агента. А, подождите, у меня тут не тот. Немножко добавился. Сейчас мне нужен Aагент другой. Сейчас я открою другой элемент. Секундочку. Я сейчас просто скопирую отсюда пример такого агента и покажу вам. Они есть разные вот эти элементы AI агентов. Здесь их можно в поиске поискать. Вот AI templates. И там будет много этих агентов. Мы просто сейчас всех смотреть не будем. Нам нужен агент, у которого есть аа структурированный ответ. Назовём его так, потому что нам нужно получить чёткий ответ от агента. в структурированном формате. Нам нужно, соответственно, получить от него текст, а, картинки для генерации. И нам нужно получить от него, соответственно, а, текст м самого мм поста, да, описание поста. Собственно, что у нас есть у агента? То есть вот он наш агент, а у него есть промт. Тут вот я скопировала из уже готового примера, который я специально для этой встречи нашей подготовила. А в промте пишется описание задачи. М, ну в данном случае я скопировала агента, который вообще без без вопроса пользователя работает, поэтому тут нет нет никакого в промте вопроса пользователя. Мы его сейчас добавим. И есть системное сообщение, так называемые System message. Здесь пишется базовая информация для этого агента. То есть, что он из себя представляет. Вот в данном случае, а я скопировала помощника по планированию контента. Ну пусть будет так. То есть ты помощник по планированию контента. Нам нужно, а, чтобы ты помогаешь, ты помогаешь, а сформулировать, ну, или, не знаю, написать написать пост для канала заказчика по его идее, да? А идея, идея должна включать. А нам номер не нужен. Идея, это нам тоже не нужно. А идея должна включать, наверное, у нас что у нас там должна включать? А текст текст поста, точнее пост должен включать. У нас пост должен включать текст поста и а промт для генерации картинки. А верни всё в виде массива данных. Да, мы называем этот массив JSON, да, чтобы он структурированно вернул нам данные. И вот я пишу, я блогер в сфере i менеджмен продуктов. Я публикую обучающие материалы на стыке этих двух профессий. Мне нужен контент для моего блога в Telegram. Telegram. А, разработаю и цепляющий пост. привлекающий большой аудиторию для моего блога на основе моего вопроса. Вот так вот. И сюда м должен пойти, собственно, наш вопрос. Откуда мы его берём? Вот у нас есть предыдущая выполняемая выполняемая нода или элемент, да, в данном случае Telegram. И мы, мм, можем вставить вопрос, например, из этого Телеграма. Вот у нас есть текст, да, мы до этого писали привет, как как перемену, и мы его вот сюда перетягиваем. То есть это тут будет наш текст вставляться, подставляться, который мы напишем боту. И я ещё написала: "Отслеживай самые последние технологии, текущая дата сегодня и не повторяйся". Пример.

Так, да. А чтобы он не повторялся, как вы думаете, что нам нужно сделать? Нам нужна ему память, конечно же, да, чтобы он не повторялся и не делал одни и те же а нам а посты, да? Для этого вот у нас есть второй элемент. Это simple memory, да? То есть первый элемент - это его промпт пользовательский с нашим вопросом, с переменными, которые динамически, да, от пользователя поступает. Есть некоторый системный промт, да, который даёт ему некоторые инструкции. Туда можно много какой-то информации запусти загрузить, например, должностную инструкцию туда можно загрузить, да, и есть память. Аа вот в качестве памяти мы можем использовать, а, например, наш, а, чат с ним, ID нашего чата. То есть он будет помнить всегда, а, всё, что я с ним обсуждала на основе моего ID. То есть он мм поэтому ID будет искать историю с ним взаимоотношений, соответственно, и, э, видеть всё, что от меня поступало. И вот длина контекста, окна контекста регламентирует, сколько предыдущих общений со мной он будет помнить. Ну, допустим, пять мне достаточно, ну, чтобы у меня слишком часто там посты не повторялись. Ну или я могу там поставить даже 20, например. Вот. А ещё одна часть важная у этого агента - это, собственно, модель, которую мы используем. Вот я люблю систему Open Router, которая предоставляет аренду разных моделей. То есть вот в спи в списке вот, если посмотреть, там есть кучакуча разных моделей. Есть модели GPT, есть моделиль, есть модели Google, есть модели Deep Seekк. То есть какую хотите, такую выбираете. То есть вам не нужно писать интеграцию с каждой поставщиком вот этих LLM моделей, да, там как-то их настраивать. отдельно. Вы один раз регистрируетесь в Опроутере, покупа туда закидываете деньги и потом тратите эти деньги на те модели, которые вы считаете в данный момент наиболее подходящие вам. А понятно, что тут нужна иностранная зарубежная карта, так же как и для оплаты N8N, если вы облачный сервис используете. Но м вы также можете подключить любую модель и свою, если у вас есть в компании своя модель. А LM я в данном случае выберу GPT52, чтобы у меня был хороший текстовый результат по генерации вот этих параметров. И мне нужно, чтобы у меня очень чёткий ответ был, чтобы агент не распылялся, не говорил там какие-то дополнительные

фразы. Мне нужно просто две от него вещи. Мне нужно от него чётко, а промпт для генерации картинки и а пост ответа. Соответственно, мне нужен очень чёткий ответ, output, так называемый, да?

А так, а и мы его можем, а, задать в виде вот некоторого JSON. Я не знаю, знакомы ли вы все с JSON схемами, но а давайте мы зададим. А, то есть у нас каждая пост, например, назовём это пост, посты, может быть, он нам несколько предложит постов на наш вопрос, да? Это типа аре. И каждый пост у нас содержит следующие свойства. То есть давайте мы сделаем, что у нас он содержит а текст, да? публикации текст публика publication text. Давайте назовём его так. Publicationтек и а тип строки string, да? И у нас он содержит image prompt. Image prompt это тоже string. А так не удалим. И эти поля у нас они обязательны, поэтому мы их перечислим вот здесь. Эти поля у нас обязательны. Так, так, так, так. И публики и Image prompt. Ну и, собственно, он обязательно нам должен, а, отдать хотя бы один пост, поэтому тоже это записываю. Вот.

М вы такой JSON можете сами не писать. М вы можете попросить его сгенерировать искусственный интеллект, который есть у N8N. Вот здесь он есть N8Ni. Нажимаете, пишете ему запрос, что сделай мне структурированный ответ для агента, чтобы он всегда отдавал вот такие такие данные. и он генерирует вам ответ. Если вы не зададите структурированный ответ агенту, он может в свободной форме дать вам ответ. То есть: "Привет, Ксюша, вот тебе там такой текст, вот тебе такая такой пром для картинки". Но нам это не надо. Нам надо дальше эти данные использовать. Поэтому мы делаем вот такой структурированный ответ. И теперь давайте протестируем вот такого агента. То есть, а, посмотрим, что он у нас отдаст на выход. Я нажимаю Execute Flow. Сейчас у нас вот этот Telegram триггер ждёт наш вопрос. И давайте мы ему напишем: "Привет." Привет. У меня идея рассказать про рак системы, например, и их использование в N8N. Вот мы послали, видим, что у нас Telegram Trigger принял эту м этот вопрос. И дальше у нас пошла генерация, соответственно, ответа агентам. Вот он использует вот эту языковую модель. У меня в данном случае отча GPT а от OpenI, да, GPT 5 52 стоит модель. Он сохранил в память мой вопрос первый, да, чтобы потом не повторяться. И вот он сгенерировал, использовал структурированный ответ. Если мы посмотрим, что он тут сгенерировал в ответ, то вот он сделал publicationтек. А что такое рак? Траля-ля-ля-ля. Вот он там, если мы откроем в полном виде, там прямо целый пост написал большой и сделал промпт какой-то. Да.

Вот я сейчас вижу, что у меня в этом промпте картинки, да, у меня сейчас тут текст на английском, а мне бы хотелось, чтобы у меня картинка была с русскими комментариями. Давайте мы поправим и аа мы вот проверим заодно, помнит ли он наш контекст. Вот смотрите, а мы ему сейчас скажем, давайте, что давай-ка сделай так, чтобы в картинке были тексты на русском языке. Сделай так, чтобы в картинке были тексты на русском языке. Отправляю ему, нажимаю Executeflow. Вот он меня подхватил это сообщение. Сейчас он переработает это. Он уже в свой контекст загрузил предыдущую нашу с ним переписку. Он должен понять, что мы общаемся про вот этот пост, про рак систему, и он должен понять, что нам нужно исправить этот image prompt. И мы также понимаем, что, наверное, надо ему инструкции поправить, да, чтобы он в следующий раз не генерировал картинку на английском языке. А, то есть, если сейчас мы посмотрим, что он там нагенерировал, то он сделал, он вообще весь пром сделал на на русском языке. Окей, не очень это мы хотели. А давайте мы напишем ему. Пост должен включать промт для генерации картинки. А сам промт. Сам промт на английском языке, а надписи на картинке на русском. Отлично. Надеюсь, что дальше он у нас будет всё делать правильно.

Теперь мы ему дали инструкцию. Теперь что мы дальше с этим делаем? Давайте мы вот по нашему процессу пойдём. Собственно, он должен нам послать сообщение, а с ответом на вот этот вопрос, ну, с тем, что он сделал, да, на согласование. Давайте. А пусть вот он вот этот, то, что он наделал, пошлёт нам на согласование. Значит, мы делаем дополнительную ноду. Send message and wait for response. Соответственно, а что эта нода делает? А она отправляет сообщение и ждёт, что пользователь напишет, да, ок или не ок. А, и после этого выполняется какое-то действие, например, действие публикации, либо если не ок, то у нас всё это должно перейти обратно в агента, да, с требованиями доработать, например, а в сообщении мы, соответственно, пишем текст. Как вам так как вам результат? Двоеточие, да? А текст поста и дальше там текст для изображения, генерации изображения. И мы image prompt сюда записываем. Аа, и соответственно мы должны, а, пометить, что у нас, а, в ответе должно быть два варианта ответа: ок или переделать. То есть, естественно, response type approval. И вот мы тут выбираем такие настройки. А, и у нас, а, это должен сделать а наш бот. Так, мы его звали. Он у нас Telegram аккаунт 2. Вот этот, да? Давайте-ка мы его переименуем, чтобы у нас не путаться. Вот его вот вектор. Я его там же выбрала. Ой, извиняюсь. Вот вектор сей. А так тут мы его же выберем. Так, и чат ID. Нам нужен тот же чат, которого был вопрос, собственно, да? Соответственно, вот откуда был вопрос, я просто перетягиваю этот чат ID сюда.

Если я сейчас нажму выполнить, у нас пошёл процесс заново генерации. Сейчас он сгенерирует, а, и отправит, собственно, мне сообщение с результатами работы. И дальше я могу нажать либо я согласна, либо я не согласна. И каждая вот такая генерация, соответственно, каждый проход вот этой модели, это стоит денег, на самом деле. для разных моделей стоит, для каких-то дешевле, для каких-то дороже. А, о, смотрите, у нас какой-то проблемка возникла. У нас, а, что-то модель не справилась, она не смогла у нас вот сгенерировать вот в таком ответе. Возможно, потому что, а, я не с нуля запустила, а просто про м повторила вот этот процесс. Давайте заново просто начнём ещё раз. Я ему эту идею по подам, как если бы это была рабочая идея. Мм, давайте так. Так, ещё раз мы ему итоги её послали. Тут понятно могут быть точно такие же ошибки, как и про программирование. Возможно, мы там в промте что-то не совсем верно указали, но он должен, по-хорошему, вот весь ответ предоставить вот в таком структурированном формате. Любой ответ, точнее. И, собственно, после того, как он, например, нам дальше выдаст это сообщение, я нажимаю там, что всё о'кей. Ага. Не смог что-то отправить. Почему он нам не смог отправить? Ну, почему-то он не смог тут отправить нам. Да, ключик. А, сообщение слишком длинное. Смотрите, а, у нас получилось, а, вот этот результат, видимо, текст поста, не соответствующий требованиям Telegram. А давайте ещё раз ему напишем, что в инструкции текст поста не более, например, я сейчас ухожу там, а, 300 символов, а, чтобы он нам слишком большой текст поста не генерировал, а попросим последний раз его, а, сгенерировать, и я покажу другие примеры, которые я для вас подготовила. Мы что вручную уже не будем их делать, а, потому что у нас уже время немножко поджимает. чтобы показать вам, как дальше там можно генерировать эту картинку и так далее, какие ноды использовать, а, для своей работы. Так, нажимаем ещё раз execute. Угу.

Вот смотрите, он говорит, что он ждёт нашего ответа. То есть он сделал вот какой-то пост, да, небольшой, кратенький сделал провод картинки. Вот он пишет мне: "Как вам результат? Текст поста". Понятно, мы сейчас без форматирования тут делали с вами, да? Можно было сделать форматирование и текст для генерации изображения. А, например, я нажимаю, что всё о'кей. А, всё о'кей. И вот у меня появилось здесь, что approved, да? То есть пользователь сказал, что всё о'кей. Значит, после этого мы можем, например, а, сгенерировать картинку. У меня есть для этого нода. Давайте мы её сгенерируем и отправим и отправим этот пост уже полноценный с картинкой вместе а нашему пользователю. Ну, потому что сейчас у меня просто канала нету. Если бы мы хотели, мы бы отправили в Telegram-канал какой-то, да? То есть вот у нас есть нота для генерации картинки. Собственно, мы её точно также настраиваем. Сюда нужно написать image prompt, да, у нас а промт, вот он для генерации картинки. Эта нода идёт в Gemini с моими доступами и, соответственно, использует модель Gemini 25 для генерации картинки. И дальше оно должно отправить фото. Вот это, да, допустим, пусть он нас отправит сейчас пока мне. Можно было бы вот сюда любой чат ID, например, чат ID вашего канала поставить. А оно должно отправить это фото и аа оно должно его подписать, сделать подпись как раз а вот в формате вот этом текста публикации, да, к этой картинке подпись сделать. Ну давайте выполним. Нажимаю execute. Вот он генерирует картинку. Сгенерировал. И нажимаем. Теперь вот у меня появился после результата этой ноды появился бинарный файл с картинкой. Да, вот мы его можем посмотреть. К. Вот какая картинка. О, кстати, окей. Учитывая, что мы требования картинке никакие не задавали, никаких инструкций дополнительных не давали. О, он просто сам каким-то образом там промт картинки написал. И, соответственно, мы нажимаем Execute Step. И вот он отправил, соответственно, а куда он отправил? Куда-то он отправил это фото с картинкой. Почему-то я его А у нас другой бот. Извиняйте, извините. Отправила это фото, потому что мы не перенастроили. Вот здесь. А настройки бота. Давайте ещё раз. Вот он на вектор же нам должен написать. Нажимаем ещё раз и А вектор нам, где у нас вектор? Вектор куда делся? Вот он. Вот он нам написал этот пост, да? То есть мы автоматизировали какую-то такую рутину.

Если бы мы, например, вот как я показывала, захотели пойти дальше, мы могли бы, например, автоматизировать, что раз в месяц вот этот триггер, да, раз в месяц. У нас получается работает агент, который, а, соответственно, генерирует кучу идей, и потом все эти идеи сохраняются в Google Диск. Вот я этот агент прогоняла и, например, вот результаты работы, да? То есть, как я сказала, например, этому агенту, что мне нужна ID, дата публикации, тема, формат контента, статус и дата создания. То есть вот он сгенерировал эти идеи на основе той информации, которую я в него загрузила, в его контекст. А можно было бы сделать, а, более сложную логику, когда, например, каждый день из этого списка берутся идеи, да, вот из этой Google таблицы. Дальше, если есть хотя бы одна идея, которая нашлась там на сегодня, да, может быть, на сегодня не было запланировано идеи, если нашлась идея на сегодня, мы обновляем статус того, что она в работе сейчас. А агент, а первый, соответственно, создаёт пром для картинки и текст, а поста, например, да? Второй агент берёт это всё, проверяет. Вот агент Revюер. Дальше, если необходимы правки, третий агент это всё правит. Дальше генерируется картинка, публикуется в Telegram там или в любое другое место, Instagram, куда угодно. А меняется статус у этой идеи, что она опубликована, и, например, картинка сохраняется ещё на Google диск, да? То есть вот такая цепочка может быть. Эти цепочки можно делать хоть какими сложными. А всё зависит от вашего бизнеса, от вашей бизнес-модели, от тех, а операций, которые необходимо автоматизировать.

Ну и последний пример, который я хотела показать, а, например, мм, как может работать вот эта рак система. А, например, у нас мы какие-то файлы загружаем. Вот это векторное хранилище данных. Вот оно здесь, например, настроено. Дальше вот эта вся информация, например, должностная инструкция, там база знаний, всякая по компании и так далее при каких-то событиях загружается туда, например, когда у нас файлы новые на Google диске появляются, загружаются, преобразуется определённый формат и дальше агент, когда уже свои вычисления вот эти с модели выполняет, он уже помимо того, чтобы искать у себя вот в системном промпте-то вот эту информацию, её использовать, он идёт как с помощью инструмен используют вот это векторное хранилище для того, чтобы найти нужную ему информацию самостоятельно. То есть ему не надо говорить, где она лежит, какая именно. Он найдёт ближайшую подходящую и использует её для ответа. И ещё что я хотела бы последнее вам, самое последнее показать, что вот эти вот а инструменты в реальном проекте у агента, который он использует, вот в данном случае это, например, верхногное хранилище, да, куда он сам идёт. А в реальном проекте у нас инструментов может быть у агента сильно больше. Вот, например, вот этот проект по мм боту, да, вот у меня есть агент, который ищет информацию. Вот посмотрите, у него есть куча-куча разных таблиц, а где какая-то конкретная информация содержится. У него есть там некоторые методы мм для доступа вообще там к базе данных, да, из которой тоже какая-то информация берётся. То есть сейчас там информация хранится в Google таблице, часть в базе данных. Тут бы могло быть какой-то инструмент, например, для постинга какого-нибудь. Тоже, в принципе, агент мог сам по постить только в некоторые моменты, которые мы не знаем какие, да? То есть, если у нас детерминированный процесс, мы точно знаем, когда должен быть, например, опубликована какая-то информация, то тогда мы лучше это сделаем цепочкой. А когда мы не знаем, когда это на уровне агента принимается решение, мы можем это сделать инструмента. Вот. И, соответственно, каждый инструмент, например, у него описан, вот видите, то есть инструмент позволяет получить там контакты нужного клиента по его названию, в какую таблицу идти, там что из неё брать, да? То есть детально описан инструмент для агента.

Вот так работает N8N. То есть здесь очень много элементов. Я вам советую, если вы будете работать с N8M, зайти на N8N Community. Вот есть этот раздел комьюниity. И там есть а множество примеров. А, в общем, тут вот куча разных примеров есть, как разные агенты строить в комьюнити. Там большая база знаний. Аа, в общем, а там прямо можно скопировать себе вот эти проекты, например, вот Арагу, разные проекты, прямо скопировать их себе в проект и вставить. То есть не писать самостоятельно такие, ну, не конструировать самостоятельно, там есть и с Инстаграмом, с Телеграмом интеграции, и с любыми веб-сайтами, со всем, чем хотите. В общем, куча кучу куча вот этих конструкторов, элементов конструктора вот этого. Ну и завершая, хочу вам дать вот такую таблицу. Вот тут вот все наши действия расписаны, как мы делали бы их, какой шаг BPN, какие, собственно, но использовать нужно в NMN для автоматизации вот этого шага, да, а в нашем примере. Ну и, собственно, говоря об ограничениях и рисках такого подхода. Если мы используем агентов, понятно, что они могут галлюцинировать, не давать правдоподобный ответ, периодически выдавать какие-то ошибки. Вот как в нашем случае он, например, вообще не по формату почему-то решил нам выдать ответ, да? А могут выдавать неверный ответ, особенно если у вас данные не структурированы. Дальше у нас, а, время откликат быть долгим. То есть у нас может вот этот процесс выполняться долго, и пользователям придётся ждать. То есть вам тут нужно оценивать, а вообще а собственно сколько может выполняться ваш процесс, то есть писать не ну оценить нефункциональные требования к этому процессу. А плюс у нас есть некоторые ограничения на частоту, на количество запросов, потому что N8N как платформа всё-таки вводит вот эти ограничения по количеству запросов в их сторону, да, и тут от тарифа сильно зависит и от мм собственно вашей компании, сколько там пользователей, сколько запросов и транзакций будет. Ну и акций. То есть там сложно откатывать какие-то изведения, произведённые с данными, да? То есть вы работаете с данными, например, поменяли что-то в Google таблице, очень сложно будет откатить вот эти действия, то есть отследить, где что поменялось. Ну то есть можно там по истории каждой выполнение процесса это всё посмотреть, но а ошибки всё-таки править сложно.

Ну и, собственно, как начать реализацию? А если вы будете делать для своей компании автоматизацию на базе N8N и с помощью егентов, я советую вам выбрать реальный процесс, конкретную задачу, которая повторяется регулярно и которая требует автоматизации. Сначала спроектировать бизнес-процесс, как он будет, да, показать, какие части будут ручными, какие переданы агенту, какие там, а будут просто автоматизированы, какие условия есть, всякие разные ветвления на этом бизнес-процессе показать. А понять, какие из этапов этого процесса, собственно, нужно бы, чтобы были детерминированы, а где должен быть и может быть и и нужен он действительно. Дальше это всё разработать на N8N, добавить обработку ошибок и протестировать, соответственно, на реальных пользователях, посмотреть свою гипотезу, реально ли это работает, такой бизнеспроцесс, реально ли он нужен и будут ли им реально пользоваться ваши пользователи. N8N позволяет, в принципе, смотреть за за активностью, за статистикой использования процесса, поэтому вы сможете оценить результат довольно просто. А по докладу на этом у меня сегодня всё. Что бы я ещё хотела сказать, так это то, что я помимо того, что вот разрабатываю подобные системы на N8N, а и, собственно, являюсь, наверное, экспертом в этой сфере, а я также мм преподаю практику прототипирования приложений с помощью курсора. А курсор - это система среда разработки тоже с AI агентами, которые только уже не автоматизируют деятельность моих, ну, каких-то сотрудников в компании, да, они автоматизируют мою деятельность как разработчика, как аналитика. И, собственно, а благодаря AI агентам я, как аналитик, как разработчик могу сильно быстрее генерировать требования и разрабатывать программные продукты. Поэтому курсоор, так же как и клодко, его аналог популярный, очень классная система. И я вас приглашаю посетить, а воркшоп, на котором мы с помощью как раз вот AI агента быстро собираем прототипы приложений. А ближайший воркшоп вы можете посмотреть, когда будет по QR-коду, и там зарегистрироваться. А он у нас проходит раз в несколько месяцев, а поэтому я вас приглашаю. Будет очень интересно. Работаем, а, в командах, а, а, делаем интересные, актуальные проекты. И сразу по результатам воркшопа у нас появляе получается прототип приложения, интерфейса приложения. Причём ещё и он кликабельный получается. И его дальше можно передать разработке или дизайнеру уже на доработку. А на сегодня всё. Спасибо за внимание. У нас мы уложились полтора часа. Тема, на самом деле, обширная. Можно бесконечно разговаривать проN, показывать разные ноды, элементы. Но я надеюсь, что основные принципы я сегодня вам рассказала, донесла. Если что, пишите. Мой Telegram-канал и Telegram-каналы школы на слайдах. А, да, Ксюш, спасибо тебе огромное. Вебинар, правда, получился очень, э, такой обширный, и у зрителей много вопросов, поэтому я сразу, а, перехожу к ним. А, спрашивают, бесплатны ли N8N и есть ли отечественные аналоги. А NN бесплатно 2 недели, потом там подписка в районе 20 долларов, там 25 26 долларов. Оно так скачет периодически. Вот. А м там зависит от лимитов, то есть от объёма э операции, которая будет производиться. Ну, стоимость подписки, а меняется. Вы можете, собственно, использовать бесплатно, но надо будет через 2 недели у вас просто это пространство удалится. Тогда надо скачать свой проект и заново туда загрузить. Ну и можете продолжить дальше этим пользоваться без каких-то-либо там проблем. для локальной установки не скажу. Скорее всего, тоже там какая-то платная версия эта делается. Насчёт российских аналогов нет, я не знаю хороших российских аналогов. Из зарубежных аналогов make ещё более-менее по функционалу, но опять же мм он менее интуитивный, там ну не так удобно настраивать вот эти все ветления интеграции. М вот так, наверное, скажу. И сейчас ещё все вот создатели лэмок на самом деле делают почти все делают свои такие конструкторы процессные. Там чат GPT подобные есть процессный конструктор, но они всё равно не дотягивают по функционалу до N8N. N8N очень популярен и давно существует. Угу. А следующий вопрос от Ильи. Насколько ускоряется процесс автоматизации, а, выработки гипотез при прототипировании вначале, а, в BPMAN, а затем в Low-code. Есть ощущение, что, а, раз, два, затем, если нет чёткой привязки к формальной нотации, то может быть выработан отказ от использования BPMN аналитиками. Да. Конечно, вы можете сразу начать прототипировать в N8N, в принципе, да. А вам никто, ну, не заставляет сначала BPMN рисовать, да, строго привязываться к нотации и потом это всё перекладывать на NOM. Ну, просто BPMAN - это удобный формат для своего даже анализа личного, да, анализа того, что у вас за бизнес-процесс, мм, для того, чтобы выявить этот бизнес-процесс, его формализовать. Дальше, пожалуйста, вы можете отказаться от BPMN, ну или сразу вообще без BPMN прототипировать, но это не очень хороший вариант. Ну это как без плана, там сразу что-то делать, да? Вот здесь мы не привязываемся к формальной нотации, потому что мы всё равно из BPмна, а будем перекладывать элементами N8N вот этот бизнес-процесс на элементы 8N. Поэтому нам без разницы, хоть кружочками и треугольничками нарисуйте бизнес-процесс. Главное, чтобы он был у вас описан. Угу. А следующий вопрос от Тимура. А не знаю, получится ли у тебя сейчас на него ответить. А можете, пожалуйста, рассказать, а, реализовать такой кейс. Есть, а, база данных, есть четыре скель скрипта, есть Excelфайл с множеством вкладок. А, нужно выполнить поочерёдно запросы, полученные данные заполнить, а, определёнными вклад определённые вкладки Excel-таблицы, оформить корректно и выгрузить в определённое место. >> Да, это просто можно сделать. Вы можете сделать, а, ноды для выполнения SQL запросов последовательно, да, перебрасывая между ними данные, для получения ноду взять V8 для получения данных из базы данных. Понятно? Вам нужно подключиться к базе данных, подключиться, чтобы выполнять SQL-запросы, да, и дальше, а, соответственно, что там выдать в определённом формате, но если формат у вас строго регламентирован, да, ответ формата, то тогда это тоже просто детерминированная будет нода. А если у вас формат не детерминирован, можете в конце подключить и агента, который будет делать резюме проделанной работы и, соответственно, отправлять вам ответ. Угу. А далее перехожу от Владимира. Ещё был вопрос у нескольких зрителей по поводу Макса. А есть ли у тебя опыт а с Максом в качестве интерфейса для работы с иагентом? И есть ли возможность в N8N именно подключить интеграцию с Максом? Это можно сделать через webhook. Нужно там просто в NVCN нет готового элемента для интеграции с Максом. То есть нужно будет зайти в сайт def, по-моему, Max def.max.com. Там есть инструкция для разработчиков, как интегрироваться с Максом. И, соответственно, там есть а методы, которые нужно дёргать для того, чтобы там отправлять сообщение, да, ну, в общем, подключиться к нему и выпустить креды для себя, для своего там бота в Максе. Вот все эти инструкции написаны на сайте для разработчиков Макса. И вы, соответственно, тогда берёте просто вот этот метод для апи метод, который нужно дёрнуть для того, чтобы отправить сообщение, например, Макс. И берёте в NVCN ноду для просто это называется веб вызов, да, и, соответственно, просто параметры в этот апи метод пихаете и всё. Вместо того, чтобы готовую ноду использовать, как в случае с Телеграмом, да, уже настроенную для вас, вы можете с вами настроить любой апи вызов. в том числе Макса. Вот. Ну и всё. И тогда без проблем интеграция будет. Ну там нужно только зарегистрироваться как разработчик, соответственно, получить доступ. Угу. Следующий вопрос от Владимира. К вопросу о защищённости данных. Насколько безопасно использование NM в части утечки, хранения и передачи третьим лицам данных компаний? А две части. А вот сам исполняемый процесс, да, когда он исполняется в SMм, как вот я показывала, да, ведь данные этого процесса исполняемого, они получаются, что если мы используем облачную версию NCMN, они хранятся как раз в облаке. И здесь вам никто не гарантирует, да, что эти данные не будут в конечном счёте куда-то не утекут, а потому что это облачный сервис, как любой другой облачный сервис, да? Соответственно, тогда мы N8N должны стоять локально. Ну тогда они никуда не утекут. И вторая часть, если вы используете ЛМ для для агента, то тоже тут тоже самое получается. А что когда вы в LLM отправляете информацию, любую информацию грузите и, соответственно, отправляете запросы пользователя, они тоже оказываются у провайдера LLM. Соответственно, тогда либо вы устанавливаете локально себе LLM для исполнения, но тогда вам нужны мощности, но это могут себе позволить только большие компании. Опять же, вот, э, тогда это безопасно. Но по большому счёту, если мы говорим про там стартапы, малый, средний бизнес, ваши данные нафиг никому не нужны. [смех] Ну, скорее всего. Вот. Но для больших компаний, конечно, это актуально. Угу. А далее вопрос от Ильин. Правильно ли я понимаю, что в начале сделали прототип ВН8N для заказчика? А Илья говорит про проект помощник архитектора через ТГбота. А затем после получения фидбека уже согласовали непосредственную реализацию с помощью иных болеезированных инструментов. Мы Telegramбота по-прежнему оставили на базе N8N, но, например, а работу с данными со всеми, да, мы уже сделали, ну, просто кастомную разработку. То есть, пока движок самого бота всё ещё живёт в N8N, а, скорее всего, он там и останется жить, потому что вот такого агенту повторить, а, вот сам движок агента повторить, да, с помощью разработки достаточно сложно. Вот. А нам пока удобнее, так и дешевле для заказчика это так сильно дешевле. Вот если бы мы говорили про какое-то очень высоконагруженное решение, которое нужно контролировать хорошо, где нужно очень детально тестировать вот этого вот агента, да, чтобы он всякую ерунду не выдавал, а тут у нас допустимо определённый процент неправильных ответов, потому что всё-таки внутренние сотрудники, они там посмеялись: "Ха-хай, выдал фигню, ну и ладно". Да, они не ушли никуда, как клиенты. А вот если бы у нас другой клиент был, например, там, не знаю, условно берис, да, у которого клиенты спрашивают вопросы, ну, там бы, конечно, мы бы уже перешли к продакшн решению для такого бота, да, мы бы по-другому его делали. Угу. А далее, да, перехожу к вопросам, где и как настроить количество ретрайров, когда есть, например, какое-то условие или ревью одного агента другим, чтобы они не ушли в цикл и не спалили весь бюджет апи ключа. Да, можно просто счётчик поставить между ними, что когда переход от одного агента к другому идёт, да, а сделать счётчик, что, например, не больше вот таких итераций, там пяти, например, и когда вот этот круг замыкается, счётчик прибавляется. Плюс внутри одного агента, внутри агента в инвоемент тоже есть настройка количество итерации самого агента, когда он как рассуждать начинает. И там тоже можно этот он всегда установлен там 10 типа 10 рассуждений он базово установлен от N8N вы его можете увеличить или уменьшить. Вот. Угу. А и тоже от этого же зрителя вопрос: как решается негативные сценарии? Например, выбранная модель недоступна из-за даунтайма, а или выдаёт какую-нибудь ошибку, либо кончились деньги? А вот у меня такой пример как раз тут и есть вот в этом ботик для архитекторов. То есть вот видите, у меня есть модель от Open Router, да? Вот она, Open Router. И если она выдаёт ошибку, например, у меня в этом Openутере кончились деньги, либо она почему-то не отвечает, у меня переходит э на запасную модель от Open AI. Вот она, openная модель. Вот. А и она выполняет. Но если уж она выдаст ошибку, ну тогда у меня бот напишет: "Упс, что-то пошло не так. Там дальше обработчик работает". И, соответственно, а пользователю скажет и мне, как админу, м, как разработчику напишет сообщение, а что если эта модель пошло, что в этой модели пошло что-то не так и в этой модели что-то пошло не так, чтобы я обратила на это внимание. Вот тут видите error ветка, можно её настроить всё, что угодно туда, сообщение пользователя и так далее. Угу. И Ксюш, пока последний вопрос. А если у вас что-то есть ещё, да, пожалуйста, дописывайте. А расскажите, пожалуйста, можно ли агенту дать шаблон в Фигме и дать ему текст поста? То есть агент сможет ли оформить пост по шаблону Фигмы? А, думаю, что да. Я ни разу с Фигмой не интегрировалась, но тут есть вот такая штука, я видела её. Фигма Not. Вот. И здесь можно взять get, соответственно, а страницы, да, Эта страница распарсится, соответственно, лмкой, а дальше лэмка сделает такой же код страницы, его загрузить, соответственно, в фиг можно обратно будет. Ну и вы, ну, только уже заполнены по шаблонам. Вот, соответственно, просто ЛМКА подставит в этот код нужные элементы, ну, уже по смыслу там, как этот шаблон заполнить. То есть можно из ФИГМ взять данные, и в Фигму загрузить данные. Ну и в лэмку скинуть, чтобы она обработала. Угу. И Ксюш, напоследок Илья спрашивает: "Что скажешь насчёт LФ и Flowwise?" >> А, не совсем понимаю вопрос. >> Мне кажется, это какие-то платформы или агенты? >> Да, не знаю. Сейчас прочитаю. >> Последний вопрос. >> Что не скажу, >> прочитаю, что это значит, и отпишусь. Отлично. А тогда пока что а на этом всё, Ксюш. Если, да, у тебя открыт чат, ты уже можешь видеть слова благодарности от зрителей. Твои вебинары всегда очень практичные, а очень наполненные. Спасибо тебе большое. А и спасибо зрителям, что сегодня к нам подключились. А я желаю всем приятного вечера. Спасибо большое. Э увидимся на следующих вебинарах. Подписывайтесь.