Без инженера, но работа идет?

Прокомментировать Просмотры: 2

Привет всем! Меня зовут Илья, я софтверный инженер, но чаще пишу промпты, а не код, что неизбежно оставляет характерный отпечаток на моих проектах.

В этой публикации я покажу, как связать n8n с OpenWebUI, когда и зачем стоит заниматься вайбкодингом, а заодно поделюсь мыслями о том, где искать вдохновение для новых начинаний.

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

Тот вечер оставил приятное впечатление, хотя я и не подозревал, что закладываю фундамент для будущей истории. Из череды туманных разговоров в памяти отложилась аббревиатура «Теория Решения Изобретательских Задач» (ТРИЗ). Термин зацепил настолько сильно, что я сразу заказал бумажную книгу Генриха Сауловича Альтшуллера «Найти идею». После чего благополучно откладывал её чтение на протяжении сотен дней. Сложно осилить увлекательную литературу, когда в стопке томится еще десяток не менее крутых изданий — почти как у Георгия Ивановича на иллюстрации выше. К тому же свободного времени вечно не хватает, сколько ни стань ученые теоретизировать на тему тайм-менеджмента.

Карьера шла своим чередом, проекты сменяли друг друга, а труд «Найти идею» тем временем мирно пылился на полке. Однако в очередной компании оказалась потрясающая корпоративная культура с внутренними митапами, где каждый может поделиться чем-то захватывающим. Имея лишь поверхностное представление о практическом применении ТРИЗ, я решил наконец-то разобраться в вопросе и презентовать тему коллегам, заодно стряхнув пыль с навыков публичных выступлений, которые не практиковал лет десять.

Разобраться в книге Альтшуллера оказалось несложно, как и подготовить презентацию сдобренную мемами. Делиться знаниями — занятие увлекательное, особенно когда сам глубоко погружен в предмет. Быть же простым ретранслятором чужих тезисов — задача довольно унылая.

Полученных знаний хватило, чтобы начать смотреть на рабочие трудности сквозь призму законов развития систем и стандартных приемов ТРИЗ. Так, в одном запутанном проекте мне здорово помог принцип «усложни проблему вдвое», примененный к тестовому сценарию. Успешно справившись с маловероятной задачей, я попутно закрыл базовые требования, на которые до этого угробил кучу нервов и времени.

Читая «Найти идею», я вспомнил конференцию, где рассказывали о сервисе патентной аналитики для исследователей. В тот момент меня осенило: к их продукту можно прикрутить алгоритм АРИЗ, существенно повысив ценность решения за счет уже существующих ресурсов. Задумка проста — по любому техническому запросу мгновенно выдавать пул возможных решений вместе с релевантными патентами. Наверняка найдутся те, кто готов обменять токены на сэкономленные человеко-часы?

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

Огромное спасибо современным ИИ-ассистентам, которые взяли на себя рутину и ускорили написание кода. Чертовски приятно задать текстовые требования и уже через пару минут проверять жизнеспособность системы, исправляя баги хоть с десятой попытки.

Вся бизнес-логика уместилась в workflow n8n, который через сервис-адаптер общается с векторной базой Qdrant. В роли пользовательского интерфейса выступает OpenWebUI. Проще настроить разве что Claude, Cursor или аналогичные инструменты.

То, что я показывал на пресейле, было сложнее технически, но суть осталась прежней. Заказчикам концепт понравился, однако после нескольких недель раздумий коммерческого потенциала они в нем не разглядели. Несмотря на отсутствие контракта, я чувствовал себя отлично: бесценный опыт презентации pet-проекта реальным клиентам получен. Если продолжать в том же духе, рано или поздно удастся выйти на новый уровень. В худшем случае — просто отлично проведешь время, а это главное.

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

Эту реализацию я решил выложить в открытый доступ — надеюсь, кому-нибудь она пригодится. Существует множество модификаций алгоритма решения изобретательских задач, поэтому каждый сможет настроить АРИЗ-агента под свои задачи. Уверен, текущая версия будет полезна как для изучения ТРИЗ и мультиагентных архитектур, так и для решения прикладных задач. Ну а если вдруг кто-то умудрится на этом заработать — просто переведите часть средств в детский благотворительный фонд (согласно условиям LICENSE).

В репозитории лежит самая минималистичная версия из всех моих экспериментов, максимально приближенная к канонам Альтшуллера. Тем не менее, даже этот вариант, собранный при активной поддержке ИИ, выдает весьма впечатляющие результаты.

