Umelá inteligencia (AI) a programovanie: mal by si sa báť o svoje miesto?

Čo je to umelá inteligencia a ako ovplyvňuje umelá inteligencia programovanie? Ako funguje umelá inteligencia a ako nápomocná pri programovaní dokáže byť nová verzia umelej intelgencie ChatGPT – 4 a ako pomôže Github Copilot pri vzdelávaní a práci programátora, sa dozvieš v článku.

chatgpt, githubcopilot, umelá inteligencia shared

V článku sa dozvieš:

Čo je AI umelá inteligencia – Definícia

Umelá inteligencia (AI) je simulácia ľudskej inteligencie v zariadeniach, ktoré sú naprogramované tak, aby niesli črty ľudskej mysle, ako sú uvažovanie, učenie sa, riešenie problémov a tvorivosť.

Pýtaš sa, čo je umelá inteligencia? Umelá inteligencia je bežnou súčasťou mnohých aspektov nášho života – od zábavy až po zdravotníctvo. Umelá inteligencia v domácnosti tiež už nie je ničím výnimočným. Veľakrát si ani neuvedomuješ, že špecializovaná AI sa už „infiltrovala“ aj do tvojho života, napríklad prostredníctvom internetu, reklám a marketingu, robotov v reštauráciách alebo asistentov v autách. V oblasti softvéru si umelá inteligencia GPT teraz získala väčšiu pozornosť vďaka všeobecným konverzačným modelom ako umelá inteligencia ChatGPT a Bard. Chat s umelou inteligenciou sa stáva čoraz bežnejším. Aj v oblasti programovania má AI obrovský potenciál na zefektívnenie procesov a zvýšenie produktivity.

Ako funguje chatgpt umelá inteligencia?

Napríklad aj tento článok sme napísali v spolupráci s Github copilot a ChatGPT, konkrétne s jeho novým modelom GPT-4, ktorý je produktom firmy Open AI. Ten mal release 14. marca 2023 a je to vhodná úvodná skúška toho, ako sa dá otestovať aktuálnosť databázy a knižníc modelu.

chatgpt screenshot

Otázku s rovnakým výsledkom sme položili aj v angličtine. Ako vidíš, nie všetko je so všeobecnou GPT umelou inteligenciou také tragické (alebo, naopak, ružové), ako si niektorí ľudia myslia. Neovládne nás ani nám masovo neukradne prácu. Zatiaľ. No môžeme ju využívať na zefektívnenie našich taskov.

Programovanie umelej inteligencie – Github Copilot: čo to je a ako ti pomôže?

Github Copilot je cloudový AI asistent, ktorý pomáha programátorom automaticky generovať kód. Ako funguje ChatGPT? Tento systém bol vyvinutý spoločnosťami Github a OpenAI (tvorcom ChatGPT) a je založený na modeli GPT-3. Github Copilot sa učí z množstva kódov, ktoré má scrapenuté, a následne ponúka návrhy kódu, ktoré sú relevantné pre konkrétny projekt programátora.

Predstavený bol ako limitovaná betaverzia 29. júna 2021, keď bol sprístupnený na pozvánku pre vybraných používateľov. Po uvedení GitHub postupne rozširoval prístup AI ku kódu a zbieral feedback od komunity. Plnohodnotný Copilot Git bol následne vydaný ako plugin na JetBrains Marketplace 29. októbra 2021. Teraz je k dispozícii globálne za 10 dolárov mesačne pre jednotlivcov alebo za 19 dolárov pre firmy.

GitHub Copilot a plagiátorstvo

Scraping existujúceho duševného vlastníctva je sivou zónou nielen v prípade AI dev asistentov. Umelá inteligencia totiž prečesáva existujúce projekty, komunitné stránky a portfóliá (pokiaľ má prístup) a následne využíva to, čo uzná za vhodné – bez povolenia autorov kódu alebo iného duševného vlastníctva. Proti podobnému postupu sa ohradzujú aj používatelia v umeleckom svete, kde ich prácu využíva ako stavebné elementy AI Midjourney, ktorý generuje umelecké obrázky v rôznych štýloch – od impresionistických ťahov štetcom pripomínajúcich Moneta až po fotorealistické portréty veľmi podobné celebritám.

Odmyslime si však na chvíľu morálny aspekt veci a zamyslime sa nad tým, ako sa dá Chat umelá inteligencia v našom prípade využiť pre dobro veci, nie na vykorisťovanie iných kolegov z odvetvia.

Výhody používania GitHub Copilota

Git Copilot funguje ako AI doplnok k vývojovým prostrediam (IDE) a pomáha programátorom generovať kód rýchlejšie a efektívnejšie. Spomenuli sme, že sa trénuje na veľkom množstve kódu a dokumentácie. Umožňuje mu to rozumieť rôznym programovacím jazykom a ich syntaxi vrátane Pythonu, JavaScriptu, Javy a mnohých ďalších.

