Kihagyás

AI gyorstalpaló: Működése, használata és a buktatói

Ezen leckében mesélünk egy kicsit a ma ismert mesterséges intelligenciák működéséről, megtanítunk prompt-olni és pár dologra is rámutatunk, amin egy AI kód elhasalhat, mint a MÁV. Nem szándékozunk mindent teljes mélységében elmagyarázni, ez egy közérthető, zanzásított anyag, amely az alapokat kívánja közérthetően átadni.

Működése

Kezdjük egy tévhittel: A ChatGPT, Gemini, Copilot és társai nem mesterséges intelligenciák - abban az értelemben biztosan nem, hogy nem gondolkodnak. Ezek tökéletesen igazított, profi algoritmusok és neurális hálók, amelyek egy adott inputra különböző módszerekkel egy kimenetet adnak. Ezekről a módszerekről majd a Mesterséges Intelligencia című tárgyon fogtok tanulni.

A szemléltetés tárgyai a chatbotok lesznek, talán azt a legegyszerűbb megérteni.
Használtál már GBoardot? Ha nem rémlik így, biztos megvan, amikor egy romkocsmában pár lecsúszott ital után írsz egy üzenetet az exednek, hogy visszamennél hozzá. Mikor gépelsz, a billentyűzet felett megjelennek szavak, ezek a tippjei a telefonodnak arra, mi lesz a következő szó.
Nos, a mai AI chatbotokat kezelhetjük úgy, mint ennek a szókitalálós funkciónak a nagyon feltuningolt változatát. Az üzenetre, amit írsz neki, azt próbálja kitalálni, hogy mi lehet a helyes megoldás: Próbálja a nyelv szerkezetét utánozni, megtippelni a szavakat és ezeket adja neked oda, mint válasz. A lépték és a mélység más, de az elv alapjaiban ugyanaz.

Arról lehet vitatkozni, hogy mennyire hasznosak, értelmesek ezek az algoritmusok. Egyesek szerint az, mások szerint nem. Abban egyetértés van, hogy ezek a szoftverek az életünket fenekestül felforgatták, itt vannak és mindenki ezekről beszél lassan 4 éve. Ebből kifolyólag nem mehetünk el amellett, hogy a programozós kalandjaink során sok hasznát tudjuk venni - emiatt is született meg ez a kurzus, hogy ezeket is bemutassuk.

A prompt-olás

A prompt gyakorlatilag az az utasítás, amit az AI-nak odaadsz, hogy "Ezt csináld meg!" - és jobb esetben meg is csinálja. Fontos, hogy jó kéréseket intézzünk az AI-nak, így a "képzelőerejét" kordában tudjuk tartani, viszont nagyobb eséllyel fogja a nekünk megfelelő eredményt adni. Az AI nem tud mindent rólad, csak azt, amit megosztasz vele, ő nem a jós, tisztánlátó, esetleg gerincműtős a Budapest TV-ről. Az alábbi szempontok főleg általános kérdezéshez lettek fogalmazva, kódoláskor természetesen nem szükséges mindegyik az utasításba, ezt fogjuk jelezni. Tehát:

  1. Kezdd cselekvő igével az utasítást!
    Az "Írj egy kódrészletet" vagy "Oldd meg ezt" egy tökéletes választás amely egy egyenes, lényegretörő fogalmazásmód.
  2. Adj kontextust!
    Itt el lehet veszni a részletekben, és a prompt ezen részét addig írod, míg lemegy a nap. Amiket mindenképp fogalmazz bele:
    • Mi a hátterem?
    • Mi a célom?
    • Mi a helyzetem?
      Például: Ha segítséged kérsz az AI-tól, akkor írd le, hogy mi a kódod jelenlegi működése, mit vársz el és hogy mihez van hozzáférésed - éles helyzetben nem minden részét tudod a programnak igazítani.
  3. Adj példát az AI-nak!
    Ha van egy elképzelésed arról, hogy nézzen ki a válasz, akkor jelezd, így egy általad ismert paradigma mentén oldja meg a kért feladatot. Például: "Írj egy fájlkezelő algoritmust Python nyelven, ehhez a 'pandas' package-t használd!"
  4. Helyezd szerepbe az AI-t!
    Ez egy nem kódspecifikus tanács, nincs sok jelentősége, de említésre méltónak tartom: Kérheted azt a specializáció érdekében, hogy helyezkedjen egy szerepbe: Például: "Képzeld magad Herkules szerepébe!"
  5. Közöld a formátumot!
    Szintén egy általánosabb tanács, de ha például gyűjteni akarsz 70 történelmi személyt, hogy abból csinálnál egy könyvet 1 óra alatt, akkor kérheted azt, hogy egy táblázatba mentse ki a neveket.
  6. Válassz hangnemet!
    Azt beismerhetjük, hogy például máshogy mesélsz erről a kurzusról egy szaktársadnak, mint egy közgázos ivócimborádnak. Ennek okán érdemes belecsempészni, hogy milyen stílusú választ vársz. Nyilván a kódnak nem nagyon van stílusa, egy agresszív vagy barátságos hangvételű C++ kód nem létezik. Erre egy kitűnő példa, hogy: "Úgy mesélj erről, mint egy teljesen laikusnak!"
  7. Iteráció
    Ez talán a legfontosabb. Ha nem vagy elégedett az eredménnyel, akkor kérleld addig az AI-t, míg azt nem kapod, amit vársz. Analógia: Annyiszor mész el vizsgázni, amikor legalább egyszer átmész.

Az AI korlátai

Az LLM-ek működéséből adódik, hogy bőven ejthetnek hibát. Az AI olyan, mint egy furcsa idegen a Blaha aluljáróban: Nem tudhatod, igazat beszél-e. Ennek okán megemlítenénk pár dolgot, amelyekre érdemes odafigyelni.

  • Az AI akkor is válaszol, ha lövése sincs, van-e válasz a kérdésedre, ezen felül képes hallucinációkat is produkálni.
  • Az AI minden hülye ötletre azt fogja mondani, hogy "Ezaz, csináld." Akkor is, ha te használt akkumulátorokat akarsz a Tiszába dobálni.

A válaszait mindig KEZELD KRITIKÁVAL! Ha nem bízol benne, menj utána te magad is az általa használt függvényeknek, kódoknak, hogy helyesek-e, céljaidnak megfelelőek-e. Nem valószínű, hogy optimális, helyes megoldást fog adni, így ne felejts el programozni. Illetve ha téved, bátran lehet jelezni, hogy ez nem úgy van, ebből tanul.