ИИ в Cursor написал мне бота по Minecraft за 10 минут и вот, что я понял..
Новый тренд последних недель – это активное тестирование ИИ моделей прямо в редакторах кода(IDE). Мне, как CPO, это направление очень интересно. Послушав пару подкастов и почитав несколько статей решил, что пора самому попробовать, как это работает.
Содержание
Зачем вообще тестировать ИИ-модели в IDE
Суть нового метода в том, что в отличие от обычной переписки в окне chatGPT, ИИ модель сразу имеет доступ ко всему коду проекта. Тем самым она получает максимальный контекст и будет учитывать все нюансы вашего кода и его структуру.
Выбор инструментов
В целом все звучит неплохо, но вопрос в том, какие редакторы и модели сейчас юзабельны? Из десятков новостных постов я понял, что последние и самые мощные ИИ модели это:
- Claude-3.7-sonnet (Anthropic) - вышла первой из этой тройки и уже обзавелась армией фанатов. Остальные модели сравнивают в первую очередь с sonnet 3.7
- Gemini-2.5-flash (Google) - последняя и очень быстрая модель гугла с т.н. reasoning - те возможностью строить цепочку рассуждений(у остальных моделей reasoning тоже присутствует)
- o3 (openAI) - последняя и, по отзывам, самая умная из вообще всех на данный момент ИИ моделей
Выбор редакторов тоже огромный, я выбрал те, который больше всего обсуждали в моей ленте(да, без Copilot и JetBrains Junie):
- Cursor (дает 500 запросов топ ИИ моделей в месяц за $20, дальше бесплатно, но используются модели по-проще)
- Firebase Studio (онлайн редактор - бесплатный и дает использовать Gemini-2.5-flash)
- Visual studio code с плагином Cline(дает $0.5 бесплатно попробовать sonnet 3.7 по API, дальше используй API той модели которая больше нравится)
Эксперимент есть эксперимент
Я хотел обойтись минимальными затратами и выбрал нишу с которой никогда не работал – тг канал с опросами по майнкрафту(вот он уже готовый), которые создаются автоматически, полностью без участия админов. Опрос – это картинка рецепта майнкрафт с 4мя вариантами ответа, что должно получится в результате:
Архитектуру продукта мне расписал ChatGTP-4o, дальше я двигался по ней, просто давая prompt-ы(тоже от 4o) уже в самих IDEшках.
Шаги(коротко):
- с одного из найденых тематических сайтов нужно взять данные по рецептам и перенести их в базу данных
- написать API которое в виде json будет отдавать обьект с url картинки рандомного рецепта и 4-мя вариантами ответа + правильный ответ
- написать бота, который принимает json опроса и взаимодействует с API telegram
Все было написано на php - на всякий случай взял знакомый стек, если вдруг прийдется что то посмотреть в коде(не пригодилось). Хостинг был самый дешевый, по сути php и MySQL, но если поискать можно было найти бесплатную альтернативу.
Начал я с Firebase Studio и неудачно – в первом же запросе он написал мне, что "Request contains an invalid argument". При этом не давая конкретной информации, что и где именно. В целом эта IDE только релизнулась и уверен, что все поправят в ближайшее время.
Этот же prompt я использовал в Cursor(o3) и VSC Cline(sonnet 3.7) и оба выдали рабочий результат без каких-либо ошибок или предупреждений.
Обе модели дальше принимали задачи на ру языке, все понимали, но ответные комментарии всегда давали на англ. В Cursor отдельно можно было принудительно задать контекст в виде какого-то файла или целого раздела:
В VSC Cline это можно было сделать текстом в самом запросе, что менее удобно, но зато при каждом запросе видно кол-во токенов которые использовались(а соответственно и цену задачи).
Результат
Основной вывод – это работает и это очень удобно. Весь процесс происходил быстро и плавно, количество погрешностей минимальное, а я, практически не влезая в код, получил рабочий продукт. Да, очень простой, но не тривиальный и за реальные 10 минут, Карл.
Да, есть момент, что нужно на каждом этапе проверять результат, тк ИИ пока еще умеет не проявлять инициативу, что бы улучшить финальный результат. Например, некоторые картинки в таблице были обернуты в тег <a> и, соответственно, в первый раз, их все проигнорировали. Но определенно реальность такова – кодеру нужно использовать ИИ-модели в своем IDE, если он еще этого не делает. Это сильно ускоряет работу при условии, что вы понимаете общую картину проекта и его архитектуру. Так же, при подобном взаимодействии с ИИ, важно декомпозировать задачи и тут претензия даже не к самим моделям. Чем сложнее поставленый таск, тем больше вероятность что то упустить самому менеджеру. Так что нужно разбивать задачи на более мелкие и выполнять каждую отдельно.
Еще
В процессе я нашел способ, как можно экономить токены в VSC Cline. Очень важно не скармливать ему большие документы, особенно, если это однотипно-структурированные данные, какой была моя таблица со всеми рецептами. В итоге мне даже хватило тех $0.5 из демо баланса, что бы собрать весь продукт.
В Cursor есть такой момент – если нужно прям совсем немного поправить код, то все равно будет использован один дорогостоящий запрос. Было бы хорошо сделать автоматическую проверку уровня задачи и использовать бесплатную модель для таких правок.