Новый день - новый гайд
Продолжаем продвигать Lovable - на этот раз соединили его с уже известным RAG агентом, который может искать ответы по информации из Google Docs.
Ничего нового для нас, но для большинства бизнеса это сейчас горячая тема и часть наших проектов как раз про это.
Поэтому если хотите быть на коне в бизнесе или фрилансе - советую освоить эту простую связку.
Ссылка на видео (английский язык)
Продолжаем продвигать Lovable - на этот раз соединили его с уже известным RAG агентом, который может искать ответы по информации из Google Docs.
Ничего нового для нас, но для большинства бизнеса это сейчас горячая тема и часть наших проектов как раз про это.
Поэтому если хотите быть на коне в бизнесе или фрилансе - советую освоить эту простую связку.
Ссылка на видео (английский язык)
YouTube
Building a RAG AI Agent that talks to your clients with Lovable
⬇️ Full guide, courses and personal support in our community:
https://www.skool.com/5minai-pro
In this video, I show you how to build an AI agent using N8N and OpenAI that can interact with users based on a knowledge base in Google Docs. The setup includes…
https://www.skool.com/5minai-pro
In this video, I show you how to build an AI agent using N8N and OpenAI that can interact with users based on a knowledge base in Google Docs. The setup includes…
Заебало
Неожиданно, зато честно.
Каждый день я занимаюсь тем, что пытаюсь придумать интересный и полезный контент.
Каждый день я смотрю статистику и вижу, что ничего не растет, как будто я в теневом бане youtube.
Каждый день, я вижу как люди с нулем знаний по N8N, крадут чужие, в том числе мои, шаблоны, врут с три короба в постах/видео и они становятся гипермега виральными.
Отсюда вопрос - как мне отупеть до их уровня? Как начать врать и перестать париться о качестве?
Возможно кто-то прошел это и знает клинику с качественной лоботомией.
P.S. я долго сдерживался, но седня посрался с челом, который на гитхабе выложил 200 скаченных шаблонов с сайта n8n (десяток из них мой) и он в тупую все отрицает, при этом этот репозиторий уже завирусился во всех соцсетях
Неожиданно, зато честно.
Каждый день я занимаюсь тем, что пытаюсь придумать интересный и полезный контент.
Каждый день я смотрю статистику и вижу, что ничего не растет, как будто я в теневом бане youtube.
Каждый день, я вижу как люди с нулем знаний по N8N, крадут чужие, в том числе мои, шаблоны, врут с три короба в постах/видео и они становятся гипермега виральными.
Отсюда вопрос - как мне отупеть до их уровня? Как начать врать и перестать париться о качестве?
Возможно кто-то прошел это и знает клинику с качественной лоботомией.
P.S. я долго сдерживался, но седня посрался с челом, который на гитхабе выложил 200 скаченных шаблонов с сайта n8n (десяток из них мой) и он в тупую все отрицает, при этом этот репозиторий уже завирусился во всех соцсетях
Как использовать новый Response API от OpenAI
Всем спасибо за слова поддержки!
Поныли и хватит - продолжаем писать тяжелый технический контент на основе реальных кейсов. Сегодня будет куча инсайтов по N8N и OpenAI.
____
Ранее я писал про сложный проект, который со скрипом удалось доделать.
Сразу после завершения OpenAI что-то поменяли и 20 минут на генерацию отчета превратились в 280.
При таком раскладе экономический смысл затеи терялся, поэтому пришлось придумывать что-то новое.
Вводные данные:
- Я использовал ассистента OpenAI с
- Мне нужно было сгенерировать 22 сообщения с
- На входе подается много данных (десяток страниц текста), поэтому тред быстро становится тяжелым и генерация каждого последующего сообщения замедляется.
Что я попробовал:
- Поменял HTTP ноды сДля контекста - я использую кастомные HTTP запросы и делаю Run ассистента. В этом случае вам нужно либо получать всю цепочку рассуждений используя stream параметр, либо делать цикл ожидания и проверять результаты каждые Х секунд.
- Генерировал без
Оставалось попробовать:
- Перейти на Responses и молиться, что проблема не на моей стороне.
- Перейти на Chat completions - тут бы пришлось переделать всю структуру запросов, так как нужно будет самим отвечать за контекст, который обычно ложится на плечи
В итоге я решил попробовать реализовать с Responses API.
Что нужно знать об этом подходе в сравнении с Assistants API:
- Тут нет
- Тут нет
- Tools нужно указывать при каждом запросе отдельно.
- Один запрос на всё - ответ от custom tool передается так же, как и сообщение пользователя, и при этом требует повторения параметров(к примеру вы дергали запрос с tools и указанием формата JSON schema, он выбрал custom tool, вам нужно отправить ответ от tool вместе с JSON schema, иначе будет дефолтный текстовый формат)
В результате Responses показал такую же результативность, как и была до поломки - около 20 минут на 1 отчет с gpt-4o-mini.
Для понимания - за 2 таких отчета компания берет $800 с клиентов и раньше на каждый из них уходило по 3-4 часа.
Дополнительный плюс от работы с Responses - вы сможете видеть логи всех событий и ответов в дашборде OpenAI.
___
В следующем посте расскажу о том почему интерфейс N8N виснет и как этого избежать.
Всем спасибо за слова поддержки!
Поныли и хватит - продолжаем писать тяжелый технический контент на основе реальных кейсов. Сегодня будет куча инсайтов по N8N и OpenAI.
____
Ранее я писал про сложный проект, который со скрипом удалось доделать.
Сразу после завершения OpenAI что-то поменяли и 20 минут на генерацию отчета превратились в 280.
При таком раскладе экономический смысл затеи терялся, поэтому пришлось придумывать что-то новое.
Вводные данные:
- Я использовал ассистента OpenAI с
threads
и gpt-4o-mini
. - Мне нужно было сгенерировать 22 сообщения с
structured output
(это важный нюанс, так как сильно нагружает LLM).- На входе подается много данных (десяток страниц текста), поэтому тред быстро становится тяжелым и генерация каждого последующего сообщения замедляется.
Что я попробовал:
- Поменял HTTP ноды с
stream
параметром на код, так как последние запросы он думал по 20 минут и в конце выдавал какую-то билеберду. Еще я грешил на gpt-4o-mini, но gpt-4.1-mini съедало столько же времени. - Генерировал без
structured output
- это не помогло.Оставалось попробовать:
- Перейти на Responses и молиться, что проблема не на моей стороне.
- Перейти на Chat completions - тут бы пришлось переделать всю структуру запросов, так как нужно будет самим отвечать за контекст, который обычно ложится на плечи
threads
.В итоге я решил попробовать реализовать с Responses API.
Что нужно знать об этом подходе в сравнении с Assistants API:
- Тут нет
assistants
- инструкции нужно задавать при запросе или они будут наследованы с предыдущего запроса.- Тут нет
threads
- вместо них есть указание предыдущего сообщения, через которое собирается вся цепочка сообщений в тред на стороне OpenAI.- Tools нужно указывать при каждом запросе отдельно.
- Один запрос на всё - ответ от custom tool передается так же, как и сообщение пользователя, и при этом требует повторения параметров
В результате Responses показал такую же результативность, как и была до поломки - около 20 минут на 1 отчет с gpt-4o-mini.
Для понимания - за 2 таких отчета компания берет $800 с клиентов и раньше на каждый из них уходило по 3-4 часа.
Дополнительный плюс от работы с Responses - вы сможете видеть логи всех событий и ответов в дашборде OpenAI.
___
В следующем посте расскажу о том почему интерфейс N8N виснет и как этого избежать.
⬇️ Кстати, для тех кто ничего не понял из поста выше, но очень интересно узнать про ИИ и ноукод
Завтра буду участвовать в интенсиве от @pixeleperfect и проведу лекцию с общим обзором ИИ, ноукода и реальных кейсов.
Это та же лекция, что была пару месяцев назад, но с новыми кейсами и свежими инструментами, которые сейчас в ходу.
Приглашаю присоединиться завтра в 18:30 по мск
Регистрация тут - https://t.me/pxp_reg_bot?start=id460209580
Завтра буду участвовать в интенсиве от @pixeleperfect и проведу лекцию с общим обзором ИИ, ноукода и реальных кейсов.
Это та же лекция, что была пару месяцев назад, но с новыми кейсами и свежими инструментами, которые сейчас в ходу.
Приглашаю присоединиться завтра в 18:30 по мск
Регистрация тут - https://t.me/pxp_reg_bot?start=id460209580
Грязный ноукодер
⬇️ Кстати, для тех кто ничего не понял из поста выше, но очень интересно узнать про ИИ и ноукод Завтра буду участвовать в интенсиве от @pixeleperfect и проведу лекцию с общим обзором ИИ, ноукода и реальных кейсов. Это та же лекция, что была пару месяцев назад…
YouTube
Как один человек с ИИ заменяет 20 сотрудников и запускает бизнес
⚡️ Курс по автоматизации бизнес процессов с Ai, старт потока 6 июня: https://ai.pixelperfect.school/
До 29 мая самая низкая цена, успевай
🌝 Написать менеджеру школы: https://t.me/pixelpsale
👉🏻 Подпишись на наш телеграм канал: https://t.me/+P789SwXDS_1iY2Ni
До 29 мая самая низкая цена, успевай
🌝 Написать менеджеру школы: https://t.me/pixelpsale
👉🏻 Подпишись на наш телеграм канал: https://t.me/+P789SwXDS_1iY2Ni
Откуда черпаете информацию?
Увидел, что мой хороший знакомый запустил свой канал, и решил немного попиарить без его ведома.
Влад - основатель кодового агентства, живет в Китае и просто классный парень. Он так же как и я парится за качество и старается давать настоящую пользу.
Подписывайтесь - https://t.me/kono1lov
____
🧐 Предлагаю обменяться в комментах наиболее полезные каналами с оригинальным контентом, которые вы читаете каждый день, а то большинство из каналов просто аггрегируют один и тот же контент.
Увидел, что мой хороший знакомый запустил свой канал, и решил немного попиарить без его ведома.
Влад - основатель кодового агентства, живет в Китае и просто классный парень. Он так же как и я парится за качество и старается давать настоящую пользу.
Подписывайтесь - https://t.me/kono1lov
____
Please open Telegram to view this post
VIEW IN TELEGRAM
Какой продукт наиболее интересен вам и/или рынку?
Anonymous Poll
38%
Youtube
17%
Linkedin
37%
Shorts/reels
37%
Jarvis
Jarvis день первый
В опросе на самую интересный продукт лидировал Jarvis и я решил начать с него (теперь уже Youtube).
Буду пробовать формат
___
У меня есть миллион технических идей для этого бота - инициирование диалога, самообучение, автономный аудит прогресса с советами и тд.
Но, к сожалению, начать нужно с простых основ, которые были во всех 30+ бесполезных роликах на ютубе - инструменты.
Я воспринимаю агентов как людей - такая аналогия помогает понимать, как именно должна выглядеть архитектура и какие решения будут оптимальными для правильной работы.
К примеру - наш Jarvis является типичным ассистентом, который должен успевать делать много дел. Как и реальный человек, он ограничен в количестве дел, которыми сможет одномоментно жонглировать и держать в памяти.
Поэтому, чтобы сделать его реальным швейцарским ножом, первым делом добавим ему “ассистентов для ассистента” - а именно дополнительных агентов, как инструменты, которые будут выполнять всю грязную работу за него.
План на сегодня:
1️⃣ Сделать простого агента в ТГ
2️⃣ Добавить к нему 3 агента:
- для общения с БД (куда мы будем все писать)
- для общения с Ютубом (просто потому что такой агент есть и я им пользуюсь для себя)
- для исследований (поиск в интернете, размышления и составление отчета)
3️⃣ Заставить его использовать их по назначению - самое сложное в этой задаче.
⬇️ Пишите в комментариях, что вы добавили в своего личного ассистента для упрощения ежедневной рутины.
В опросе на самую интересный продукт лидировал Jarvis и я решил начать с него (теперь уже Youtube).
Буду пробовать формат
build in public
и рассказывать что я собираюсь делать и что из этого получилось - а вы в свою очередь сможете поучаствовать и повлиять на разработку.___
У меня есть миллион технических идей для этого бота - инициирование диалога, самообучение, автономный аудит прогресса с советами и тд.
Но, к сожалению, начать нужно с простых основ, которые были во всех 30+ бесполезных роликах на ютубе - инструменты.
Я воспринимаю агентов как людей - такая аналогия помогает понимать, как именно должна выглядеть архитектура и какие решения будут оптимальными для правильной работы.
К примеру - наш Jarvis является типичным ассистентом, который должен успевать делать много дел. Как и реальный человек, он ограничен в количестве дел, которыми сможет одномоментно жонглировать и держать в памяти.
Поэтому, чтобы сделать его реальным швейцарским ножом, первым делом добавим ему “ассистентов для ассистента” - а именно дополнительных агентов, как инструменты, которые будут выполнять всю грязную работу за него.
План на сегодня:
1️⃣ Сделать простого агента в ТГ
2️⃣ Добавить к нему 3 агента:
- для общения с БД (куда мы будем все писать)
- для общения с Ютубом (просто потому что такой агент есть и я им пользуюсь для себя)
- для исследований (поиск в интернете, размышления и составление отчета)
3️⃣ Заставить его использовать их по назначению - самое сложное в этой задаче.
⬇️ Пишите в комментариях, что вы добавили в своего личного ассистента для упрощения ежедневной рутины.
Jarvis: результаты первого дня
Я подключил к агенту 2 агента (БД и ютуб) и пытаюсь заставить агента в один запрос сделать следующее:
1. Найти топовое видео на ютубе в определенной нише.
2. Транскрибировать его.
3. Написать верхнеуровневый скрипт, название и описание картинки для нового видео.
4. Записать всю эту информацию в таблицу (которой не существует и ее нужно создать).
Неудивительно, что все мультиагентские системы от “креаторов” сейчас выглядят как набор последовательных агентов без тулзов, что само по себе является обычным Chat Completion запросом - то есть автоматизацией, а не агентом. Потому что, чтобы заставить агента думать, выполнять задачи и взаимодействовать с другими агентами, нужно решить миллион различных проблем.
Вот некоторые из них:
1️⃣ AI Agent node в n8n создан на основе Langchain и абсолютно бесполезен, если вы не контролируете параметры и подходы самого Langchain.
Я посмотрел логи агента, дополнительно разобрал код модуля с Gemini и подтвердил свои опасения - они лепят историю, системный промпт и запрос в одну большую кашу. Как результат - ИИ агент с трудом слушается команд и понимает что вообще нужно делать.
Особенно это видно на сложных много ступенчатых задачах и длинных диалогах - вместо выполнения текущего запроса агент может выловить предыдущий запрос из истории и начать выполнять его.
Вывод - делать основного агента на OpenAI.
2️⃣ Побочные эффекты первого пункта - агент не слушается системного промпта и настырно лезет выполнять все задачи сам, вместо того чтобы планировать и делегировать большие задачи своим помощникам.
Также, агент упускает важные детали и начинает делать отсебятину - это будет правиться с помощью дополнительной проверки позже.
3️⃣ Tavily, который пихают все креаторы ютуба, оказался полным разочарованием(что неудивительно) - вместо него лучше использовать Perplexity для сложных исследований и Firecrawl для поиска и парсинга сайтов.
___
В итоге первый день растянется на два дня, но это не удивительно, ведь мы пытаемся создать то, чего еще не было.
Чуть позже вернусь с результатами и конкретными мини-открытиями/решениями, которые удалось сделать во время разработки.
P.S. есть вакантное место для проекта с ИИ - если у вас есть идеи и бюджет от $3k, то пишите в личку
Я подключил к агенту 2 агента (БД и ютуб) и пытаюсь заставить агента в один запрос сделать следующее:
1. Найти топовое видео на ютубе в определенной нише.
2. Транскрибировать его.
3. Написать верхнеуровневый скрипт, название и описание картинки для нового видео.
4. Записать всю эту информацию в таблицу (которой не существует и ее нужно создать).
Неудивительно, что все мультиагентские системы от “креаторов” сейчас выглядят как набор последовательных агентов без тулзов, что само по себе является обычным Chat Completion запросом - то есть автоматизацией, а не агентом. Потому что, чтобы заставить агента думать, выполнять задачи и взаимодействовать с другими агентами, нужно решить миллион различных проблем.
Вот некоторые из них:
1️⃣ AI Agent node в n8n создан на основе Langchain и абсолютно бесполезен, если вы не контролируете параметры и подходы самого Langchain.
Я посмотрел логи агента, дополнительно разобрал код модуля с Gemini и подтвердил свои опасения - они лепят историю, системный промпт и запрос в одну большую кашу. Как результат - ИИ агент с трудом слушается команд и понимает что вообще нужно делать.
Особенно это видно на сложных много ступенчатых задачах и длинных диалогах - вместо выполнения текущего запроса агент может выловить предыдущий запрос из истории и начать выполнять его.
Вывод - делать основного агента на OpenAI.
2️⃣ Побочные эффекты первого пункта - агент не слушается системного промпта и настырно лезет выполнять все задачи сам, вместо того чтобы планировать и делегировать большие задачи своим помощникам.
Также, агент упускает важные детали и начинает делать отсебятину - это будет правиться с помощью дополнительной проверки позже.
3️⃣ Tavily, который пихают все креаторы ютуба, оказался полным разочарованием
___
В итоге первый день растянется на два дня, но это не удивительно, ведь мы пытаемся создать то, чего еще не было.
Чуть позже вернусь с результатами и конкретными мини-открытиями/решениями, которые удалось сделать во время разработки.
P.S. есть вакантное место для проекта с ИИ - если у вас есть идеи и бюджет от $3k, то пишите в личку
Такс, краткие новости
1️⃣ История с Skool комьюнити еще жива, но я решил прикрыть бесплатное сообщество, так как плачу за него $100 в месяц, никто не спрашивает там вопросов и нет желания пытаться делать контент в десяток разных мест одновременно.
В итоге поступило даже предложение о покупке и я задумался, что можно его продать, чтобы монетизировать хотя бы толику затраченных сил.
Если кому-то интересно пишите в личку, там - 2600 почт (бОльшая часть США и Европа, фрилансеры и оунеры), CRM для рассылок и разные автоматизации для общения/создания контента.
Цена $5000.
2️⃣ Платное комьюнити будет жить - я решил вернуться к проектам, так как понял, что гонку с профессиональнымипиздаболами креаторами я не выиграю. Я хочу продолжать делать что-то умное и интересное, исследовать ИИ и делиться находками в спокойном режиме. Поэтому я буду потихоньку пополнять платное комьюнити курсами (ИИ агенты, N8N) и разными гайдами, параллельно работая и получая реальный опыт на проектах.
Хочу попробовать другие форматы и думаю провести онлайн-трансляцию копирования какого-нить $$$ продукта с Lovable за один час . Что думаете?
3️⃣ Еще задумался провести лекции в живую, так как это просто драйвит. В Питере пока вижу два потенциальных места - библиотека Маяковского и Просто коворкинг. Возможно кто-то знает потенциальные площадки?
____
Для поиска проектов решил собрать портфолио и оказалось, что кейсов у меня примерно столько же, сколько платных подписчиков в сообществе.
При том, что у креаторов с нулем кейсов тысячи подписчиков, кажется выявляется закономерность с пропорциями🧐
1️⃣ История с Skool комьюнити еще жива, но я решил прикрыть бесплатное сообщество, так как плачу за него $100 в месяц, никто не спрашивает там вопросов и нет желания пытаться делать контент в десяток разных мест одновременно.
В итоге поступило даже предложение о покупке и я задумался, что можно его продать, чтобы монетизировать хотя бы толику затраченных сил.
Если кому-то интересно пишите в личку, там - 2600 почт (бОльшая часть США и Европа, фрилансеры и оунеры), CRM для рассылок и разные автоматизации для общения/создания контента.
Цена $5000.
2️⃣ Платное комьюнити будет жить - я решил вернуться к проектам, так как понял, что гонку с профессиональными
Хочу попробовать другие форматы и думаю провести онлайн-трансляцию копирования какого-нить $$$ продукта с Lovable за один час . Что думаете?
3️⃣ Еще задумался провести лекции в живую, так как это просто драйвит. В Питере пока вижу два потенциальных места - библиотека Маяковского и Просто коворкинг. Возможно кто-то знает потенциальные площадки?
____
Для поиска проектов решил собрать портфолио и оказалось, что кейсов у меня примерно столько же, сколько платных подписчиков в сообществе.
При том, что у креаторов с нулем кейсов тысячи подписчиков, кажется выявляется закономерность с пропорциями
Please open Telegram to view this post
VIEW IN TELEGRAM
Обновил сайт с Lovable
Прошлый сайт был красивым (спасибо жене), но лежал мертвым грузом и уже устарел к моменту его завершения - там не было ничего про ИИ.
Хотелось сделать что-то простое, где была бы суть, а не картинка.
Картинку сейчас сделать не так сложно - я вижу кучу хороших дизайнов у агентств креаторов, поэтому не вижу особого смысла соревноваться в картинке.к тому же в америке больше входу полотна текста среди продающих лендосов
Вместо этого я добавил список кейсов, который является наверное пятой долей от того, что на самом деле мы сделали.
А также добавил нечто вроде FAQ, где расписал свои мысли по поводу типичных проектов с RAG и генерацией контента.
Многие клиенты приходят с ложными представлениями о возможностях ИИ, поэтому хотелось бы объяснять им все “на входе”, чтобы не тратить свое и чужое время.
https://lowcoding.dev/
Прошлый сайт был красивым (спасибо жене), но лежал мертвым грузом и уже устарел к моменту его завершения - там не было ничего про ИИ.
Хотелось сделать что-то простое, где была бы суть, а не картинка.
Картинку сейчас сделать не так сложно - я вижу кучу хороших дизайнов у агентств креаторов, поэтому не вижу особого смысла соревноваться в картинке.
Вместо этого я добавил список кейсов, который является наверное пятой долей от того, что на самом деле мы сделали.
А также добавил нечто вроде FAQ, где расписал свои мысли по поводу типичных проектов с RAG и генерацией контента.
Многие клиенты приходят с ложными представлениями о возможностях ИИ, поэтому хотелось бы объяснять им все “на входе”, чтобы не тратить свое и чужое время.
https://lowcoding.dev/
Не используйте AI Agent ноду для агентов
Я давно заметил, что AI Agent нода работает куда хуже как агент, нежели OpenAI ассистент.
С ней агенты хуже следуют промптам, помнят историю и выбирают инструменты.
Я решил разобраться почему так.
1️⃣Каждая модель (OpenAI, Gemini, Claude) натренирована определенным образом и ожидает на входе данные в определенном формате с разметкой.
2️⃣По сути модель всегда обрабатывает 1 сообщение, которое содержит в себе сразу все - системный промпт, ваш запрос, предыдущую историю, описание тулзов, описание output формата.
3️⃣ Каждую модель обучали по своему - к примеру OpenAI использует ChatML, где указаны роли (ассистент, пользователь, система) и промпты в формате JSON. Также с разметкой идет и история, тулзы и тд.
4️⃣ Langchain принимает данные на входе в одном формате, а далее “переводит” их в формат выбранной LLM.
Пока он это делает, он может немного видоизменять данные и формат в силу технических особенностей и непоспеванием за обновлениями LLM.
Наглядно - если открыть execution AI agent ноды в N8N и посмотреть, что он отправляет во время рассуждений, то там видно, как он склеивает system prompt, user prompt и историю в одну гигантскую кашу, где даже человек ногу сломит.
➡️В итоге как результат LLM (а конкретно OpenAI) получает вводные данные не в том виде, в котором привыкла, а значит хуже их распознает.
Это влияет на все - следование промпту, выбор инструментов, память прошлых сообщений.
Таким образом, лучше всего использовать OpenAI ассистента напрямую - тогда он будет лучше распознавать инструменты, использовать умную память, которая делает автоматическое саммари, а не просто удаляет старые сообщения.
Я проводил этот эксперимент на 5+ проектах клиентов и друзей - просто менял AI agent ноду на OpenAI ассистента, оставляя набор инструментов и промпт тем же. Результат - агенты сразу начинали себя вести так, как они должны себя вести.
___
ПС Это мое обывательское понимание Langchain, которое я выудил из Gemini. Не знаю читают ли меня хардовые ML инженеры, возможно они смогут поправить, если понял не так.
Я давно заметил, что AI Agent нода работает куда хуже как агент, нежели OpenAI ассистент.
С ней агенты хуже следуют промптам, помнят историю и выбирают инструменты.
Я решил разобраться почему так.
1️⃣Каждая модель (OpenAI, Gemini, Claude) натренирована определенным образом и ожидает на входе данные в определенном формате с разметкой.
2️⃣По сути модель всегда обрабатывает 1 сообщение, которое содержит в себе сразу все - системный промпт, ваш запрос, предыдущую историю, описание тулзов, описание output формата.
3️⃣ Каждую модель обучали по своему - к примеру OpenAI использует ChatML, где указаны роли (ассистент, пользователь, система) и промпты в формате JSON. Также с разметкой идет и история, тулзы и тд.
[
{ "role": "system", "content": "You are a helpful assistant." },
{ "role": "user", "content": "What is the capital of France?" },
{ "role": "assistant", "content": "Paris." }
]
4️⃣ Langchain принимает данные на входе в одном формате, а далее “переводит” их в формат выбранной LLM.
Пока он это делает, он может немного видоизменять данные и формат в силу технических особенностей и непоспеванием за обновлениями LLM.
Наглядно - если открыть execution AI agent ноды в N8N и посмотреть, что он отправляет во время рассуждений, то там видно, как он склеивает system prompt, user prompt и историю в одну гигантскую кашу, где даже человек ногу сломит.
➡️В итоге как результат LLM (а конкретно OpenAI) получает вводные данные не в том виде, в котором привыкла, а значит хуже их распознает.
Это влияет на все - следование промпту, выбор инструментов, память прошлых сообщений.
Таким образом, лучше всего использовать OpenAI ассистента напрямую - тогда он будет лучше распознавать инструменты, использовать умную память, которая делает автоматическое саммари, а не просто удаляет старые сообщения.
Я проводил этот эксперимент на 5+ проектах клиентов и друзей - просто менял AI agent ноду на OpenAI ассистента, оставляя набор инструментов и промпт тем же. Результат - агенты сразу начинали себя вести так, как они должны себя вести.
___
ПС Это мое обывательское понимание Langchain, которое я выудил из Gemini. Не знаю читают ли меня хардовые ML инженеры, возможно они смогут поправить, если понял не так.
Обновил сайт 2.0
После справедливых комментариев я еще раз взглянул на свой сайт, взглянул на сайты конкурентов и понял, что на коне не я.
Я закатал рукава и пошел нагло тырить крутые элементы из готовых UI kits.
Вот частичный список, на случай если вы захотели модненькие анимации для своего сайта:
1️⃣ Aceternity UI - самые приятные и топовые компоненты для лендинга.
2️⃣ React Bits - куча интересных анимашек для лендинга и не только.
3️⃣ Hero UI - большой красивый пак с детально продуманными компонентами для интерфейса (не в обиду shadcn).
За часок удалось хорошенько накрасить губы и добавить еще одну страницу про сообщество.
Кстати, в нем есть курс по Lovable, где я собрал еще больше дизайн библиотек для разработки с Lovable😏
Заценить тут - lowcoding.dev
После справедливых комментариев я еще раз взглянул на свой сайт, взглянул на сайты конкурентов и понял, что на коне не я.
Я закатал рукава и пошел нагло тырить крутые элементы из готовых UI kits.
Вот частичный список, на случай если вы захотели модненькие анимации для своего сайта:
1️⃣ Aceternity UI - самые приятные и топовые компоненты для лендинга.
2️⃣ React Bits - куча интересных анимашек для лендинга и не только.
3️⃣ Hero UI - большой красивый пак с детально продуманными компонентами для интерфейса (не в обиду shadcn).
За часок удалось хорошенько накрасить губы и добавить еще одну страницу про сообщество.
Кстати, в нем есть курс по Lovable, где я собрал еще больше дизайн библиотек для разработки с Lovable
Заценить тут - lowcoding.dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Очередной душный гайд
Продолжаем делать сложные штуки - сегодня гайд про то, как улучшить выдачу RAG агента.
Представим, что у вас сотня файлов и несколько тысяч векторов.
При поиске среди векторов вы можете получить в выдаче пару десятков результатов, которые могут попросту не влезть в input ИИ или же ответ на ваш вопрос будет лежать в следующей десятке, которая останется за бортом.
Что делать? Сужать поиск.
Нет смысла искать информацию о ракетах в баснях Крылова, поэтому есть смысл предварительно отфильтровать файлы, среди которых мы хотим делать поиск.
Также это может помочь, если у вас много файлов с близкой по смыслу информацией, и тонкую разницу между файлами можно понять по их описанию.
Итак, чтобы реализовать это, мы:
1️⃣ Добавляем таблицы
2️⃣ Добавляем данные в таблицы - в
3️⃣ Создаем Supabase функции для поиска по векторам
4️⃣ Топаем в N8N и делаем флоу с кодом для поиска по файлам и далее для поиска по
Таким образом - сначала мы находим подходящие файлы в списке файлов, используя их описание, а далее ищем подходящие куски текста только в этих файлах, чем сужаем поиск.
Также, засчет кастомной функции нам удается получить ссылку на файл для найденных векторов, которую мы можем вернуть вместе с ответом пользователю.
Ссылка на видео гайд (английский) - https://www.youtube.com/watch?v=asXVOHg89hs
Ссылка на сообщество с шаблоном - https://www.skool.com/5minai-pro
Продолжаем делать сложные штуки - сегодня гайд про то, как улучшить выдачу RAG агента.
Представим, что у вас сотня файлов и несколько тысяч векторов.
При поиске среди векторов вы можете получить в выдаче пару десятков результатов, которые могут попросту не влезть в input ИИ или же ответ на ваш вопрос будет лежать в следующей десятке, которая останется за бортом.
Что делать? Сужать поиск.
Нет смысла искать информацию о ракетах в баснях Крылова, поэтому есть смысл предварительно отфильтровать файлы, среди которых мы хотим делать поиск.
Также это может помочь, если у вас много файлов с близкой по смыслу информацией, и тонкую разницу между файлами можно понять по их описанию.
Итак, чтобы реализовать это, мы:
1️⃣ Добавляем таблицы
files
(с описанием файлов) и documents
(с векторами) в Supabase2️⃣ Добавляем данные в таблицы - в
files
у нас будут ссылки на файлы и описание с векторами, в documents
куски текста и вектора с ссылкой на file
. 3️⃣ Создаем Supabase функции для поиска по векторам
files
и documents
4️⃣ Топаем в N8N и делаем флоу с кодом для поиска по файлам и далее для поиска по
documents
с фильтром по найденным файлам.Таким образом - сначала мы находим подходящие файлы в списке файлов, используя их описание, а далее ищем подходящие куски текста только в этих файлах, чем сужаем поиск.
Также, засчет кастомной функции нам удается получить ссылку на файл для найденных векторов, которую мы можем вернуть вместе с ответом пользователю.
Ссылка на видео гайд (английский) - https://www.youtube.com/watch?v=asXVOHg89hs
Ссылка на сообщество с шаблоном - https://www.skool.com/5minai-pro
Собрал еще одну пушку - ИИ агент для Snowflake
Но не просто для общения с базой, а для генерации отчетов с графиками.
Проблема обычно в том, что нельзя ИИ агенту позволять запускать любой SQL запрос - он может дернуть слишком много информации.
Я сделал так, чтобы он писал запрос и отдавал результат, упаковынный в отдельную страничку, если он больше 100 строк.
Страничка по сути вебхук n8n, который получает на входе query параметр с SQL запросом и дергает Snowflake. В результате отдает красивый HTML с подгруженными данными - безотходное производство, никаких данных не храним.
Гайд на английском уже тут - https://youtu.be/r7er-HCRsX4
Но не просто для общения с базой, а для генерации отчетов с графиками.
Проблема обычно в том, что нельзя ИИ агенту позволять запускать любой SQL запрос - он может дернуть слишком много информации.
Я сделал так, чтобы он писал запрос и отдавал результат, упаковынный в отдельную страничку, если он больше 100 строк.
Страничка по сути вебхук n8n, который получает на входе query параметр с SQL запросом и дергает Snowflake. В результате отдает красивый HTML с подгруженными данными - безотходное производство, никаких данных не храним.
Гайд на английском уже тут - https://youtu.be/r7er-HCRsX4