Jak programować z ChatGPT?

Як програмувати з допомогою ChatGPT?

Dowiedz się jak programować z ChatGPT, czy ChatGPT może zastąpić programistów i jakie języki programowania zna ChatGPT.

Jedną z najbardziej intrygujących rzeczy w ChatGPT jest to, że może napisać całkiem dobry kod. Przetestowaliśmy to w lutym, kiedy poprosiliśmy go o napisanie wtyczki WordPress dla naszej strony. Wykonał świetną pracę, ale był to bardzo prosty projekt.

Jak możesz programować z ChatGPT i używać go do pisania kodu w ramach codziennej praktyki programistycznej? To jest to, co zamierzamy zbadać tutaj.

Do jakich rodzajów programowania nadaje się ChatGPT?

Istnieją dwa ważne fakty dotyczące ChatGPT i programowania.

  • Pierwszym z nich jest to, że może on faktycznie napisać użyteczny kod.
  • Drugim jest to, że może się całkowicie pogubić, gonić własny ogon i produkować całkowicie bezużyteczne śmieci.

Postanowiliśmy sprawdzić, jak daleko ChatGPT może się posunąć. Napisaliśmy bardzo dokładny przewodnik po aplikacji na Maca, zawierający szczegółowy opis elementów interfejsu użytkownika, interakcji, tego co byłoby dostępne w ustawieniach, jak by działały i tak dalej. Następnie wysłaliśmy go do ChatGPT.

Meta uruchomi model sztucznej inteligencji Code Llama do pisania kodów komputerowych

ChatGPT odpowiedział prostym strumieniem tekstu i kodu. Następnie zatrzymał się w połowie kodu. Kiedy poprosiliśmy go o kontynuację, wyrzucił jeszcze więcej kodu i tekstu. Poprosiliśmy go o kontynuowanie ponownie i ponownie, a on rzucił więcej i więcej kodu. Ale… żaden z nich nie nadawał się do użytku. Nie określał, gdzie powinien trafić kod, jak zbudować projekt, a także – gdy przyjrzeliśmy się bliżej wynikowemu kodowi – pomijał główne operacje, które były w zadaniu, pozostawiając proste opisy tekstowe, które mówiły “logika programu idzie tutaj”.

Po wielu powtarzających się testach stało się jasne, że gdybyś poprosił ChatGPT o stworzenie pełnoprawnej aplikacji, to by się nie udało. Jeśli nie wiesz nic o programowaniu i chcesz, aby ChatGPT zbudował coś dla Ciebie, to się nie uda.

Tam, gdzie ChatGPT odnosi sukces, i robi to bardzo dobrze, jest pomoc komuś, kto już wie, jak programować, aby stworzyć pewne procedury i wykonać pewne zadania. Nie proś o program, który uruchamia się z paska menu. Ale jeśli poprosisz ChatGPT o stworzenie procedury wyświetlającej menu na pasku menu, a następnie wkleisz ją do swojego projektu, to będzie dobrze.

Jak więc programować za pomocą ChatGPT?

Pamiętaj również, że choć wydaje się, że ChatGPT ma ogromną wiedzę na temat danego obszaru (i często tak jest), brakuje mu mądrości. Tak więc może napisać kod, ale nie będzie w stanie napisać kodu, który zawiera niuanse dla bardzo specyficznych lub złożonych problemów, które wymagają głębokiej wiedzy, aby je zrozumieć.

Użyj ChatGPT do demonstracji technik, pisania małych algorytmów i podprogramów. Możesz nawet poprosić ChatGPT o pomoc w podzieleniu dużego projektu na części, a następnie zlecić mu pomoc w kodowaniu tych części.

Oto 11 rzeczy, których ChatGPT odmówi

Jak działa ChatGPT?

Mając to na uwadze, spójrzmy na kilka konkretnych kroków, jak używać ChatGPT do pisania kodu.

Jak ChatGPT może pomóc Ci w pisaniu kodu

Zawęź i określ swoją prośbę

W tym pierwszym kroku decydujesz, co dokładnie zamierzasz zadać ChatGPT – ale jeszcze o nic nie pytasz. Zdecyduj co chcesz, aby Twoja funkcja lub procedura zrobiła, lub co chcesz wiedzieć, aby zawrzeć w swoim kodzie. Zdecyduj, jakie parametry przekażesz do swojego kodu i co chcesz otrzymać jako wyjście. A następnie przyjrzyj się, jak zamierzasz to opisać.

