Wyszukiwanie w witrynie

10 głównych powodów, dla których sztuczna inteligencja z dnia na dzień stała się głównym nurtem - i co dzieje się dalej


W niektórych wyzwaniach triumfował model oparty na GPT-4. W innych się to nie udało. Skąd wiesz, kiedy na niego liczyć?

Rzeczą, która najbardziej mnie dziwi w testach programowania, które przeprowadzam, jest to, że narzędzia oparte na tym samym dużym modelu językowym mają tendencję do działania zupełnie inaczej.

Na przykład ChatGPT, Perplexity i GitHub Copilot są oparte na modelu GPT-4 firmy OpenAI. Ale, jak pokażę poniżej, podczas gdy profesjonalne plany ChatGPT i Perplexity działały znakomicie, GitHub Copilot zawodził tak często, jak mu się to udało.

Przetestowałem GitHub Copilot osadzony w wystąpieniu VS Code. Wyjaśnię, jak to skonfigurować i korzystać z GitHub Copilot w nadchodzącym artykule krok po kroku. Ale najpierw przejdźmy przez testy.

Jeśli chcesz wiedzieć, jak testuję i jakie są podpowiedzi do każdego indywidualnego testu, przeczytaj , jak testuję zdolność kodowania chatbota AI.

TL; DR: GitHub Copilot zaliczył dwa i nie przeszedł dwóch.

Test 1: Pisanie wtyczki WordPress

Tak więc to się nie udało. To był mój pierwszy test, więc nie mogę jeszcze powiedzieć, czy GitHub Copilot jest okropny w pisaniu kodu, czy kontekst, w którym wchodzi się z nim w interakcję, jest ograniczający do tego stopnia, że nie może spełnić tego wymagania.

Pozwól, że wyjaśnię.

Ten test polega na poproszeniu sztucznej inteligencji o stworzenie w pełni funkcjonalnej wtyczki WordPress, wraz z elementami interfejsu administratora i logiką operacyjną. Wtyczka pobiera zestaw nazw, sortuje je i, jeśli są duplikaty, oddziela duplikaty, aby nie znajdowały się obok siebie.

To była prawdziwa aplikacja, której moja żona potrzebowała jako część urządzenia angażującego, które uruchamia na swojej bardzo aktywnej grupie na Facebooku w ramach swojej działalności e-commerce związanej z towarami cyfrowymi.

 Większość innych SI zdała ten test, przynajmniej częściowo. Pięć z 10 testowanych modeli sztucznej inteligencji całkowicie przeszło test. Troje z nich zdało część testu. Dwa (w tym Microsoft Copilot) zawiodły całkowicie.

Chodzi o to, że dałem GitHub Copilot ten sam monit, który daję im wszystkim, ale napisał tylko kod PHP. Żeby było jasne, ten problem można rozwiązać wyłącznie za pomocą kodu PHP. Jednak niektóre sztuczne inteligencje lubią dołączać do funkcji interaktywnych język JavaScript. GitHub Copilot dołączył kod do korzystania z języka JavaScript, ale nigdy nie wygenerował kodu JavaScript, którego próbował użyć.

Co gorsza, kiedy utworzyłem plik JavaScript i z poziomu pliku JavaScript próbowałem skłonić GitHub Copilot do uruchomienia monitu, dał mi inny skrypt PHP, który również odwoływał się do pliku JavaScript.

Jak widać poniżej, w pliku randomizer.js próbował zakolejkować (w zasadzie w celu uruchomienia do uruchomienia) plik randomizer.js, a napisany przez niego kod był PHP, a nie JavaScript.

Test 2: Ponowne zapisywanie funkcji ciągu znaków

Ten test jest dość prosty. Napisałem funkcję, która miała testować dolary i centy, ale skończyło się na testowaniu tylko liczb całkowitych (dolarów). Test prosi sztuczną inteligencję o naprawienie kodu.

GitHub Copilot przerobił kod, ale było kilka problemów z kodem, który wyprodukował.

  • Zakładano, że wartość ciągu jest zawsze wartością ciągu. Gdyby był pusty, kod uległby awarii.
  • Zmieniony kod wyrażenia regularnego zostanie przerwany, jeśli zostanie wprowadzony przecinek dziesiętny (tj. "3."), jeśli zostanie wprowadzony początkowy separator dziesiętny (tj. ".3") lub jeśli zostaną dołączone zera wiodące (tj. "00.30").

W przypadku czegoś, co miało sprawdzić, czy waluta została wprowadzona poprawnie, niepowodzenie z kodem, który uległby awarii w skrajnych przypadkach, jest niedopuszczalne.

Mamy więc kolejną porażkę.

Test 3: Znalezienie irytującego błędu

GitHub Copilot zrobił to dobrze. To kolejny test zaczerpnięty z moich prawdziwych eskapad kodowania. To, co sprawiło, że ten błąd był tak irytujący (i trudny do rozgryzienia), to fakt, że komunikat o błędzie nie jest bezpośrednio związany z rzeczywistym problemem.

Błąd jest w pewnym sensie koderowym odpowiednikiem podchwytliwego pytania. Rozwiązanie tego problemu wymaga zrozumienia, jak działają określone wywołania API w frameworku WordPress, a następnie zastosowania tej wiedzy do danego błędu.

Microsoft Copilot, Gemini i Meta Code Llama nie zdały tego testu. Ale GitHub Copilot rozwiązał to poprawnie.

Test 4: Pisanie scenariusza

Również w tym przypadku GitHub Copilot powiódł się tam, gdzie Microsoft Copilot zawiódł. Wyzwanie polega na tym, że testuję zdolność sztucznej inteligencji do stworzenia skryptu, który zna się na kodowaniu w AppleScript, modelu obiektowym Chrome i małym narzędziu do kodowania innej firmy dostępnym tylko dla komputerów Mac o nazwie Keyboard Maestro.

Aby zdać ten test, sztuczna inteligencja musi być w stanie rozpoznać, że wszystkie trzy środowiska kodowania wymagają uwagi, a następnie dostosować indywidualne wiersze kodu do każdego z tych środowisk.

Końcowe przemyślenia

Biorąc pod uwagę, że GitHub Copilot korzysta z GPT-4, fakt, że nie przeszedł połowy testów, jest dla mnie zniechęcający. GitHub jest prawie najpopularniejszym środowiskiem zarządzania źródłami na świecie i można mieć nadzieję, że obsługa kodowania AI była w miarę niezawodna.

Podobnie jak w przypadku wszystkiego, co związane ze sztuczną inteligencją, jestem pewien, że wydajność będzie się poprawiać. Bądźmy czujni i sprawdźmy ponownie za kilka miesięcy, aby zobaczyć, czy sztuczna inteligencja jest w tym czasie bardziej skuteczna.

Czy używasz sztucznej inteligencji do pomocy w kodowaniu? Jaką sztuczną inteligencję preferujesz? Czy próbowałeś GitHub Copilot? Daj nam znać w komentarzach poniżej.