- BrainTools - https://www.braintools.ru -

Инженер отсутствует, но его работа выполняется?

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

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

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

Инженер отсутствует, но его работа выполняется? - 1

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

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

Инженер отсутствует, но его работа выполняется? - 2

Освоить книгу Генриха Альтшуллера не составило труда, как и сделать презентацию с мемами. Лекторская деятельность — вещь полезная и интересная, если владеть темой. А быть ретранслятором текстов, подготовленных помощниками, — дело, как по мне, неприятное.

Инженер отсутствует, но его работа выполняется? - 3

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

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

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

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

Инженер отсутствует, но его работа выполняется? - 4

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

Инженер отсутствует, но его работа выполняется? - 5

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

По инерции я еще тлел этим проектом, обдумывая, чего бы такого в него добавить для эволюционирования в полноценный продукт. Но поскольку похожие эксперименты давно ведутся, мне стало любопытнее развить ряд мыслей, которые появились по ходу текущей пьесы. Снова придется многое изучить и перепробовать, надеясь, что Cursor и Claude будут моими верными спутниками. Главное, чтобы не кумирами.

Инженер отсутствует, но его работа выполняется? - 6

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

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

Инструкция по настройке
  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 [6]

      – OpenWebUI: http://localhost:3000/ [7]

      – patent-service: http://localhost:8000/docs [8]

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

    1. Ввести учетные данные

      Инженер отсутствует, но его работа выполняется? - 7
    2. Перейти в настройки (Settings > Community Nodes) и установить расширение n8n-nodes-gigachat

      Инженер отсутствует, но его работа выполняется? - 8
    3. Указать ключ GigaChat в Credentials

      Инженер отсутствует, но его работа выполняется? - 9

      После ввода ключа должно быть успешно проверено подключение.

      Инженер отсутствует, но его работа выполняется? - 10
    4. Копировать воркфлоу [9], устранить все замечания в нодах, активировать и сохранить.

      Инженер отсутствует, но его работа выполняется? - 11
  3. Настройка OpenWebUI

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

      Инженер отсутствует, но его работа выполняется? - 12
    2. Перейти в панель администратора, создать функцию и вставить код [10], который будет звать n8n webhook trigger по соответствующей ссылке.

      Инженер отсутствует, но его работа выполняется? - 13

      Важно убедиться, что в N8N_WEBHOOK_URL указан именно тот URL, который содержится в n8n webhook trigger. Также увеличить таймаут. Обратите внимание [11], что на в ссылке может присутствовать «webhook-test», который полезен при отладке, но после его следует исправить, оставив только «webhook». Так не придется запускать воркфлоу в интерфейсе n8n для каждого запроса.

      Инженер отсутствует, но его работа выполняется? - 14

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

    Инженер отсутствует, но его работа выполняется? - 15
  4. Загрузка патентов в Qdrant

    1. Открыть Google Patents (доступ с российским IP ограничен) и выкачать .csv по любым интересующим темам.

      Инженер отсутствует, но его работа выполняется? - 16

      Когда я начинал делать данный проект, проблем с доступом не было, а сейчас уже нет времени дорабатывать под альтернативные источники патентов, поэтому You are welcome to Pull Request.

    2. Открыть patent-service и загрузить данные патентов из .csv в Qdrant, учитывая упомянутые выше ограничения.

      Инженер отсутствует, но его работа выполняется? - 17

      В ответе получаем статус с task_id, по которому можно отслеживать прогресс загрузки патентов.

      Инженер отсутствует, но его работа выполняется? - 18
    3. После того, как нужные данные будут в хранилище (проверяется в /load_status/{task_id}), можно приступать к работе.

      Инженер отсутствует, но его работа выполняется? - 19

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

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

Инженер отсутствует, но его работа выполняется? - 20

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

Выводы:

  1. Если почитывать Хабр и книжки, праздно шататься по лекциям и конференциям, то дельная мысль может «прилететь в гнездо» даже там, где лучше вообще не появляться.

  2. В открытом доступе много топлива для генерирования идей и инструментов для их реализации.

  3. Различные «методологии» целесообразно «перекладывать» на ИИ-агентов, что теоретически облегчит работу как отдельным специалистам, так и коллективам.

  4. Продуманная и человечная корпоративная культура может подтолкнуть сотрудников к саморазвитию и творчеству [12], что, в свою очередь, способно привлечь энергию денег.

  5. ИИ значительно облегчает разработку и меняет мир, что наводит на мысли об изменении роли человеческого труда. Интересно смотреть на это сквозь призму гипотезы техно-гуманитарного баланса [13].

    Согласно докладу ВЭФ 2026 года [14], любознательность и эффективное использование ИИ крайне важны для карьеры. А про высокие баллы ЕГЭ нет ни слова.

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

  7. Вроде получилось сделать вклад в OpenSource [16]. Теперь можно мечтать о чем-нибудь великом.

Инженер отсутствует, но его работа выполняется? - 21

Автор: bazhil

Источник [17]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/34980

URLs in this post:

[1] Теория Решения Изобретательских Задач: https://www.altshuller.ru/

[2] применении ТРИЗ: https://habr.com/ru/articles/596403/

[3] опыт: http://www.braintools.ru/article/6952

[4] АРИЗ: https://www.altshuller.ru/triz/ariz85v.asp

[5] репозитории: https://github.com/bazhil/ariz-agent

[6] http://localhost:5678/setup: http://localhost:5678/setup

[7] http://localhost:3000/: http://localhost:3000/

[8] http://localhost:8000/docs: http://localhost:8000/docs

[9] воркфлоу: https://github.com/bazhil/ariz-agent/blob/main/n8n_workflows/ariz_85_v.json

[10] код: https://github.com/bazhil/ariz-agent/blob/main/openwebui_functions/ariz_85_v.py

[11] внимание: http://www.braintools.ru/article/7595

[12] творчеству: http://www.braintools.ru/creation

[13] техно-гуманитарного баланса: https://cyberleninka.ru/article/n/vospitatelnyy-potentsial-sinergetiki-gipoteza-tehno-gumanitarnogo-balansa/viewer

[14] докладу ВЭФ 2026 года: https://reports.weforum.org/docs/WEF_Artificial_Intelligence_and_the_Future_of_Entry_Level_Work_2026.pdf

[15] доклад ВЭФ 2023 года: https://www3.weforum.org/docs/WEF_Future_of_Jobs_2023.pdf

[16] вклад в OpenSource: https://habr.com/p/953402/

[17] Источник: https://habr.com/ru/articles/1077144/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1077144

www.BrainTools.ru

Rambler's Top100