Инструкция по настройке
  1. Подготовка

    1. Клонировать репозиторий:

      git clone https://github.com/bazhil/ariz-agent.git
    2. Перейти в рабочую папку:

      cd ariz-agent
    3. Сконфигурировать файл окружения:

      cp .env.example .env
    4. Поднять контейнеры:

      docker compose up
    5. После успешного запуска открыть в браузере три панели:

      — n8n: http://localhost:5678/setup

      — OpenWebUI: http://localhost:3000/

      — patent-service: http://localhost:8000/docs

  2. Настройка n8n

    1. Авторизоваться, указав необходимые учетные данные

    2. Зайти в Settings > Community Nodes и инсталлировать плагин n8n-nodes-gigachat

    3. Прописать токен GigaChat в разделе Credentials

      После сохранения ключа статус подключения должен измениться на успешный.

    4. Импортировать воркфлоу, исправить возможные ошибки в нодах, активировать схему и сохранить.

  3. Настройка OpenWebUI

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

    2. Перейти в настройки администратора, создать кастомную функцию и вставить туда код, который будет отправлять запросы на вебхук n8n.

      Обязательно убедитесь, что в переменной N8N_WEBHOOK_URL прописан актуальный адрес триггера, а также увеличьте тайм-аут. Учтите, что в URL может содержаться префикс «webhook-test», удобный для отладки, но для продакшена его нужно заменить на обычный «webhook». Это избавит вас от необходимости вручную жарить кнопку запуска в n8n перед каждым запросом.

    После этого активируйте функцию — переключатель должен загореться зеленым.

  4. Загрузка патентов в Qdrant

    1. Зайти в Google Patents (потребуется обход блокировок для российских IP) и выгрузить CSV-файлы по интересующим вас направлениям.

      Когда я только начинал этот проект, проблем с доступом не возникало; сейчас же времени на адаптацию под альтернативные дата-сеты нет, так что Pull Requests всячески приветствуются.

    2. Обратиться к patent-service и запустить импорт патентных данных из CSV в Qdrant с учетом упомянутых нюансов доступа.

      В ответ придет статус с task_id, по которому можно отслеживать ход индексации.

    3. Как только данные будут полностью проиндексированы (проверяется через /load_status/{task_id}), можно приступать к работе.

После завершения настроек остается открыть чат с функцией ariz в OpenWebUI и описать свою проблему. Чем подробнее вы изложите контекст, тем точнее окажется результат, хотя ИИ способен выдать годный ответ и на абстрактный вопрос. Генерация занимает некоторое время, но по сравнению с ручным поиском это происходит мгновенно.

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

В процессе разработки я опирался на патентную базу по беспилотникам. Тема настолько увлекательная, что даже при поверхностном погружении позволяет оценивать не только качество работы ИИ-агента, но и реальный уровень экспертизы как отдельных энтузиастов, так и матерых производителей. Например, оснастить дрон газовым баллончиком и динамиком — задача тривиальная, а вот обучить БПЛА эффективно осваивать бюджетные субсидии на дальних дистанциях — это уже высший пилотаж корпоративных НИОКР.

Выводы:

  1. Регулярное чтение профильных ресурсов вроде SE7ENа, посещение лекций и конференций могут подбросить гениальную идею даже в самом неожиданном месте.

  2. Сегодня в открытом доступе есть колоссальный объем ресурсов для генерации идей и готовых инструментов для их воплощения.

  3. Перенос устоявшихся методологий на плечи ИИ-агентов способен качественно упростить жизнь как одиночным экспертам, так и целым командам.

  4. Здоровая и человечная корпоративная культура стимулирует сотрудников к творчеству и саморазвитию, что неизбежно привлекает финансовый успех.

  5. Искусственный интеллект стремительно упрощает разработку и перекраивает реальность, заставляя по-новому взглянуть на концепцию техно-гуманитарного баланса.

    Как следует из доклада ВЭФ 2026 года, для успешной карьеры критически важны любознательность и навыки эффективного взаимодействия с ИИ. Про школьные экзамены там почему-то ни слова.

  6. ТРИЗ не только не теряет актуальности, но и переживает новый виток востребованности. Косвенно это подтверждает отчет ВЭФ 2023 года, где креативность названа одним из ключевых навыков будущего.

  7. Кажется, у меня получилось внести свой вклад в OpenSource. Теперь можно смело замахиваться на что-то грандиозное.

 

Источник

Поделиться:

Похожие статьи

Поиск по играм, новостям и статьям…

Введите не менее двух символов

Введите не менее двух символов