GitHub Copilot Chat poskytuje nasledujúce výhody:

  1. Automatické generovanie kódu: Copilot Chat navrhuje kód pre funkcie, triedy a dokonca aj celé aplikácie, čím znižuje čas potrebný na písanie kódu a zvyšuje produktivitu programátorov. Ak ti teda Java programovanie funkcie trvá pol dňa, s asistentom to dáš pokojne za polovičný, až tretinový čas.
  2. Zlepšenie kvality kódu: Vďaka veľkému množstvu trénovacích dát môže Copilot navrhovať kód, ktorý je založený na best practices a zdrojoch, čo pomáha zlepšiť kvalitu výsledného kódu.
  3. Adaptovanie si nových technológií: Copilot Git môže pomôcť programátorom pri učení sa nových programovacích jazykov, knižníc alebo frameworkov tým, že ponúka návrhy založené na aktuálnych učebných materiáloch a best practices. Musíme zopakovať, čo hovorí umelá inteligencia ChatGPT o modeli GPT-3 použitom v GitHub Copilote. Jeho posledná aktualizácia prebehla v septembri 2021, čiže k tomuto up-to-date buďme skeptickí
  4. Zníženie chýb: Copilot GitHub pomáha identifikovať a opraviť chyby ešte predtým, ako sa kód spustí, čo vedie k efektívnejšiemu testovaniu a menšiemu množstvu problémov po nasadení aplikácie.

Junior programátori a AI umelá inteligencia

Programovanie pre začiatočníkov v Jave môže byť náročné najmä pri prechode z inej syntaxe, nehovoriac o úplných začiatočníkoch s programovaním. Umelá inteligencia v programovaní im môže pomôcť aj poskytnutím užitočných návrhov a rád týkajúcich sa štruktúry kódu a riešenia bežných problémov. Týmto spôsobom môže AI zjednodušiť proces učenia sa programovania a rýchlejšie si osvojiť best practices.

Lenže na to je nutná časová investícia, AI asistent z teba nespraví top developera a ani Java programátora juniora za večer. Môže ti ukázať cestu a iné prístupy k riešeniu problémov, ktoré by ti nenapadli. Ak ich začneš analyzovať, kombinovať, zlepšovať, využiješ plný potenciál umelej inteligencie v prospech svojho učenia sa.

ruky držia telefón s grafikou chatgpt bota umelej inteligencie
Umelá inteligencia zjednoduší proces učenia sa programovať.

Senior programátori a AI umelá inteligencia

Ťažkým kalibrom sa AI asistent stáva v rukách skúseného programátora. Senior programátor si vyžaduje podstatne viac znalostí, vďaka ktorým človek využije nástroj plnohodnotne. S expertízou vieš omnoho jednoduchšie odhadnúť, či ti AI asistent ponúka správne riešenie – rýchly pohľad na kód, potvrdenie, úprava a funkcia je hotová.

Ovplyvní umelá inteligencia platy programátorov?

Spýtali sme sa na to najpovolanejšej entity – samotnej AI (text je mierne upravený vzhľadom na bohemizmy a štruktúru):

„Začiatočníci alebo programátori s menšími skúsenosťami by mohli byť ohrození, pretože AI môže automatizovať jednoduchšie úlohy, ktoré by inak vykonávali. Naopak, skúseným programátorom, ktorí sa zaoberajú zložitejšími problémami alebo špecializovanými technológiami, by mohli platy naďalej rásť. AI môže aj zvýšiť dopyt po programátoroch, pretože spoločnosti budú potrebovať odborníkov na vývoj, implementáciu a údržbu AI systémov.“

Plat programátora pozostáva z mnohých premenných, nové nástroje, technológie a trendy sú len jednými z nich. GPT umelá inteligencia však má pravdu v tom, že špecializácia na AI systémy bude na vzostupe. Už teraz na trhu vznikajú spin-off služby na generovanie takzvaných prompts, teda príkazov pre konverzačné a asistenčné AI nástroje, s ktorými sa aj laik môže dopracovať k nadpriemernému výsledku. Bez vhodného alebo logického príkazu získaš nepoužiteľný kód.

ChatGPT – 4 príklad integrácie kódu

Skúsili sme, ako by to asi vyzeralo, ak by v tíme chýbal Java programátor a my by sme potrebovali nejakú integráciu. Použili sme tento laicky deskriptívny prompt:

Napíš mi Java kód, s ktorým integrujem JIRA tickety do dashboardu mojej aplikácie.

Odpoveď modelu GPT-4 obsahovala okrem samotného kódu aj inštrukcie:

