· tutorial · Przeczytasz w 5 min
Nowy Github Copilot - wybór modelu i wyższa jakość odpowiedzi
TL;DR
Copilot wzbogaci się o możliwość korzystania z nowych modeli, a także poprawi jakość generowanych odpowiedzi.
Typowy problem z Copilotem
Od momentu uruchomienia usługi GitHub Copilot, wielu programistów zgłaszało wątpliwości co do jakości generowanych odpowiedzi, zwłaszcza w skomplikowanych zadaniach i przy złożonych promptach. Chociaż Copilot jest cenionym wsparciem dla zadań o niskim poziomie trudności, programiści w naszej społeczności często zauważali, że w trudniejszych scenariuszach jego potencjał był ograniczony.
Na konferencji GitHub Universe 2024 zobaczyliśmy lekarstwo na te problemy.
Nowa generacja asystenta programisty
GitHub Copilot zrewolucjonizował sposób, w jaki programiści współpracują z AI, a nadchodząca “druga epoka” (wg słów CEO) ma raz na zawsze zakończyć dyskusję o niskiej jakości odpowiedzi.
Od pierwszej publicznej wersji usługi opartej na modelu Codex, Copilot przeszedł długą drogę rozwoju. Po drodze korzystał z coraz bardziej zaawansowanych modeli OpenAI, od GPT-3.5 do najnowszych wariantów GPT-4o. W czasie jego ewolucji zmieniały się również inne modele innych firm, a rozwiązania takie jak Claude 3.5 Sonnet skutecznie walczyły o uwagę użytkowników.
Github postanowił zmienić dotychczasową strategię. Na konferencji Universe 2024 ogłosił, że Copilot nowej generacji nie będzie napędzany ustalonym z góry modelem, ale jednym z wielu - o wszystkim zadecyduje użytkownik.
Źródło: GitHub Universe 2024 - Keynote Day 1
Najlepsze modele na rynku
GitHub Copilot w nowej odsłonie otwiera się na modele generatywnego AI od trzech dostawców:
Claude 3.5 Sonnet (Anthropic): Claude 3.5 Sonnet to nowoczesny model językowy, który sprawdza się w całym cyklu życia oprogramowania — od analizy projektu, przez refaktoryzację i optymalizacje kodu, aż po testowanie czy generowanie dokumentacji. Dzięki swojej wysokiej dokładności i zdolności do realizacji złożonych, wieloetapowych zadań, jest szczególnie przydatny w pracy nad starszymi aplikacjami, wymagającymi aktualizacji lub refaktoryzacji. Claude 3.5 Sonnet to narzędzie, które szerzej opisujemy w kursie Cursor: Programuj z AI.
Gemini 1.5 Pro (Google): Najnowszy model Gemini od Google oferuje imponujące 2-milionowe okno kontekstowe, co oznacza, że potrafi przetwarzać ogromne ilości kodu, dokumentacji czy danych bez spadku jakości odpowiedzi. Gemini jest modelem multimodalnym, co pozwala mu na przetwarzanie tekstu, obrazów, dźwięku i wideo, co jest szczególnie przydatne w projektach wymagających analizy materiałów pomocniczych.
o1-preview i o1-mini (OpenAI): Nowe modele OpenAI z serii o1, w tym o1-preview i o1-mini, koncentrują się na zaawansowanym rozumowaniu. W wewnętrznych testach GitHuba, modele te wykazały się zdolnością do wnikliwego analizowania i przewidywania trudnych sytuacji, co docelowo pozwoli użytkownikom Copilota na generowanie dłuższych fragmentów kodu o większej złożoności. Modele z tej rodziny dobrze radzą sobie z promptami zawierającymi wiele instrukcji jednocześnie, co w rozwiązaniach od konkurencji jest często zbyt trudne do obsłużenia.
Dlaczego wybór modelu jest tak istotny?
Nowe modele Copilota wychodzą naprzeciw różnorodnym potrzebom programistów, począwszy od podstawowych zadań, takich jak uzupełnianie kodu, po złożone wnioskowanie i zaawansowane scenariusze wymagające dogłębnego rozumienia systemów i technologii. Każdy z nowych modeli ma własną charakterystykę, co oznacza, że programiści mogą decydować, który z nich najlepiej odpowiada ich specyficznym potrzebom.
Możliwość wyboru modelu to również pole do eksperymentów na poziomie organizacji - firmy mogą testować różne modele i obserwować, które z nich najlepiej radzą sobie z ich specyficznymi potrzebami.
GitHub Spark: Konkurencja dla Vercela
Na GitHub Universe 2024 zaprezentowano także zupełnie nowe narzędzie — GitHub Spark. Spark to rozwiązanie “AI-native”, które pozwala budować mikroaplikacje wyłącznie w oparciu o język naturalny, bez konieczności zarządzania zasobami chmurowymi.
Dzięki temu narzędziu użytkownicy mogą tworzyć, testować i rozwijać aplikacje w nowy, iteracyjny sposób. Spark pozwala na edycję aplikacji na żywo, wdrażając kolejne polecenia i zachowując kontekst całego projektu. Co ważne, kolejne iteracje mają być zapisywane w historii, co ułatwia porównywanie wersji i dostosowywanie aplikacji na bieżąco.
Kto powinien obawiać się Sparka? Przede wszystkim Vercel, dostawca popularnego rozwiązania v0, które de facto oferuje tę samą funkcjonalność. Inne głośne rozwiązanie to Bolt od StackBlitz - jak widać, duże platformy programistyczne chcą przekonywać do siebie nie tylko osoby techniczne, ale również pasjonatów low-code i szybkiego prototypowania.
A co z Cursorem?
Cursor to obecnie flagowy edytor kodu wspierany przez AI. Jego popularności dowodzi fakt, że w dwa tygodnie od premiery naszego autorskiego szkolenia, dołączyło do niego przeszło 200 programistów. Czy nowa wersja Copilota sprawia, że pięć minut sławy Cursora się skończy?
Naszym zdaniem - nie. Z trzech powodów.
-
Po pierwsze, Cursor rozwijany jest przez dynamiczny startup o imponującym tempie dowożenia nowości. Funkcje, które teraz pojawiają się w Copilocie, w Cursorze były dostępne kilka miesięcy temu. Prawdopodobnie tak będą również wyglądać kolejne miesiące - Cursor i jego mniejszy zespół będą grać bardziej agresywnie, prezentując większą innowacyjność i eksplorowanie nowych obszarów współpracy z AI (trzeba zaznaczyć - nie zawsze w stabilnej formie).
-
Po drugie, Cursor to na dzisiaj nie tylko modele zewnętrzne, ale rownież autorskie rozwiązania takie jak Cursor Composer czy Cursor Tab. Są to natywne funkcje edytora, które rozwijano na podstawie tysięcy godzin pracy użytkowników i feedbacku, jaki pojawia się na forach i w mediach społecznościowych. Copilot zapowiada podobne funkcjonalności, ale ich jakość będziemy dopiero oceniać po premierze. Usprawnienia w Copilocie nowej generacji są de facto wyrównaniem braków, a nie uzyskaniem znacznej przewagi nad Cursorem.
-
Po trzecie, Cursor to edytor z modelami naprawdę otwartymi, a to wszystko dzięki wsparciu dla usługi OpenRouter. Jest to ujednolicony interfejs dostępu do setek modeli AI, które można w łatwy sposób wpiąć do swojego edytora. Takiej opcji na dzisiaj Copilot nie oferuje i po prędku się jej nie spodziewamy - nowe modele to zapewne efekt partnerstwa komercyjnego, a nie dobry gest od Microsoftu do open source.
Koniec końców - konkurencja pomoże wyłącznie nam, użytkownikom tych rozwiązań. Zarówno na poziomie oferowanej funkcjonalności jak i ceny, będziemy mogli cieszyć się coraz lepszymi narzędziami i korzystnymi modelami subskrypcyjnymi.
Współpraca z AI, czyli codzienność nowoczesnego programisty
Widać wyraźnie, że programowanie z asystą AI wchodzi do mainstreamu. Już wkrótce nie będzie to ciekawostka, a branżowy standard, na miarę systemów kontroli wersji czy testowania oprogramowania.
Pozostaje czekać na kolejne iteracje Cursora, Copilota i rozwiązań od JetBrains, tak aby każdy programista znalazł asystenta dopasowanego do jego potrzeb. My z pewnością będziemy te nowości opisywać i omawiać je w podcaście Opanuj.AI, do którego słuchania zachęcamy każdego czytelnika. To już prawie dwa lata od startu tego projektu, a my dopiero zaczynamy!