Robotics->python backend->computer vision->RnD team->GenAI->Lead универсал
И вот мы здесь
Post #33
1.02K
Предыдущее тут
3/5 пост =)
Среда-Четверг, 10+11=21ч
Был получен минимальный рабочий сценарий с файлами. Весь день посвящён структурированию бэка, разделению логики web бэкенда и аналитического бэкенда на разные сервисы, devops активностям, закладыванию моделей БД. Затянуты Mongo - основная БД, Minio - локальный S3 и Redis как БД коммуникации и шеринга состояний между сервисами
Моей ошибкой, унёсшей ~4 часа времени стала попытка сделать по-быстрому локальное хранилище вместо S3. ИИ запутался в папках и роутинг раздачи файликов не взлетел.
Нужно было сразу брать minio и на лету перепиливать S3 на S3 по сути. Пришлось отбросить/вырезать некоторое количество кода. Слава Git
Переработал LLM суммаризацию. Основная работа заключалась в вынесении конфига и ограждению курсора от попыток сменить схему SO с рабочей на нерабочую. В исходной кодбазе с неё всё было хорошо
На конец дня реорганизованный минимальный пайплайн работал на более стабильных и понятных основах, полностью собирался и обновлялся в докере. от легаси кода бэка и фронта осталось в лучшем случае 20%
Инсайты
- ИИ имеет свойство плодить кривые конфиги в разных местах. Это должно подвергаться контролю за счёт Rules, темплейтов проекта
- Нельзя вайбкодить сложную задачу. (вайбкод - не вдумываясь принимать изменения ИИ). С каждой следующей итерацией и уточнением, особенно если что-то не получается, ИИ заходит всё дальше в дебри и пишет всё более локальноориентированный структурно хреновый код
И это как будто бы базовое правило coding with AI. Ты должен вмешаться, проанализировать и выбрать корректный подход прежде чем ИИ затронет слишком многое. Возможно принять решение запустить всё с самого начала.
- Генеративный подход - когда создаёшь новый код над старым, в разы менее затратен с ИИ чем обратный, где нужно рефакторить/убирать излишки старого. Для меня, как человека, проще работать с существующим на изученной кодбазе
- ИИ затрагивает широкий набор изменений в рамках своей работы, часто работаешь над 2-3 параллельными задачами/направлениями изменений. Это осложняет классическую историю ведения гита. Очень важно регулярно уделять внимание регрессу и делать отсечки, которые пойдут коммитом в гит.
В курсоре можно откатываться на чекпоинты чатиков, но это не всегда работает и неудобно.
Уверенность, что я могу надёжно откатиться на рабочую версию - залог спокойной работы
Как итог, считаю, что мастхэв должен быть шаблон проекта, адаптированный под ИИ, где уже организована и тщательно описана желаемая организация проекта:
* Конфиги и их место
* Лучшие практики инфры вплоть до шаблонов докеров,
* Заложены примеры привычных схем, ролей, моделей.
* Подключены на уровне низкоуровневых адаптеров человекописные базовые внешние модули типа БД, web-сессий, сокетов и т.д.
* Продумана и заложена механика проброса зависимостей и централизованной инициализации модулей.
* Оно позволяет вносить изменения уже отсраиваясь от лучших практик, более точечно
ИИ склонен тупо херачить глобальные объекты и начинает творить лютую дичь как только ловит от этого сложности
На конец четверга, четвёртый физический день работы, уже проходили все базовые сценарии проекта, завязанные непосредственно на ЛК и обработку звуковых файлов. UI принял околофинальные очертания, вырисовалась более стройная организация и инфраструктурная обвязка. Проект билдился в докер и запускался на сервере
3/5 пост =)
Среда-Четверг, 10+11=21ч
Был получен минимальный рабочий сценарий с файлами. Весь день посвящён структурированию бэка, разделению логики web бэкенда и аналитического бэкенда на разные сервисы, devops активностям, закладыванию моделей БД. Затянуты Mongo - основная БД, Minio - локальный S3 и Redis как БД коммуникации и шеринга состояний между сервисами
Моей ошибкой, унёсшей ~4 часа времени стала попытка сделать по-быстрому локальное хранилище вместо S3. ИИ запутался в папках и роутинг раздачи файликов не взлетел.
Нужно было сразу брать minio и на лету перепиливать S3 на S3 по сути. Пришлось отбросить/вырезать некоторое количество кода. Слава Git
Переработал LLM суммаризацию. Основная работа заключалась в вынесении конфига и ограждению курсора от попыток сменить схему SO с рабочей на нерабочую. В исходной кодбазе с неё всё было хорошо
На конец дня реорганизованный минимальный пайплайн работал на более стабильных и понятных основах, полностью собирался и обновлялся в докере. от легаси кода бэка и фронта осталось в лучшем случае 20%
Инсайты
- ИИ имеет свойство плодить кривые конфиги в разных местах. Это должно подвергаться контролю за счёт Rules, темплейтов проекта
- Нельзя вайбкодить сложную задачу. (вайбкод - не вдумываясь принимать изменения ИИ). С каждой следующей итерацией и уточнением, особенно если что-то не получается, ИИ заходит всё дальше в дебри и пишет всё более локальноориентированный структурно хреновый код
И это как будто бы базовое правило coding with AI. Ты должен вмешаться, проанализировать и выбрать корректный подход прежде чем ИИ затронет слишком многое. Возможно принять решение запустить всё с самого начала.
- Генеративный подход - когда создаёшь новый код над старым, в разы менее затратен с ИИ чем обратный, где нужно рефакторить/убирать излишки старого. Для меня, как человека, проще работать с существующим на изученной кодбазе
- ИИ затрагивает широкий набор изменений в рамках своей работы, часто работаешь над 2-3 параллельными задачами/направлениями изменений. Это осложняет классическую историю ведения гита. Очень важно регулярно уделять внимание регрессу и делать отсечки, которые пойдут коммитом в гит.
В курсоре можно откатываться на чекпоинты чатиков, но это не всегда работает и неудобно.
Уверенность, что я могу надёжно откатиться на рабочую версию - залог спокойной работы
Как итог, считаю, что мастхэв должен быть шаблон проекта, адаптированный под ИИ, где уже организована и тщательно описана желаемая организация проекта:
* Конфиги и их место
* Лучшие практики инфры вплоть до шаблонов докеров,
* Заложены примеры привычных схем, ролей, моделей.
* Подключены на уровне низкоуровневых адаптеров человекописные базовые внешние модули типа БД, web-сессий, сокетов и т.д.
* Продумана и заложена механика проброса зависимостей и централизованной инициализации модулей.
* Оно позволяет вносить изменения уже отсраиваясь от лучших практик, более точечно
ИИ склонен тупо херачить глобальные объекты и начинает творить лютую дичь как только ловит от этого сложности
На конец четверга, четвёртый физический день работы, уже проходили все базовые сценарии проекта, завязанные непосредственно на ЛК и обработку звуковых файлов. UI принял околофинальные очертания, вырисовалась более стройная организация и инфраструктурная обвязка. Проект билдился в докер и запускался на сервере
- ❤ 11
- 🔥 4
- 👍 2
- 👎 1
- 🤝 1