Aby ste integrovali JIRA tickety do dashboardu vašej aplikácie v Jave, môžete použiť JIRA REST API. Tu je príklad, ako môžete pomocou Javy a knižnice Unirest pre vytváranie HTTP požiadaviek získať tickety z JIRA. Najprv pridajte závislosť Unirest do vášho súboru pom.xml:

<dependency>

<groupId>com.konghq</groupId>

<artifactId>unirest-java</artifactId>

<version>3.13.3</version>

</dependency>

Potom môžete vytvoriť triedu na interakciu s JIRA REST API:

import kong.unirest.HttpResponse;

import kong.unirest.JsonNode;

import kong.unirest.Unirest;

import kong.unirest.UnirestException;

 

public class JiraIntegration {

 

private static final String JIRA_BASE_URL = „https://vasa-domena.atlassian.net“;

private static final String JIRA_USERNAME = „vas-email@example.com“;

private static final String JIRA_API_KEY = „vas-api-kluc“;

 

public static void main(String[] args) {

try {

JsonNode jiraTickety = ziskajJiraTickety(„vas-projektovy-kluc“);

System.out.println(jiraTickety);

} catch (UnirestException e) {

e.printStackTrace();

}

}

 

public static JsonNode ziskajJiraTickety(String projectKey) throws UnirestException {

String jql = „project=“ + projectKey;

HttpResponse<JsonNode> response = Unirest.get(JIRA_BASE_URL + „/rest/api/3/search“)

.basicAuth(JIRA_USERNAME, JIRA_API_KEY)

.queryString(„jql“, jql)

.asJson();

 

if (response.isSuccess()) {

return response.getBody();

} else {

throw new UnirestException(„Nepodarilo sa získať JIRA tickety. Stav: “ + response.getStatus());

}

}

}

Nezabudnite nahradiť vasa-domena, vas-email@example.com, vas-api-kluc a vas-projektovy-kluc príslušnými hodnotami pre vašu inštanciu JIRA. Po vykonaní metódy ziskajJiraTickety získate objekt JsonNode, ktorý obsahuje údaje o JIRA ticketoch, ktoré potom môžete zobraziť v dashboardu vašej aplikácie. Nezabudnite spracovať objekt JsonNode, aby ste extrahovali konkrétne údaje, ktoré potrebujete pre váš dashboard.

V msg life Slovakia stále hľadáme šikovných kolegov

Možno ťa kód hore zneistil alebo, naopak, vidíš v ňom medzery. My sa v dohľadnom čase nechystáme postaviť všetko na umelej inteligencii. Navyše AI asistentov nie je možné plnohodnotne využívať v každom sektore vzhľadom na citlivé dáta.

Skillset ľudí je naďalej širší, než ponúka AI. Aj preto stále hľadáme nových kolegov na rôzne pracovné pozície. Pozri si naše voľné pracovné miesta. Privítame nadšencov nových technológií, napríklad aj umelej inteligencie, no dvere majú otvorené aj tradiční makači, ktorí sa radi pozrú na kód z vlastnej perspektívy.

Zuzana Kocáková

V msg life Slovakia sa starám o firemnú kultúru, eventy a som súčasťou marketingového tímu. Mám rada prácu, kde môžem byť kreatívna a prispieť k tomu, aby sa kolegovia v msg cítili dobre. Pravidelne pre teba pripravujem nielen novinky a zaujímavosti zo sveta informačných technológií a poisťovníctva, ale aj zo zákulisného diania v spoločnosti msg life Slovakia.

Prílohu väčšiu ako 4MB pošlite na
jobs.sk@msg-life.com

Pridaj sa k nám!

    *

    *

    Prevádzkovateľom spracúvajúcim Vaše osobné údaje je spoločnosť msg life Slovakia s. r. o., Hraničná 18, 821 05 Bratislava, IČO: . Osobné údaje v rozsahu životopisu, žiadosti o prijatie do zamestnania, motivačného listu, resp. ďalších podkladov s Vašimi osobnými údajmi doplnených o prípadné poznámky z výberového konania sa budú spracúvať na účely výberového konania a vytvárania databázy uchádzačov pre budúce výberové konania vo vyššie uvedenom rozsahu po dobu 3 rokov. Váš súhlas so spracovaním osobných údajov je možné kedykoľvek odvolať na e-mailovej adrese: jobs.sk.life@msg.group alebo písomným oznámením na adrese prevádzkovateľa. Odvolanie súhlasu nemá vplyv na spracovanie osobných údajov založené na súhlase pred jeho odvolaním. Osobné údaje môže spracúvať aj prevádzkovateľom poverený sprostredkovateľ (poskytovateľ systému), spoločnosť recruitis.io s. r. o., Chmelova 357/2, 500 03 Hradec Králové, Česká republika, IČ: . Viac informácií o spracúvaní osobných údajov nájdete tu>.