Téma umělé inteligence (AI) je snad všudypřítomné. Neznám člověka, který o tom nikdy neslyšel. Pravdou je, že AI používám prakticky denně na různé úlohy, které potřebuji vyřešit. Na druhou stranu jsem zatím potkal jen velmi, opravdu velmi málo lidí, o kterých by se dalo říct, že problematiku AI mají opravdu zvládnutou – ne, teď nemyslím posílání promptů (horší či lepší kvality) do „ChatGPT“ a čekání na výsledek. Takovým uživatelem jsem prozatím i já.

Jsem Jiří Kvasnička, kompetenční leader za Testing. V PRINCIPAL na této pozici působím již pátým rokem a postupně jsme se začali zabývat i světem AI. Jednou z oblastí, které nás zajímají, je využití umělé inteligence v rámci testingu a automatizace. Proto jsem se rozhodl zjistit, jak na tom dnešní modely skutečně jsou – a zda mohou vývojáře (nebo testery) reálně nahradit.

Je ale už nyní schopná nahradit člověka?

Na webu jsem našel několik článků o tom, jak přijdou o práci vývojáři, asistentky na call centrech, marketéři a vlastně skoro každý, kdo se učil dobře a dnes sedí v kanclu (i ti, co se neučili dobře a sedí v kanclu). Zkušenost s voicebotem má asi většina lidí (já tedy vesměs negativní).

Rozhodl jsem se, že vyzkouším, jak na tom vlastně dnešní modely (konkrétně ChatGPT) jsou a kolik developerů kvůli němu vlastně o tu práci dnes přijde. S programováním nějakou zkušenost mám, takže OOP principy znám a rozdíl mezi procedurou a funkcí asi také trefím, ale za vývojáře se nepovažuji. Zkusil jsem tedy AI využít „mým způsobem“ a začal programovat.

Pokus číslo 1:

Napíšu vyčerpávající prompt, využiju i AI, aby tento prompt „učesala“, a poté AI zvládne vše naprogramovat naprosto sama. Základ byl skutečně dobrý a cca za hodinu a půl jsem slavil úspěch v podobě prográmku, který fungoval. Byl sice trochu primitivní, ale funkční. Paráda. Můžeme vyhodit vývojáře… nebo ne? Zkouším tedy prográmek udělat komplexnější a tady nastává problém… AI začne „blbnout“ a upravuje už předem funkční kód. Propadám depresi a snažím se „přinutit“ AI k tomu, aby pokračovala v dobře rozjeté práci. Marně.

Pokus číslo 2:

Mažu veškeré prompty, paměť a začínám znovu. Tentokrát tak, že jsem si rozvrhl třídy a metody tak, aby mi dávaly smysl, a snažím se o to, aby AI naprogramovala obsah těchto metod. No, jde to, ale není to úplně ono. Při inicializaci pole mi stále hází kompilátor chybu a já propadám zoufalství. AI si stále stojí na svém a kód píše tak, jak se to naučila. Ale jo, výsledek je lepší než při pokusu číslo 1, ale i jako laik jsem viděl prostor pro zlepšení. Asi kdybych měl více trpělivosti a zkušeností, tak bych i zvítězil.

Pokus číslo 3:

Učím se programovat. Do kódu AI jsem koukal tak dlouho, že jsem se ten programovací jazyk vlastně naučil (alespoň na úrovni dostatečné pro můj účel). Program jsem naprogramoval sám a AI jsem využíval na úlohy typu: „Kompilátor hlásí chybu, čím by to mohlo být?“, „Prosím, vygeneruj mi getter a setter pro tyto proměnné.“, „Ne, getter pro pole nefunguje, minule jsi kopíroval v cyklu jednotlivé hodnoty, zkus to takto.“ Zvítězil jsem a nyní se těším ze svého prográmku, který funguje.

Jaký je výsledek mého experimentování?

  • AI je skvělý pomocník pro rutinní činnosti (getter a setter fakt dává dobře).
  • AI umí člověku urychlit práci a vnuknout dobré nápady.
  • AI je Google na steroidech (velké dávce steroidů).
  • AI se dokáže „zamotat“ v komplexních úlohách a dohnat člověka k šílenství.
  • AI může v současné době pomoci, ale dobrého (řekl bych, že i průměrného) developera v tuto chvíli nenahradí – ten na něj musí stále ještě dohlížet.

V Principal Engineering se AI aktivně věnujeme a stále sledujeme, jaké má reálné využití v praxi. Na toto téma určitě vznikne několik dalších článků, kde se podělíme o další poznatky a zkušenosti.

Pokud vás problematika AI v programování zajímá, sledujte náš blog, kde se tomuto tématu budeme věnovat i nadále.

Novinky z PRINCIPALu a IT

Získejte tipy a inspiraci pro urychlení své digitální transformace

  • Přemýšleli jste někdy, jak dobře rozumíte svým zákazníkům? Máte k dispozici správná data pro správná rozhodnutí? Dynamics 365 Customer Insights není jen dalším analytickým nástrojem – je to klíč k hlubšímu pochopení zákaznických potřeb, personalizaci nabídek a budování pevných vztahů.

    Číst dále

  • Přemýšleli jste někdy, zda je váš obchodní tým opravdu efektivní? Máte pocit, že by vaše obchodní procesy mohly být výkonnější, ale nevíte, kde začít? Dynamics 365 CRM není jen další CRM systém – je to klíč k transformaci vašeho přístupu k řízení vztahů se zákazníky a obchodní strategii.

    Číst dále

logo Contractors

Hledáme nadšené lidi, kteří se chtějí přidat k našemu týmu a pomáhat nám vytvářet skvělá IT řešení.

Podívejte se jaké pozice aktuálně hledáme na centrále skupiny PRINCIPAL v České republice.

Pokračovat na portál Contractors.cz

Později