Wyobraź sobie, że płacisz programiście, aby to zrobił. Czy dajesz im wystarczająco dużo informacji, aby mogli wykonać swoje zadanie? Czy też jesteś zbyt ogólnikowy, a osoba, której płacisz, prawdopodobnie będzie zadawać pytania lub pisać coś zupełnie niezwiązanego z tym, czego chcesz?

Powiedzmy, że chcemy być w stanie podsumować każdą stronę internetową. Chcemy załadować do niego coś takiego jak ten artykuł i uzyskać krótkie podsumowanie, które jest dobrze przemyślane i istotne. Jako dane wejściowe podajemy adres URL strony internetowej. Wyjściem jest blok tekstu z podsumowaniem.

Jak programować z ChatGPT? |Photo:https://www.queensu.ca/gazette/stories/google-and-microsoft-are-creating-monopoly-coding-plain-language
Jak programować z ChatGPT? |Photo:https://www.queensu.ca/gazette/stories/google-and-microsoft-are-creating-monopoly-coding-plain-language

Używanie ChatGPT do badania bibliotek i zasobów

Kontynuując powyższy przykład, bardzo starym sposobem wydobywania danych ze strony internetowej było po prostu znalezienie tekstu pomiędzy znacznikami akapitu HTML.

Ale wraz z pojawieniem się narzędzi AI, znacznie bardziej sensowne jest użycie bibliotek AI do inteligentnej ekstrakcji i podsumowania. Jedną z zalet ChatGPT (i jest to również obszar, który możesz łatwo sprawdzić, aby uniknąć jego autorytatywnego, ale nieprawidłowego zachowania) jest odkrywanie bibliotek i zasobów.

OpenAI (twórca ChatGPT) sprzedaje dostęp API do zasobów GPT-3 i GPT-4, które robią dokładnie to, co chcemy. Ale w przypadku tego przykładu załóżmy, że nie chcemy przechodzić przez tych pośredników.

Przyjrzyjmy się więc interakcji z ChatGPT, aby zrozumieć, jak wykorzystać takie narzędzie, za darmo, z projektem działającym w PHP.

Co zrobić gdy komputer się zawiesza

Zacznijmy od pytania, aby dowiedzieć się, które biblioteki zapewniają funkcjonalność, której potrzebuję. Biblioteka (dla tych, którzy czytają ten artykuł, ale nie są programistami) to kawałek kodu, do którego programista ma dostęp i który wykonuje większość ciężkiego podnoszenia za nich w określonym celu. Duża część nowoczesnego programowania polega na znalezieniu i wybraniu odpowiednich bibliotek. Jest to więc dobry punkt wyjścia.

Użyliśmy również ChatGPT do napisania tej samej procedury w 12 popularnych językach programowania. Oto jak to wyszło

Oto pierwsze pytanie:

Opisz dziesięć różnych bibliotek AI o otwartym kodzie źródłowym (i języków, z którymi współpracują), których mogę użyć do stworzenia streszczenia głównej treści dowolnej strony internetowej, ignorując wszelkie reklamy lub osadzone treści.

Dostarczyło to dokładnie to, czego potrzebowałem, w tym wzmiankę o ofercie OpenAI. OpenAI świetnie by tu pasowało, ale w tym hipotetycznym projekcie nie chcemy przeznaczać budżetu na opłatę za API. Musimy więc zawęzić pytanie.

Czy któryś z tych elementów jest darmowy?

ChatGPT ma dobrą odpowiedź. Oto, co powiedzieli: “Tak, wszystkie dziesięć bibliotek AI są open source i są bezpłatne w użyciu. Jednak niektóre z nich mogą mieć ograniczenia użytkowania lub wymagać płatności za dostęp do dodatkowych funkcji lub zasobów.” Na tej podstawie doprecyzowaliśmy nasze zapytanie.

Które z tych bibliotek nie mają ograniczeń w użytkowaniu i nie wymagają dodatkowych opłat lub licencji

Należy pamiętać, że jest to bardzo podobne do rozmowy. Nie ma potrzeby ponownego zadawania pierwotnego pytania. Po prostu zagłębiamy się w odpowiedź w taki sam sposób, jakbyśmy mieli pod ręką eksperta i szukali wyjaśnień.

