Обновить

Привет, Хабр!

Я навайбкодил Вам систему управления отчетами на 100500 Jupyter ноутбуков

Расскажу историю о том, как я решил проблему с хаосом в Jupyter-отчетах и создал систему juport (Jupyter Report System) ссылка на GitHub. А заодно поделюсь мыслями о том, как меняется разработка в эпоху AI-ассистентов.

Проблема: 100500 отчетов и никакого порядка

У меня накопилось огромное количество отчетов, сделанных в Jupyter Lab. Каждый — отдельный файл с кодом, паролями и прочей «кухней».

Главные проблемы:

  • Безопасность. Нельзя просто так поделиться отчетом с руководством или бухгалтерией, потому что там есть доступы к базам и код.

  • Рутина. Нет централизованного места для запуска отчетов, автоматизации по расписанию и единого интерфейса для просмотра.

  • Хаос. Все результаты разбросаны по папкам, и чтобы найти нужный Excel-файл, приходилось долго копаться.

Концепция решения

Нужно было что-то, что позволит разрабатывать отчеты в привычном Jupyter Lab, а потом автоматически запускать их, генерировать чистые HTML-версии без кода и собирать все артефакты в одном месте.

Решение: juport — система управления отчетами

Я создал систему (ну как сам, навайбкодил), состоящую из двух компонентов:

  1. Jupyter Lab Sidecar. Это обычный Jupyter Lab в Docker-контейнере. Здесь разработчики пишут и тестируют отчеты, как привыкли.

  2. juport — система управления. Веб-приложение на Python, которое сканирует папку с ноутбуками. Оно позволяет запускать отчеты вручную или по расписанию, выполняет их в изолированном окружении, генерирует HTML-версии без лишней информации, собирает все артефакты (Excel, картинки) в одну табличку и предоставляет удобный веб-интерфейс. Авторизация — через LDAP.

Как это работает

Разработка отчета:

  1. Вы создаете ноутбук в Jupyter Lab.

  2. Пишете код, тестируете, сохраняете.

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

Запуск отчета:

  1. Заходите в веб-интерфейс juport.

  2. Видите список всех ноутбуков.

  3. Нажимаете «Запустить» или настраиваете расписание.

  4. Система выполняет ноутбук и собирает результаты.

Результат:

  • Чистый HTML-отчет без кода и паролей, доступный для просмотра.

  • Все Excel-файлы, картинки и PDF собраны в одном месте.

  • Удобный интерфейс для скачивания.

  • История выполнений и логи.

Как это сделано

Я не написал ни одной строчки кода сам. Все навайбкодил через Cursor с помощью промптов.

Да, именно так. Привыкайте. Такова реальность.

Андрея Карпатый говорил о том, что скоро разработка будет выглядеть совсем иначе. И он прав.

Мы, миллениалы, единственное поколение, которое разбиралось, как собрать компьютер с нуля. Бумеры были до бума ПК, а зумеры уже родились, когда все было готово. С кодом происходит то же самое. Через N лет опытные разработчики будут получать отличные результаты через промпты, потому что у них есть 20 лет опыта. Этот опыт — не знание синтаксиса, а понимание:

  • Архитектурных паттернов

  • Принципов проектирования

  • Торговых компромиссов

  • Потенциальных проблем

Именно поэтому те, кто шарит, получат отличный результат, а те, кто не шарит, получат «коричневую субстанцию».

AI-ассистенты — это не замена разработчикам, а инструмент, который многократно увеличивает нашу скорость. Опыт и понимание архитектуры становятся еще важнее. А новичкам будет сложнее, потому что им придется мотивированно изучать технологии, чтобы получать от нейросетей качественные вещи.

Выводы

  1. AI-ассистенты — это не замена, а инструмент.

  2. Опыт и понимание архитектуры становятся критически важными.

  3. Скорость разработки для опытных специалистов вырастет в разы.

  4. Новичкам придется приложить больше усилий для освоения профессии.

А как вы видите будущее разработки с AI? Делитесь в комментариях!

Теги:
Всего голосов 8: ↑3 и ↓5-1
Комментарии4

Путь к ИИ‑сингулярности

У нас было два репозитория неоттестированного вайб‑кода, семьдесят пять тяжеловесных SDD‑спецификаций, пять обмазанных смазкой харнессов, солонка, наполовину полная кастомных скиллов и забитых капслоком правил, с десяток дырявых MCP‑серверов, RAG‑база со свежевекторизованным Confluence, самодельная дощечка имаго‑кодинга и целая россыпь автономных агентов всех мастей, от безобидных автодополнялок до галлюцинирующих субагентов, ставящих пакеты со slopsquatting и втихаря сносящих боевые базы.

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

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

Нет ничего более беспомощного, безответственного и испорченного, чем IT‑команда, запустившая мультиагентный оркестр в режиме allow all.

Это критический (и слегка ехидный) обзор того, что произошло с разработкой последние пару лет.

Путь к ИИ‑сингулярности

Публикации