А что, если LLM-ассистент в код-ревью будет предлагать тесты

На BigTechNight Денис Чен, руководитель группы разработки X5 Digital, поделился классным кейсом

Представьте: пулл-реквесты проходят так: «поправь это», «тут можно лучше», «давай перепишем»… А что, если LLM-ассистент сразу в код-ревью будет предлагать тесты?

Круто!? Пересказываю от идеи до продакшена

1️⃣ Все началось с простой боли – разработчики заходят в новый репозиторий и натыкаются на хаос: нет тестов, код страшный, и приходится разбираться в нём с нуля.

В X5 (да по факту во всём бигтехе) стоимость владения системой часто запредельная из-за отсутствия документации и тестов. Без тестов разработка становится безумно дорогой – особенно поддержка и инциденты. Страх что-то сломать парализует изменения.

2️⃣ Когда получили первый фидбек, поняли: результат хороший, пора в прод. Но возникли вопросы: – Какая LLM лучше для кода? – Как оценить релевантность тестов? – Нужна ли дообученная модель или хватит pretrained?

Выяснилось, что все модели бенчмаркить нужно по-разному. Для каждой задачи своя метрика – для генерации текста одна, для кода другая.

Ребята провели 30 экспериментов, протестировали топовые модели и выбрали Code Llama 7B – за счёт prompt engineering и очистки данных результат вырос на 30% по нашим метрикам.

3️⃣ Что в продакшене?

Сейчас работающий ассистент, который: – генерирует unit-тесты под разные фреймворки – делает code review с конструктивными предложениями – дорабатывает тесты по уточнениям – интегрирован в CI/CD и workflow всех команд

Цифры: 120 активных пользователей из ~300 инженеров (40% adoption rate), ~500 тестов в месяц, время генерации – 5 секунд.

4️⃣ Практические выводы

– Решайте реальную проблему, а не гонитесь за технологией – Первый прототип не вечен – он нужен только для проверки гипотезы – Бенчмарки обязательны: без них вы движетесь вслепую – Нормализация данных – 70% работы, ML – лишь 30% – Продуктизация важнее библиотеки: люди любят готовые решения

LLM не решает все проблемы. Это просто инструмент, довольно ограниченный. Если код изначально плохой, модель сгенерирует плохие тесты. X5 не пытается решать это через процесс: матрицы компетенций и культуру кода.

В итоге получился не просто «AI-инструмент», а полноценная платформа, которая помогает команде писать лучший код.

Пишу в телеге: https://t.me/anatolysimkin

#x5tech #meetups #ПосмотрелЗаВас #AI #LLM #promptengineering #unitTests #codeReview #ci_cd #DevOps #BigTech #X5Digital #workflow#ArtificialIntelligence #MachineLearning #SoftwareDevelopment #DevOps #TechInnovation #Automation #CodeReview #DigitalTransformation #AI #LLM