W tym przypadku ChatGPT oferował osiem opcji bibliotek, ale żadna z nich nie wspominała o języku PHP. Tak więc, oto kolejna podpowiedź:

Z tych 8 bibliotek, czy możemy użyć którejkolwiek z nich z PHP?

Zwróciło trzy biblioteki, ale nie byliśmy pewni, co każda z nich zrobiła. Więc jeszcze jedno pytanie:

Jaka jest różnica między Sumy, Gensim i NLTK? oraz Jeśli chcemy stworzyć streszczenia artykułów informacyjnych na stronie internetowej, która biblioteka sprawdzi się lepiej?

Odpowiedź była jasna i obiecująca: “Sumy jest specjalnie zaprojektowana do abstrahowania tekstu, czyli do tworzenia streszczeń, które wydobywają najważniejsze informacje z kawałka tekstu”. Tak więc, teraz czas zobaczyć jak wykorzystać go w PHP. Mamy jeszcze ostatnie pytanie do tej części projektu:

Czy możesz wyjaśnić, jak używać Sumy z PHP?

Zapraszamy do wklejenia tych pytań do swojej instancji ChatGPT. Zauważ, że w kroku 1 zdecydowaliśmy, z jakim modułem oprogramowania zamierzamy uzyskać pomoc. Następnie, w tym kroku, rozmawialiśmy z ChatGPT, aby zdecydować, której biblioteki użyć i jak zintegrować ją z projektem.

Może nie brzmi to jak programowanie, ale tak właśnie jest. Programowanie to nie tylko wpisywanie linii kodu na stronie. Programowanie to wymyślanie, jak zintegrować wszystkie różne zasoby i systemy razem oraz jak komunikować się z różnymi komponentami Twojego rozwiązania. To właśnie tutaj ChatGPT pomógł przeprowadzić analizę integracji.

Następnym krokiem jest kodowanie.

Poproś ChatGPT o napisanie przykładowego kodu

Ok, zatrzymajmy się na chwilę. Ten artykuł nosi tytuł “Jak programować z ChatGPT?”. I tak będzie, ale najpierw poprosimy ChatGPT o napisanie przykładowego kodu.

Postawmy sprawę jasno. O ile nie chodzi o bardzo małą funkcję, ChatGPT nie będzie w stanie napisać Twojego ostatecznego kodu. Będziesz musiał go zmodyfikować. ChatGPT jest straszny w modyfikowaniu już napisanego kodu. Dlatego, aby uzyskać nowy kod, będziesz musiał poprosić ChatGPT o wygenerowanie czegoś nowego. Jak dowiedziałem się wcześniej, nawet jeśli twoja prośba jest prawie identyczna, ChatGPT może zmienić to, co daje ci w bardzo nieoczekiwany sposób.

Tak więc, podsumowując: ChatGPT nie może zweryfikować twojego kodu, a nawet go zmodyfikować.

Oznacza to, że musisz zrobić to sam. Jak wiemy, pierwszy projekt kodu rzadko jest ostatecznym kodem. Dlatego, nawet jeśli oczekujesz, że ChatGPT wygeneruje ostateczny kod, będzie to tylko punkt wyjścia, gdzie będziesz musiał go dokończyć, zintegrować ze swoim większym projektem, przetestować, poprawić, debugować i tak dalej.

Ale to nie znaczy, że przykładowy kod jest bezwartościowy. Wcale nie. Spójrzmy na wskazówkę, którą napisaliśmy w oparciu o projekt, który opisaliśmy wcześniej. Oto pierwsza część:

Napisz funkcję PHP o nazwie summarise_article.

Wejściem do summarise_article będzie adres URL artykułu w serwisie informacyjnym, takim jak ZDNET.com lub Reuters.com.

Mówimy ChatGPT, jakiego języka programowania ma używać. Mówimy mu również o danych wejściowych, ale dostarczamy dwie strony jako próbki, aby pomóc ChatGPT zrozumieć styl artykułu. Szczerze mówiąc, nie jesteśmy pewni, czy ChatGPT nie zignorował tych wskazówek.

Wewnątrz summarise_article pobierz zawartość strony internetowej pod podanym adresem URL. Używając biblioteki Sumy w PHP i innych bibliotek, które potrzebujesz, wyodrębnij główną część artykułu, ignorując wszelkie reklamy i osadzone treści, i skróć ją do około 50 słów. Upewnij się, że streszczenie składa się z pełnych zdań. W razie potrzeby możesz przekroczyć 50 słów, aby zakończyć ostatnie zdanie.

Jest to bardzo podobne do tego, jak byśmy odprawili pracownika. Chcielibyśmy, aby ta osoba wiedziała, że nie jest ograniczona do Sumy. Jeśli potrzebują innego narzędzia, chcemy, aby go użyli.

Określiliśmy również przybliżoną liczbę słów, aby stworzyć granice dla tego, co chcemy jako CV. Na koniec określiliśmy, co chcemy uzyskać jako wynik:

Po zakończeniu przetwarzania zmodyfikuj kod summarise_article tak, aby zwracał streszczenie jako zwykły tekst.

Powstały kod jest dość prosty. ChatGPT wywołał inną bibliotekę (Goose), aby uzyskać treść artykułu. Następnie przekazał ją do Summy z limitem 50 słów, a następnie zwrócił wynik. I to było wszystko. Ale kiedy podstawy są już napisane, to tylko kwestia programowania, aby wrócić i podrasować to, co jest przekazywane do dwóch bibliotek i wytworzyć wynik.

Kolejny ciekawy punkt. ChatGPT stworzył przykładowe wywołanie procedury, którą napisał, używając adresu URL po 2021 roku (kiedy kończy się zbiór danych ChatGPT).

Sprawdziliśmy ten adres URL zarówno w Reutersie, jak i Wayback Machine, i nie istnieje. ChatGPT po prostu go wymyślił.

Czy ChatGPT zastąpi programistów?

Jeszcze nie, a przynajmniej nie teraz. ChatGPT programuje na poziomie zdolnego studenta pierwszego roku, ale jest leniwy (jak ten student pierwszego roku).

Może zmniejszyć zapotrzebowanie na bardzo początkujących programistów, ale na obecnym poziomie po prostu ułatwi początkującym programistom (a nawet programistom z większym doświadczeniem) pisanie kodu i wyszukiwanie informacji.

Z pewnością oszczędza czas, ale jest niewiele projektów programistycznych, które może ukończyć samodzielnie – przynajmniej na razie. A w 2030 roku? Kto wie?

Jak mogę uzyskać odpowiedzi na moje pytania w ChatGPT?

Po prostu zapytaj. Powyżej zobaczyłeś, jak używać interaktywnego dialogu dyskusyjnego, aby zawęzić odpowiedzi, których potrzebujesz.

Kiedy pracujesz z ChatGPT, nie oczekuj, że jedno pytanie w magiczny sposób wykona całą pracę za Ciebie. Ale używaj ChatGPT jako asystenta i źródła informacji, a dostarczy Ci on wielu bardzo przydatnych informacji. Oczywiście sprawdź te informacje – bo jak mówi John Shulman, współzałożyciel OpenAI, “Najbardziej zależało nam na rzeczowości, ponieważ model lubi wymyślać rzeczy.”

Jak programować z ChatGPT: Jakie języki programowania zna ChatGPT?

Większość z nich. Przetestowaliśmy popularne współczesne języki, takie jak PHP, Python, Java, Kotlin, Swift, C# i inne. Ale potem poprosiliśmy go o napisanie kodu w obscenicznych językach z ciemnych wieków, takich jak COBOL, Fortran, Forth, LISP, ALGOL, RPG (generator raportów), a nawet język asemblerowy IBM/360.

Jako wisienkę na torcie daliśmy mu następujące zadanie:

Napisz sekwencję, która wyświetla “Hello, world” w postaci migających wskaźników ascii na przednim panelu PDP 8/e.

I ChatGPT rzeczywiście zademonstrował instrukcje przełączania programów za pomocą przełączników na przednim panelu. Byliśmy pod wrażeniem, podekscytowani i trochę przestraszeni.

Jaki jest więc wynik końcowy? Szczerze mówiąc, ChatGPT może być bardzo użytecznym narzędziem. Nie oczekujcie tylko, że będzie miał supermoce. Przynajmniej jeszcze nie teraz.

Źródło: https://www.zdnet.com/

Подібні новини

Leave a Comment