TG Telegram Group & Channel
LLM под капотом | United States America (US)
Create: Update:

Как разрабатывать большие проекты с кучей зависимостей?

Я сейчас пишу вторую версию своей учебной платформы при помощи OpenAI Codex. Эта версия похожа на ту, на которой расположен мой курс про AI Ассистентов, но в нее хочется добавить больше фич: удобное управление командными пакетами, больше интерактивных задачек и примеров, тесты для самопроверки.

95% кода пока написаны OpenAI Codex. Но есть нюанс.

Сначала я дам контекст и кратко расскажу о проекте, а потом опишу процесс AI+Coding.

О проекте

Архитектуру и стэк проекта я оптимизировал для удобства разработки AI (сам я бы на TS/JS в жизни не стал писать):

- Frontend - Vue.js SPA
- Backend - Express.js, tRPC, SQLite (ибо тесты в контейнере можно запускать)
- Shared - общие для FE/BE типы и контракты на TypeScript/Zod. Ключевая терминология (DDD) кодифицирована там же.

Конкретные библиотеки выбирал при помощи ChatGPT, которому ставил задачи выбирать наиболее стабильные и скучные решения (читай "они точно попали в обучающую выборку OpenAI").

Серверная обвязка - NixOS. Есть интеграции со страйпом, почтой. End-to-end тесты сделаны на playwright. Пришлось повозиться, пока встраивал их в Codex, но теперь он может сам запускать весь стэк, открывать браузер и прогонять тесты перед сочинением Pull Request.

Легковесные очереди. Виртуализация sandboxes будет через FirecrackerVM.

Continuous Integration / Deployment - Github Actions. После того, как я принял Pull Request, GA автоматом выкатит все на DEV stage.

Процесс разработки

Процесс разработки работает аналогично работе команд над большими проектами:

- я ставлю задачу
- AI предлагает решение
- я просматриваю и одобряю
- AI кодит и отправляет в Git

Этот процесс "обрастает” артефактами и правилами, делающими его прозрачным и предсказуемым для людей (меня), и для LLM-ок в команде.

1️⃣ У меня есть архитектурная документация и описание модулей (README, AGENTS, CONTEXT). Это все живет рядом с кодом, я стараюсь поддерживать это в актуальном состоянии.

2️⃣ При постановке задачи я первым делом прошу систему составить детальный план реализации (implementation plan), включая зависимости и тесты. Не писать код, а просто подумать. Если задачка сложная - явно укажу документы, на которые стоит обратить внимание, зависимости.

Кстати, ChatGPT reasonong (не Codex) может тоже работать с Github. Это иногда упрощает работу с планами.

3️⃣ План реализации - это единственный источник правды. Я его проглядываю глазами. При необходимости отправляю его в другую сессию и прошу проверить на логические нестыковки.

Это очень удобно, т.к. все изменения в одном документе, они пока еще не “размазаны” по коду.

4️⃣ Если план реализации проходит мой review, то я его отправляю на исполнение. Потом план можно выкинуть или скопировать в Pull Request на память.

Можно не жалеть AI+Coding агентов и гонять в хвост и в гриву - всегда запускать сразу несколько параллельных задач, чтобы потом выбрать наилучший вариант.

Полет пока нормальный. Это не вайб кодинг, а рутинная работа архитектора/лида. Задачи распараллеливаются, но думать - надо. При этом результат предсказуем, а весь код таки пишет AI.

Ваш, @llm_under_hood 🤗

Как разрабатывать большие проекты с кучей зависимостей?

Я сейчас пишу вторую версию своей учебной платформы при помощи OpenAI Codex. Эта версия похожа на ту, на которой расположен мой курс про AI Ассистентов, но в нее хочется добавить больше фич: удобное управление командными пакетами, больше интерактивных задачек и примеров, тесты для самопроверки.

95% кода пока написаны OpenAI Codex. Но есть нюанс.

Сначала я дам контекст и кратко расскажу о проекте, а потом опишу процесс AI+Coding.

О проекте

Архитектуру и стэк проекта я оптимизировал для удобства разработки AI (сам я бы на TS/JS в жизни не стал писать):

- Frontend - Vue.js SPA
- Backend - Express.js, tRPC, SQLite (ибо тесты в контейнере можно запускать)
- Shared - общие для FE/BE типы и контракты на TypeScript/Zod. Ключевая терминология (DDD) кодифицирована там же.

Конкретные библиотеки выбирал при помощи ChatGPT, которому ставил задачи выбирать наиболее стабильные и скучные решения (читай "они точно попали в обучающую выборку OpenAI").

Серверная обвязка - NixOS. Есть интеграции со страйпом, почтой. End-to-end тесты сделаны на playwright. Пришлось повозиться, пока встраивал их в Codex, но теперь он может сам запускать весь стэк, открывать браузер и прогонять тесты перед сочинением Pull Request.

Легковесные очереди. Виртуализация sandboxes будет через FirecrackerVM.

Continuous Integration / Deployment - Github Actions. После того, как я принял Pull Request, GA автоматом выкатит все на DEV stage.

Процесс разработки

Процесс разработки работает аналогично работе команд над большими проектами:

- я ставлю задачу
- AI предлагает решение
- я просматриваю и одобряю
- AI кодит и отправляет в Git

Этот процесс "обрастает” артефактами и правилами, делающими его прозрачным и предсказуемым для людей (меня), и для LLM-ок в команде.

1️⃣ У меня есть архитектурная документация и описание модулей (README, AGENTS, CONTEXT). Это все живет рядом с кодом, я стараюсь поддерживать это в актуальном состоянии.

2️⃣ При постановке задачи я первым делом прошу систему составить детальный план реализации (implementation plan), включая зависимости и тесты. Не писать код, а просто подумать. Если задачка сложная - явно укажу документы, на которые стоит обратить внимание, зависимости.

Кстати, ChatGPT reasonong (не Codex) может тоже работать с Github. Это иногда упрощает работу с планами.

3️⃣ План реализации - это единственный источник правды. Я его проглядываю глазами. При необходимости отправляю его в другую сессию и прошу проверить на логические нестыковки.

Это очень удобно, т.к. все изменения в одном документе, они пока еще не “размазаны” по коду.

4️⃣ Если план реализации проходит мой review, то я его отправляю на исполнение. Потом план можно выкинуть или скопировать в Pull Request на память.

Можно не жалеть AI+Coding агентов и гонять в хвост и в гриву - всегда запускать сразу несколько параллельных задач, чтобы потом выбрать наилучший вариант.

Полет пока нормальный. Это не вайб кодинг, а рутинная работа архитектора/лида. Задачи распараллеливаются, но думать - надо. При этом результат предсказуем, а весь код таки пишет AI.

Ваш, @llm_under_hood 🤗


>>Click here to continue<<

LLM под капотом




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)