Агент Copilot Swuns Dev с точностью кода 95% в проекте ASP.Net8

Агент 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, где он помнит свою работу. Некоторая коррупция файла где -то. Этоначал работать хорошо после перезапускаПолем

Я заметил, что в момент времени 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/


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE