Programovanie pomocou umelej inteligencie

V poslednom čase sa do popredia čoraz častejšie dostáva pojem umelá inteligencia. Poznáme ju aj pod skratkou AI od anglického Artificial Intelligence. V článku sa ďalej zameriam na službu od spoločnosti OpenAI s názvom ChatGPT. Ide o chatbota s umelou inteligenciou, ktorý používa optimalizovaný jazykový model.

ChatGPT zodpovie na takmer každú otázku, ktorú mu zadáte. Ak hľadáte film a zadáte len stručný opis nájdeh ho. AK potrebujete napísať esej / sloh do školy, koncipovať motivačný list pre konkrétne pracovné miesto určite pomôže. Naviac veľmi dobre zvláda aj slovenčinu, aj keď niekedy vidieť, že ide o strojový preklad. A samozrejme môžete s ňou komunikovať celé hodiny o čomkoľvek – vy sa pýtate a ona odpovedá a vôbec nebudete mať pocit, že píšete so strojom.

Služba je dostupná na nasledovnej adrese: https://chat.openai.com

Programovanie pomocou umelej inteligencie

 

Programovanie pomocou umelej inteligencie - príklady

Pozrime sa teraz bližšie na tému využitia umelej inteligencie v programovaní. Google poskytuje obrovské množstvo článkov, ukážok zdrojového kódu, riešení a diskusných fór, ktoré bežne pri programovaní používame. Na to, aby sme našli odpoveď potrebujeme ale vedieť aspoň približne, čo hľadať. Tu vidím veľký benefit umelej inteligencie pri ktorej sa interaktívnym pýtaním dá dostať k odpovedi, aj keď na začiatku nevieme, čo presne hľadáme, resp. zadefinujeme len stručné zadanie. Pozrime sa na pár príkladov nižšie. Predpokladal som, že ide o začiatočníka v programovaní a komunikácia bola v slovenčine. Samozrejme ak používame Google, najrelevantnejšie výsledky a ich najväčší počet dosiahneme pri hľadaní v anglickom jazyku.

 

SQL - príklad vytvorenia tabuľky

Zadanie: Chcem vytvoriť SQL tabuľku s názvom: ziackakniha, ktorá bude mať 3 stĺpce: id, známka a predmet.

Google mi poskytne nespočetné množstvo výsledkov s ukážkami CREATE TABLE. Aby som zostavil kompletný kód podľa zadania, musím ďalej zisťovať, aké parametre zadefinovať pri stĺpcoch, nastaviť si svoje vlastné pomenovania stĺpcov, vedieť čo sú to dátové typy, primárny kľúč atď. A programátor musí určiť, ktorý parameter kde použiť.

Ak zadanie napíšem do ChatGPT, dostanem okamžite odpoveď s funkčným SQL príkazom s logicky nastavenými dátovými typmi a stručným vysvetlením.

Programovanie pomocou umelej inteligencie

 

PHP - príklad kontroly členstva štátu v EÚ

Zadanie: Chcem vytvoriť jednoduchú funkciu v PHP s krajinami Európskej únie a napísať overenie. Ak existuje v zozname krajín, výsledok bude: Je členom EÚ, ak neexistuje, výsledok bude: Nie je členom EÚ

Vytvoriť pole s jednoduchou podmienkou nie je žiadny problém. Stačí vyhľadať prostredníctvom Google: php if in array a vpísať správne údaje (musím napríklad získať štáty EÚ). Vypracovať takéto zadanie by trvalo možno 5 minút.

Ak zadanie napíšem do ChatGPT, rovno dostanem odpoveď formou PHP kódu, kde už budú v premenných doplnené názvy štátov EÚ a prostredníctvom jednoduchej funkcie zabezpečené overovanie. Trvalo to cca 30 sekúnd.

Programovanie pomocou umelej inteligencie

 

JavaScript - jednoduchá funkcia

Zadanie: Vytvorenie funkčného dizajnu na zadávanie PIN-u na web.

Prehľadávaním výsledkov Google by som samozrejme príklady našiel, no zabralo mi to cca 7 minút. ChatGPT mi vygeneroval funkčný kód, ktorý robí presne to, čo som chcel. Nebolo to viac, ako minúta. Kód si už môžem prispôsobiť podľa seba. Pozrite si výsledok: https://www.dkubinsky.sk/priklady/openai-javascript-pin

