Copilot X rozwijany przez GitHub stanowi kolejny krok w implementacji sztucznej inteligencji do procesu tworzenia oprogramowania. Wykorzystuje najnowszy model GPT-4 firmy OpenAI, oferując bardziej spersonalizowane doświadczenie dla programistów. Narzędzie przeistacza się z autokompletowania kodu w pełnoprawnego asystenta AI, dostępnego na każdym etapie cyklu życia rozwoju oprogramowania.
Copilot X wprowadza też szereg innowacyjnych funkcji. GitHub Copilot Chat oferuje doświadczenie podobne do ChatGPT bezpośrednio w edytorze, integrując się z VS Code i Visual Studio. Rozpoznaje on wpisany kod, komunikaty o błędach i jest głęboko osadzony w IDE. Umożliwia analizę i wyjaśnienia bloków kodu, generowanie testów jednostkowych, a nawet proponowanie rozwiązań błędów.
Inną ważną cechą jest Copilot dla Pull Requests, który automatycznie wypełnia tagi i opisy zmian w kodzie. Również korzysta z modelu GPT-4. Dodatkowo Copilot X obejmuje narzędzie do dokumentacji, Copilot for Docs, które używa interfejsu chatu do generowania odpowiedzi AI na pytania dotyczące dokumentacji, w tym języków programowania, frameworków i technologii. GitHub rozpoczyna od dokumentacji dla React, Azure Docs i MDN, planując rozszerzenie tej funkcjonalności na dokumentację wewnętrzną organizacji.
Rozwinięcia w Copilot X podkreślają znaczący postęp w logicznym rozumowaniu i generowaniu kodu, a także otwierają nowe możliwości dla programistów i zmieniają sposób, w jaki podchodzą do tworzenia oprogramowania.
GitHub Copilot X zmienia zasady gry
Copilot X (tutaj możesz się zarejestrować) oferuje znacznie więcej niż tylko automatyczne uzupełnianie kodu. Jego zdolności obejmują generowanie opisów dla pull requests, odpowiedzi na pytania dotyczące dokumentacji oraz wsparcie na każdym etapie cyklu życia rozwoju oprogramowania. To, co kiedyś było wyłącznie narzędziem do autokompletowania kodu, teraz przekształca się w wszechstronnego asystenta AI, dostępnego w całym procesie programowania.
Według opinii użytkowników Copilot X pomaga programistom pracować szybciej, tworzyć lepszy kod i przeprowadzać lepsze testy przed implementowaniem nowego kodu na produkcji. Copilot X uczy się także stylu programowania użytkownika i dostarcza kontekstowo świadome sugestie oraz rozwiązania problemów z kodem. Niemniej jednak istnieją także uwagi dotyczące jego ograniczeń – Copilot X czasami może generować niepoprawny kod, a jego efektywność zależy od wiedzy i umiejętności samego programisty.
Copilot X wprowadza tym samym zmiany w zasadach tworzenia oprogramowania, przekształcając tradycyjne podejście do programowania w proces wspomagany przez AI. Zwiększa produktywność, poprawia jakość kodu i przyspiesza proces tworzenia oprogramowania. Wpływ Copilot X na branżę oprogramowania jest porównywalny do wprowadzenia chmury obliczeniowej, co podkreśla jego znaczenie jako narzędzia kształtującego przyszłość programowania.
Kontrowersje wokół Copilota
Rozwój GitHub Copilot X wywołuje kontrowersje i stawia przed programistami nowe wyzwania, szczególnie w kontekście praw autorskich i licencji. Głównym punktem sporu jest sposób, w jaki Copilot X, jako narzędzie oparte na AI, wykorzystuje publicznie dostępne repozytoria kodów do generowania sugestii kodowania.
W listopadzie 2022 roku rozpoczęto zbiorowy pozew przeciwko Microsoft, GitHub i OpenAI. Głównym zarzutem jest naruszenie praw twórców oprogramowania open-source, na których kodzie trenowany jest Copilot. W pozwie czytamy, że narzędzie wykorzystuje materiały objęte licencją bez odpowiedniego przypisania, powiadomienia o prawach autorskich czy przestrzegania warunków licencji.
Matthew Butterick, inicjator pozwu, stwierdził, że “zamknięty ogród Copilota jest przeciwny i toksyczny dla open source”. Alex J. Champandard, założyciel Creative.ai, podziela to zdanie, zauważając, że GitHub mógłby uniknąć tych problemów, respektując licencje i uzyskując zgodę na ich wykorzystanie.
GitHub odpowiedział na te obawy, wprowadzając Copilot for Business, który zawiera zarządzanie licencjami i możliwości zarządzania na poziomie organizacji. GitHub zaznacza również, że w Copilot for Business nie będzie przechowywać, udostępniać ani zachowywać fragmentów kodu, niezależnie od tego, czy pochodzą one z repozytoriów publicznych, prywatnych, poza GitHubem czy z lokalnych plików.
Mimo tych kontrowersji wielu użytkowników podkreśla korzyści płynące z używania Copilot X, takie jak zwiększona produktywność i szybkość kodowania. Jednak GitHub ostrzega, że zestaw treningowy dla Copilot może zawierać niebezpieczne wzorce kodowania, błędy lub odwołania do przestarzałych API, podkreślając, że użytkownik końcowy jest odpowiedzialny za zapewnienie bezpieczeństwa i jakości swojego kodu, w tym kodu generowanego i sugerowanego przez Copilot.
Wpływ Copilota X na biznes. W grę wchodzą miliardy dolarów
Rozwój GitHub Copilot X ma znaczący wpływ na perspektywę biznesową programowania. Najnowsze badania wskazują, że zwiększenie produktywności programistów dzięki narzędziom AI może podnieść globalny PKB o ponad 1,5 biliona dolarów. GitHub Copilot, będąc najczęściej adoptowanym narzędziem AI dla programistów na świecie, został aktywowany przez ponad milion programistów i przyjęty przez ponad 20 000 organizacji. Wygenerował on już ponad trzy miliardy zaakceptowanych linii kodu.
Analiza dużej próbki użytkowników GitHub Copilot (n = 934 533) wykazała znaczący wpływ na produktywność. Średnio w ciągu pierwszego roku na rynku użytkownicy akceptowali prawie 30% sugestii kodu od GitHub Copilot i zgłaszali zwiększoną produktywność dzięki tym działaniom. Z czasem wskaźnik akceptacji stale wzrastał, co sugeruje, że GitHub Copilot ma duży potencjał do dalszego wpływu na produktywność programistów.
Mniej doświadczeni programiści czerpią większe korzyści z narzędzi takich jak GitHub Copilot. Badania wykazały, że mniej doświadczeni specjaliści mają większą przewagę dzięki narzędziom AI, co pomaga demokratyzować rozwój oprogramowania, zamykać lukę w zasobach ludzkich i ustanawia narzędzia AI do “programowania parowego” (w parze z AI) jako standard w edukacji programistów. Jest też programowanie AI, czyli z użyciem narzędzi no code.
Korzystanie z GitHub Copilot X w organizacjach ma ogromny potencjał, zarówno dla programistów, jak i firm. Szybsze rozwiązywanie błędów oznacza większe bezpieczeństwo produktów i łańcuchów dostaw, a mniejsza ilość ręcznie pisanych powtarzalnych fragmentów kodu oznacza większą produktywność i skupienie zespołów. Ponadto, zdolność do szybkiego uczenia się i wdrażania nowych technologii pozwala na dostarczanie lepszych rozwiązań dla klientów.
Jednak Copilot, podobnie jak kalkulator dla matematyków, nie rozwiązuje problemów za użytkownika. Wymaga od programistów znajomości rozwiązywania problemów i umiejętności pisania kodu. Opinie na temat Copilot X różnią się w zależności od złożoności zadania, przy czym narzędzie lepiej sprawdza się w prostszych, bardziej rutynowych zadaniach. Przynajmniej na razie.