
Агент Copilot Swuns Dev с точностью кода 95% в проекте ASP.Net8
20 июня 2025 г.После появления агента GitHub Copilot я решил попробовать его в своем реальном проекте ASP.Net8. Я попробовал вспомогательное кодирование и произвел 5,300 строк кода, из которых 95% было получено. Существует очень, очень большой качественный прогресс в удобстве использования этой версии по сравнению с версией, которую я попробовал 3 месяца назад.
1 реальный проект в VS2022
Я работаю над разработкой приложения C#/. Net8/ASP.NET, которое теперь имеет около 123 000 строк кода (SLOC), в Visual Studio 2022.
Окружающая среда: есть:
- Visual Studio 2022, 17.14.5
- GitHub Copilot (GHC). Лицензия Copilot Pro+
- Агент режим, GPT-4O, GPT-4.1, Claude 3.7 Сонет
- C#/. Net8/ASP.NET/JavaScript/jQuery/HTML/CSS/Bootstrap/SQL-Server
2 Попытка GitHub Copilot
2.1 март 2025 года
Сначала я серьезно попытался использовать GitHub Copilot (GHC) в своем проекте вМарт 20025 г., и я подробно описал результаты в статье [1]. Я нашел этоПрактически бесполезно, за исключением коротких фрагментовПолем
2.2 июня 2025 года
После появления агента Github Copilot я решил попробовать еще раз. Это описано в [2]. [3], [4], [5]. Это показало, что касаетсяХороший инструмент для клонирования и генерации шаблона
2.3 Сравнение
Я был эгоистичен; Меня просто заинтересовалоНасколько полезен этот инструмент Gen-AI для моей работы проектаПолем Мне было все равно, называли ли они это «режим чата» или «режим агента»; Я просто хотел посмотреть, что это может сделать для меня и моего проекта.
3 Проектная работа выполнена
3.1 Работа с помощью GHC Assistance
- В моем проекте я использовал помощь GHCДобавить около 5,300 строк кода, из которых генерируется 95%GHC. (Измеряется инструментом Metrics Metrics Visual Studio).
- Все, что было сделано в новом режиме агента
- Это все еще было задачей, тщательно выбранным для GHC, в том смысле, что он основан на шаблонах. Он должен был только клонировать код и адаптировать его из объекта учетной записи к организации контракта.
- Поскольку это былоЗадача на основе шаблонов, тщательно выбранная для GHCЯ до сих пор не уверен в удобстве использования для генерации общего кода для совершенно новых методов/функций. Должен быть проверен в первую очередь.
3.2 Вещи, которые я сделал вручную
- Посмотрено, что у него были проблемы с поиском и созданием Razor .cshtml файлов. Поэтому я создал пустые файлы с правильными именами в правильном месте и позволили GHC заполнить контент
- Похоже, он не мог добавить новые строки в файлы .resx. Но он создал имена строк в коде. Я добавил правильные 4 языковые строки в .resx
- Для простых кнопок HTML здесь и там легче добавить, чем написать командную строку
- Перемещенный код/методы, немного реорганизованный по своему вкусу
- Некоторые сложные выражения EF-Linq я изменил вручную. Проще, чем объяснить это в командной строке
- GHC имеет тенденцию опускать C# комментарии, и мне нравятся мои комментарии, поэтому я добавил/скопировал их вручную
3.3 Перспектива программиста
- Я был эгоистичен; Меня просто заинтересовалоНасколько полезен этот инструмент джина-ай для моей работы проектаПолем Мне было все равно, называют ли они это «режим чата» или «режим агента», именно то, что он может для меня сделать
- В этой версии GHC,Синтаксические ошибки очень редки, но было несколько логических ошибок.
- ЭтоНемного ограничение нас, людей, чтобы рассмотреть все изменения, если изменения распространяются по слишком многим местамПолем Я отказался от всего этого, даже если это может быть в порядке. Я заставляю GHC сделать работу снова
- Я не вижу, чтобы роль программиста исчезала, она станет больше на более высоком уровне, ведя и проверяя работу Gen-AI
- яИдите медленно и просмотрите каждую строку сгенерированного кодаПолем Медленно в обзоре, но в целом экономит время из -за меньшего количества дефектов.
- Итак, в основном этоGenerate-Review-Drop-Generate-Review-Accept Cycleкак рабочий процесс.Обзор - это бремя для людей и требует значительных усилий, потому что вы читаете чужой код, но я просто не хочу ничего принимать в свой репозиторий, который я не читал и понял.
- Это немного ограничение для нас, людей, чтобы рассмотреть изменения. Эта GHC может генерировать 200 строк действительного кода каждые 10 минут, но я не могу прочитать и понять этот код так быстро. Есть такжеПоявление человеческой усталости, вы устаете от чтения и просмотра сгенерированного кода целый деньПолем
- Это на самом делеЧувствует (на эту меньшую задачу, основанную на полученных результатах), немного похожая на человека -коллеги, не сразу же ее не выясняет, поэтому вам нужно больше объяснять детали, он делает качественную работу, но он не делает именно то, что вы просили, и делает некоторые вещи по -своему, а иногда и более умно, что вы думаете, что это будетПолем
- Основываясь на модификациях GHC, сделанном в коде моего исходного шаблона C#/CSHTML 4 файлов, я былСпособен следовать «как думает GHC», и это думает как хороший программистПолем
- Похоже, что у вас есть компетентный коллега, который получает от вас инструкции, и вы можетеделегировать работу с ним/ейПолем
- Команды в GHCв практическиестественный язык, Никакой инженерной инженерии «псевдонауки» не требуется, я спонтанно перестал использовать # для маркировки имен файлов, и все это сработало. Я простоРазумно объясните, как я бы с каким -то другим разработчикомв электронном письме.
4 странное поведение GHC - вероятно, ошибки
Кажется, в продукте все еще есть ошибки. ПростойVS2022/GHC перезагрузки время от времени выгодныПолем
Я работал над некоторым простым HTML и дал задачу GHC, чтобы добавить немного JavaScript, иGHC вещь внезапно была такой глупойПолем В течение часа я менял разные LLM, он говорил мне, что он добавил JS в код, и я ничего не видел или просто незаконченные фрагменты. Я думал, почему это может сделать это сложные задачи, и не может добавить всего 30 строк JS? Мне потребовался час, чтобы выяснить. Все этоисчез, когда я перезапустил VS2022Полем Кажется, что автоматизация в режиме агента где -то застряла; Это было не чтение или написание файлов. Похоже, что GHC сохраняет некоторые файлы TMP, где он помнит свою работу. Некоторая коррупция файла где -то. Этоначал работать хорошо после перезапускаПолем
5 интеллектуальная собственность и авторские права
Я заметил, что в момент времени GHC -агентзагружен 750 исходных файлов моего проектаПолем Это было что -то, пытаясь что -то найти или узнать о проекте. Он учится на моем коде? Итак, если я работаю с GHC, весь мой код является открытым исходным кодом?
Например, я работаю над конкретным банковским протоколом ABCD. После 2 недель с GHC он практически загрузил все мои исходные файлы. Он научился и запомнил все это?
Что, если через месяц какой -то другой пользователь, где -то просит GHC внедрить аналогичное приложение с банковским протоколом ABCD? Этот GHC может, через несколько минут создать целое приложение, основанное на том, что он узнал из моего исходного кода. И, конечно, это может легко сделать его неузнаваемым/отличающимся от моего исходного кода.
Где мойправовая «интеллектуальная собственность» и «авторские права»? Вы понимаете идею.
Кто может гарантировать, что эти компании ИИ не ведут себя как пираты? Они уже утверждают, что использовали весь текст в Интернете ([7]), а их системы все еще «голодны».
6 ЗАКЛЮЧЕНИЕ: Видение - это вера
Я был отличным скептиком, с веской причиной. Маркетинг по ИИ очень сильный, иГенеральные директора Rock-Star, как правило, переоценивают, чтобы продавать продукты и акции своей компанииПолем Примером является автономный драйв Теслы, обещанный в декабре 2015 года ([6]).
Я был оченьразочарован в версии GHC с марта 2025 года. Он не выглядел практически пригодным для использованияПолем Количество синтаксических ошибок и галлюцинированного кода было настолько большим, что оноТребуется огромная ручная переделкаПолем Кроме того, было много галлюцинированных свойств и методов, что означает, что GHC не изучает другие файлы проекта, просто работая над одним.
Напротив,Версия GHC с июня 2025 года практически без синтаксических ошибокПолем Галлюцинированные методы и свойства исчезли, что означает, что GHC теперь читает (ряд) исходных файлов проекта для разрешения зависимостей.Поставлен сгенерированный код, но это может иметь логические ошибки. GHC сейчасдовольно полезно для практических проектовПолем
Прогресс в качестве GitHub Copilot за 3 месяцас марта 2025 года по июнь 2025 года многоБольше, чем мы обычно видимДля программных продуктов. Если он продолжает развиваться в таком качестве ... ну, к концу года у нас будет очень умный помощник по коду.
Итак,Версия GHC с июня 2025 годаначинает выглядеть так, о чем говорили все эти медиа -личности,Замена для программистов младшего/среднего уровня([8]). Я начинаю видеть основу для этого прогноза.
7 Список литературы
[1] Github Copilot (Gen-AI) полезен, но не очень хорош (март 2025 г.)
https://markpfelf.com/2717/github-copilot-gen-ai-is-helpful-but-not-great-march-2025/
[2] Агент Github Copilot выглядит многообещающе - часть 1 (июнь 2025 г.)
https://markpfelf.com/2744/github-copilot-agent-looks-promising-june-2025/
[3] Агент Github Copilot выглядит многообещающе - часть 2 (июнь 2025 г.)
https://markpfelf.com/2746/github-copilot-agent-looks-promising-part2-june-2025/
[4] Агент Github Copilot выглядит многообещающе - Часть3 (июнь 2025 г.)
https://markpelffferm.com/2748/github-copilot-agent-looks-promising-part3-june-2025/
[5] Агент Github Copilot выглядит многообещающе - часть 4 (июнь 2025 г.)
https://markpfelf.com/2750/github-copilot-agent-looks-promising-part4-june-2025/
[6] Есть очень простой образец для разбитых обещаний Элона Маска
https://www.wired.com/story/theres-aivery-simple-pattern-to-elon-musks-rkenge-promises/
[7] Генеральный директор Microsoft AI говорит, что почти весь контент в Интернете - честная игра для обучения искусственному интеллекту
https://www.entrepreneur.com/business-news/microsoft-ai-ceo-anything-on-open-web-fair-use-for training/477030
[8] Цукерберг утверждает, что ИИ заменит разработчиков среднего уровня, останавливая работу в Корее
https://biz.chosun.com/en/en-it/2025/01/13/gljeip6pgrhifc77ib6q747dcq/
Оригинал