Достаточно «Искры» одной…

Почему я начал делать эту штуку? От жадности и от лени.

Нам начали упорно на работе пропихивать модную игрушку (чтобы мы же её и оплачивали). Ну, как бы, не трудно было заметить, что эта драная обёртка в 10 раз больше цены, чем те модели искусственного интеллекта, которые там реально работают. Ну и к тому же интерфейс с вырвиглазной цветовой схемой не для моего зрения. Главное, конечно, от жадности — не хочется оплачивать «воздух» наглым халявщикам, — чувствуешь себя лохом.

Лень — двигатель прогресса

Почему от лени? Ну потому что ИИ я активно пользовался, конечно браузерными разными, но это работа копипастером. Закинь файл, напиши задание. Или закинь кусок кода, напиши задание. Закинь файл или кусок кода, который он попросит, потом копируй это из чата, вставляй в живой код. В общем, это довольно-таки быстро надоедает, и невольно задумываешься о том, чтобы как-то не быть прокладкой между блокнотом и чатом в браузере.

Первая мысль же, естественно, была — REST API, автоматизировать это дело. Кое-что сделал на PHP, благо, что куча виртуальных серверов на компьютере крутится, и что-то за полчаса там сделать для меня проблем не было. Но это как бы тоже неинтересно, это всё равно оставался копипастером. Поэтому и обратил свой взгляд на свой обычный рабочий инструмент — NetBeans, к которому, в общем-то, вполне можно делать и плагины. Поэтому как бы тему «дай файл, скопируй код» — так это, ребята, договаривайтесь между собой сами: «вот тебе ведро, вот тебе корова».

Глаз да глаз

Ну, сказано — сделано. Замутил сперва чат… Ну, там со своими смешариками, конечно, — не без этого.

Естественно, одного чата стало мало. Решил ограничиться точечными патчами, потому что знаю я фокусы ИИ уже: «Плавали — знаем». Это обязательно деградирующий с каждой правкой код сделает, накидает там кучу мусора, ещё умудрится половину полезного выбросить при этом. Так что надо внимательно следить за LLM, что она там делает, проверять код. Ну и, естественно, за всем не уследишь, поэтому автоматический бэкап на каждый чих. Ну так вот.

План — наше всё

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

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

Лекарство от склероза

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

Ну поэтому сам Бог велел ту же систему автоматически встроить и в свою программулину. Ну и чтобы самому не писать, пускай искусственный интеллект эти заметки сам ведёт — за что его обругали, что можно делать, что нельзя делать или за что его похвалили. Общий локальный дневник по самому пользователю. Ну и по каждому проекту, соответственно, тоже автоматические заметки.

Разовый инструктаж

Ну и опять-таки — куча файлов-тренеров, витрина, список: какой от чего, в каком случае модель должна дёргать, смотреть инструкцию. Это опять-таки всё же от той же лени — то есть настроил окружение, настроил документацию, ну и потом работа происходит так: «Сделай-ка мне вот эту вот хероту» — и пошёл курить, или чай пить, или спать. То есть искусственный интеллект и IDE цикличными итерациями друг с другом сами договариваются. LLM смотрит, что есть, если что-то не хватает — смотрит, чего ещё есть, запрашивает списки файлов, запрашивает тренера. В общем, общаются они с IDE до тех пор, пока моё вмешательство не понадобится, только тогда это всё останавливается. Ну или уже ответ готовый — прийти, посмотреть, проверить код, нажать кнопку применить правки. Такая вот я ленивая жопа.

Коллективный разум

Собственно, ещё на крайней работе была такая идея: как синхронизировать отдел разработки по задачам без каких-то там дорогостоящих игрушек. Банально через Git, которым мы постоянно пользовались. Те же файлы-тренеры переносить через Git. Это, надо сказать, тоже искусственный интеллект подсказал идею — хранить задачи в плоском списке, чтобы оно через Git как текст синхронизировалось: какая задача у кого, в каком она состоянии. Ну, на работе эту идею не оценили…

А для себя в программе, в общем-то, так и сделал. Идея была ещё в чём: более сильные программисты, ну или тот, кто пользуется какими-то дорогостоящими умными моделями — неважно, разработчики этих тренеров… Мысль такая: каждому новому программисту объяснять, что да как, чего делать нельзя, чего можно, — задалбывает. Дело не в том, слабый он или сильный, просто пришёл новый, который не в курсе системы, и ему надо всё объяснять каждый раз по каждой задаче, отвечать на вопросы. А так у тебя список инструкций: чего не вкуриваешь — спроси у LLM, найдёт и ответит. Снова-таки лень-матушка. Ну и природная вредность, конечно, и язвительность.

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

Что дальше

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

Посмотреть и пощупать:

  • GitHub: github.com/alexCRAZY74/Sparky

  • Готовый .nbm пакет лежит в Releases (ставить через Tools → Plugins → Downloaded, требуется JDK 21 с JavaFX/WebView, например Liberica JDK Full).

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев