Ну что, вышла новая модель DeepSeek, которая тут же стала угрозой ChatGPT, обвалила акции NVidia, запустилась на Raspberry Pi, спасла котенка и покормила бабушку.
Решил её попробовать и я.
Контекст:
У нас на работе многое (и многие) работает через питоновсикй сервер на dash. Он хорош. Но, как говорил поручик - есть нюанс.
У него есть debug режим, который позволяет обновлять его удобно. Он запущен на удаленном сервере от имени сервисного аккаунта и раньше я заходил через удаленный рабочий стол, делал там свои вещи и перезагружал его. А потом оказалось, что есть варианты и поудобнее. Я расшарил сам себе папку в сеть и с рабочего ноута захожу теперь в папку, меняю файлы, если они мне нужны и он сам перезагружается сам и перезагружает все запущенные страницы, показывая свежее. Огонь же.
Я так и работал до тех пор, пока не сделал целую кучу классных вещей. Теперь разные страницы отчета запущены на 13 рабочих машинах, где люди работают 24*7, на 5 огромных мониторах, которые показывают DMS и еще есть кучка коллег, которые зачем-то работают чуть ли не с 8 часов. Понятное дело, теперь, когда я что-то меняю, не только лишь моргает у всех, но и еще сбрасываются всякие фильтры-поля. Так что, делать так нужно пореже.
Так что теперь у меня есть dev и work версии. Dev, которая очень часто падает и так и должно быть и work, которую я стараюсь не трогать.
Но всё еще есть момент, когда мне нужно поменять файл в одной папке, во второй удалить, в третьей заменить файлы 2 и 4. И каждое такое изменение - перезагрузка и куча подключений к базам данных.
А тут - снова новости про синего кита. Вернулся-таки, полосатик.
Посидел и подумал, а вот что если...
Мне нужно было приложение, которое бы анализировало рабочую папку и составляло там список файлов, их дату изменения. А потом анализировало dev папку и составляло такой же список. А потом сравнивало их и выводило список файлов, которые в dev папке есть, а в wokr нет или в обеих есть, но в dev файл свежее.
И чекбоксы, чтобы выбрать нужные файлы. И кнопка "сделать красиво", которая бы делала красиво. И еще кнопка "ой" для отмены глупостей.
И стало мне интересно. используя только кита и не заглядывая в документацию, сможем ли мы сделать приложение, с гуёй и кнопками, которые мне нужны. Короткий ответ: да. Чуть длиннее: строго говоря нет, документацию таки пришлось открыть, скопировать оттуда кусок примера и отдать его чату, но в целом - получилось.
Всего каких-то пару раз по чуток времени и несколько десятков сообщений в стиле "измени предыдущий код, чтобы он..." и получилось вот это:

Кнопка "анализ", собственно, анализирует, обе папки, в середину выкладывает список файлов в рабочей папке, слева - dev, звездочка означает, что файл в рабочей отличается или отсутствует в рабочей папке. Ставим галочку на то, что нужно обновить, приложение в папке с бекапами создает папку с датой-временем, перекладывает туда старые версии (если были), сохраняя иерархию, а потом копирует файлы из dev в work.
Сейчас доделаю, чтобы права был список папок файлов и папок, тоже с галочками и кнопка "Вертать взад", которая из бекапной папки возвращает файлы в рабочую и огнище инструмент готов.
На фон только танцующую упячку поставить и интерфейс сделать нормально двуязычным, русско-олбанским.
Сравнивая с ChatGPT,
Я пробовал сделать тоже самое с ChatGPT. Сначала объяснял структуру кнопок, говорил нарисуй окошко, проверял, что код работает, говорил что поправить, проверял код и т.д. У ГПТ всё сыпалось примерно после 3-4 итерации. Вместо того. чтобы вывести конкретную информацию в конкретное окошко - он зачем-то полностью прекраивал приложение и убирал левый и правый блоки, хотя трогать их никто не просил.
Кит, не то, чтобы всегда рабочий код давал. например в планах было использовать не звездочку, а розовый фон у строки, но как я понял это делать как-то очень сложно, кит давал исключительно нерабочее, а мне было некогда разбираться.
Выводы.
Кит с задачей справился лучше ГПТ.
Говорить, что кит лучше, основываясь на одной задаче - странно и делать я так не буду.
Кит умеет вещи и не заблокирован на работе, так что станет моим помощником и по работе, хочет он того или нет.
Приложение получилось клёвое =)