Programovanie pomocou umelej inteligencie

 

HTML - jednoduchá šablóna

Zadanie: Vygenerovať HTML kód jednoduchej web stránky s nasledovnými parametrami: vodorovné menu vpravo a logo vľavo, pod tým bude obsahová sekcia a spodná pätička. Farby môžu byt modrá, sivá, čierna. Nech je to pekný web.

Ak by som použil ako laik iba Google, dozviem sa všetko o štýloch, HTML značkách, ale zostaviť šablónu by som si musel manuálne. ChatGPT mi po napísaní zadania vygeneruje HTML kód, ktorý je skvelý základ pre ďalšie úpravy. Pokiaľ niekto nemá dostatočné znalosti, tak je jednoduchšie upravovať niečo, čo už existuje – ukážková HTML šablóna, než začať ju tvoriť. A čo je najlepšie - ak mi výsledok nevyhovuje, tak do chatu napíšem požadované zmeny a dostanem opravený výsledok.

Programovanie pomocou umelej inteligencie

Programovanie pomocou umelej inteligencie

Ukážka vygenerovanej šablóny v prehliadači - vôbec to nie je zlé. Pozrite si výsledok on-line: https://www.dkubinsky.sk/priklady/openai-html-template

 

Aplikácia pre Android

Zadanie: Jednoduchá aplikácia pre Android - aplikácia bude mať zelené pozadie a po kliknutí na displej sa vytvoril červený bod. Opäť, dohľadať všetky potrebné funkcie sa dá aj vo výsledkoch Google. ChatGPT vygeneruje funkčný kód, ktorý spraví presne to, čo od neho chcem.

Programovanie pomocou umelej inteligencie

 

Python - príklad kreslenia

Zadanie: Chcem v prostredí Python cez knižnicu Tkinter nakresliť dom s hnedou strechou, bielou fasádou a 2 modrými oknami a čiernymi dverami. Je to časté zadanie pre začiatočníkov, ktorí sa učia Python.

Google mi opäť dá množstvo výsledkov, ale ako začiatočník by som musel vynaložiť veľkú námahu na ich pochopenie, pospájanie do celku na vypracovanie zadania. Zistil by som, ako sa kreslí línia, obdĺžnik, polygón atď. A Googlom získané poznatky by bolo potrebné skompletizovať. Vypracovanie zadania by bolo na cca 20 min.

ChatGPT mi po napísaní zadania vráti kód, ktorý vykreslí dom, ako na obrázku nižšie. Trvalo to cca 10 sekúnd.

Programovanie pomocou umelej inteligencie

Programovanie pomocou umelej inteligencie

Ukážka vygenerovanej grafiky. Nie je to ideálne, tak požiadam o prepracovanie.

Programovanie pomocou umelej inteligencie

Programovanie pomocou umelej inteligencie

Na druhý pokus to je oveľa lepšie. Ešte sa aj slušne ospravedlní :-)


Služba ChatGPT je vynikajúci nástroj aj pre riešenie chybových hlášok s ktorými sa často stretávame v rôznych programovacích jazkoch. Dokonca stačí skopírovať zdrojový kód a chybovú hlášku a dozvieme sa nielen príčinu tejto chyby, ale dostaneme späť aj opravený zdrojový kód.

Záver:

Umelá inteligencia je v súčasnej dobe skvelý pomocník pri programovaní, tvorbe aplikácií a umožňuje v niektorých prípadoch výrazné šetrenie času. Pokiaľ dostávame chybové hlášky a potrebujeme k nim vysvetlenie, tak je to jednoznačne skvelá voľba. Tiež je to dobrý nástroj pre začiatočníkov a poslúži pri vzdelávaní v danom odbore. Ako štartovací generátor základného kódu, ktorý sa dá ďalej upravovať a prispôsobovať dokáže ušetriť nejaký čas.

Pri realizácii stredných a väčších projektov je však stále potrebná znalosť programátora, ktorý chápe súvislosti a dokáže prepájať jednotlivé súčasti do celku a následne ich aj dokáže prispôsobovať podľa požiadaviek klienta.

Napíšte mi do mailu, alebo komentárov vaše skúsenosti pri využívaní AI v programovaní.

https://chat.openai.com

Pridať komentár k článku