Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Prompt Engineering

    A tantárgy angol neve: Prompt Engineering

    Adatlap utolsó módosítása: 2023. december 21.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    Villamosmérnöki szak, Műszaki informatika szak, Szabadon választott
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VITMAV82   1/1/0/f 2  
    3. A tantárgyfelelős személy és tanszék Dr. Varga Pál,
    4. A tantárgy előadója

    Név:

    Beosztás:

    Tanszék, Int.:

    Dr. Varga Pál

    docens

    Távközlési és Médiainformatikai Tsz.

    Dr. Putz Orsolya

    Gáspár Csaba

    Dr. Zainkó Csaba

    adjunktus
    egy. tans.
    adjunktus

    Távközlési és Médiainformatikai Tsz.


    Az előadók eléréséhez szükséges adatok a tanszék honlapján megtalálhatók:

    https://www.tmit.bme.hu/munkatarsak

    A tantárgy kidolgozói: Dr. Putz Orsolya, Gáspár Csaba, Dr. Zainkó Csaba, Dr. Varga Pál, Mihályi Antal (Google, Cloud AI)

    Alapvető programozási ismeretek, alapvető jártasság a mesterséges intelligencia, gépi tanulás és az NLP fogalomkörében, szoftverfejlesztési alapismeretek.

    6. Előtanulmányi rend
    Ajánlott:
    Kötelező:
    -
    Ajánlott:
    - Alkalmazott Mesterséges Intelligencia modellek a gyakorlatban - VITMAV78, amelynek az ismereteire jelen tantárgy nem épít, de az ott elhangozott alapismeretek hasznosak lehetnek a jelen tantárgyhoz
    7. A tantárgy célkitűzése A tantárgy célja, hogy a mesterséges intelligenciához kötődő technológiák trendjével lépést tartva és azokra reagálva, egyrészt akadémiai szintű betekintést nyújtson a prompt engineering világába, másrészt alkalmazási gyakorlatot nyújtson a mérnöki munkához.
    Ez a tantárgy - amellett, hogy röviden bemutatja a prompt engineering hátterét a nagy nyelvi modelleken (LLM) keresztül -, három fő fókusszal rendelkezik.
    Egyik fókusza az, hogy gyakorlati útmutatást adjon az adattudomány és szoftverfejlesztés eszköz-támogatásához: API-k használata a prompt engineeringben, adatmanipuláció, scraping, adatrendezés, szoftverkód-generálás, debug-olás, kódmagyarázat, dokumentáció, tesztelés.
    A tárgy második fókusza, hogy bemutassa, a hagyományos módszerekhez képest hogyan működik a prompt engineering segítségével a szentiment elemzés, az annotálás, a tagelés, és hogy ezen keresztül milyen változatos problémákra képes megoldást nyújtani a mérnöki tervezésen és informatikai megoldásokon túl az NLP, a gépi tanulás, a művészi képgenerálás, a pszichológia és a szociológia területein is.
    A tárgy harmadik fókusza, hogy bemutassa a legújabb technológiai trendeket a prompt engineering területén, ideértve a dinamikus prompt-generálás, a meta-prompting, és a Retrieval Augmented Generation (RAG) elméleti hátterét és gyakorlati alkalmazásait. Mindemellett a tárgy a hallgatók kritikus gondolkodását is fejleszteni kívánja azáltal, hogy rávilágít a prompt engineering által felvetett dilemmákra (pl. etikai kérdések, emberi előítéletek és a humán értékelés szerepe).
    8. A tantárgy részletes tematikája Minden héten egy, tematikailag összeillő előadás és gyakorlat van; kivéve az első alkalom (dupla előadás) és az utolsó alkalom (dupla gyakorlat)

    1. Bevezető, tematika ismertetése. A prompt engineering kialakulása, jelene, jövője. Helye a mérnöki területeken, hatása az iparban, gazdaságban, hétköznapi életünkben. A nagy nyelvi modellek (LLM) kialakulása, a promptok szerepe az LLM-alapú rendszerekben.
    2. Hogyan dolgozzák fel az LLM-ek az inputokat és generálják az outputot. A tanító adatok és a finomhangolás szerepe az LLM-ek viselkedésében. A prompt engineering alapfogalmai és technikái (pl. zero-shot és few-shot prompting, chain of thought prompting, knowledge generation prompting).
    3. Nagy nyelvi modellek finomhangolása - elméleti alapok, módszertan és gyakorlati példák. Prompt generálás: minőség és elfogultság a prompt válaszokban. Stratégiák az elfogultság csökkentésére a prompt tervezésen keresztül.
    4. Prompt engineering és szoftverkódok generálása: copilot rendszerek, API-k használata. Felelős kódgenerálás, a generált kódok verifikációja és validációja.
    5. Prompt engineering a programkódok debug-olás-ához, kódmagyarázathoz, dokumentáció készítéséhez, teszt automatizációhoz.
    6. Prompt engineering az adatfeldolgozásban. Adatok kezelése promptok segítségével: scraping, táblázatos adatba való rendezés, lekérdezések, diagramrajzolás, MS Excel illesztési lehetőségek, adatgyűjtés. Szintetikus adatgenerálás példa-adathalmazok és szövegek segítségével. Megoldás az adathiány problémájára különböző gépi tanulásos és Deep Learning feladatokban.
    7. Szentiment elemzés - különös tekintettel a hagyományos módszerek és a prompt engineering során használt technikák közötti különbségekre.
    8. Annotálás és annotált szövegek generálása - különös tekintettel a hagyományos módszerek és a prompt engineering során használt technikák közötti különbségekre.
    9. Tagelés - különös tekintettel a hagyományos módszerek és a prompt engineering során használt technikák közötti különbségekre.
    10. Tudományos írás. Absztraktok és parafrázisok létrehozása a hallgatók által készített dokumentumokhoz (pl. beadandó dolgozatok, szakdolgozat). Képgenerálás a mérnöki munkában, prompt engineering segítségével. Milyen a tudományos és szakmai elvárásoknak is megfelelő végeredmény?
    11. A prompt engineering alkalmazása a társadalomtudományokban. Esettanulmány egy pszichológiai kérdőív kapcsán. Gépi következetlenség vs. emberi következetesség. Etikai megfontolások a prompt mérnökségben. Technikák dinamikus prompt generáláshoz. Meta-prompting feltárása: LLM-ek használata promptok generálásához más feladatokhoz.
    12. A prompt engineering technológiai újdonságai. RAG (Retrieval Augmented Generation) rendszerek és alkalmazásuk gyakorlati példán keresztül. Kihívások text retrieval rendszerekben. ReAct prompting RAG rendszerekben.
    13. A prompt engineering technológiai újdonságai. Query rewrite, grounding, biztonság a RAG rendszerekben. Az adattisztaság fontossága. Felelősségteljes AI megfontolások.
    14. Hallgatói beszámolók.

    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás és laboratórium. A tárgy minden hetében előadás és gyakorlat is van, utóbbin a hallgatók valódi programozási feladatokat oldanak meg a gyakorlatvezetők támogatásával.

     

    10. Követelmények A félévközi jegy megszerzésnek feltételei a hatályos BME Tanulmányi és Vizsgaszabályzatával (TVSz) összhangban a következők:
    ● Gyakorlati feladat: A félév közepén a gyakorlati feladat státuszáról beszámolót kell készíteni. A félév végén a gyakorlati projektmunka eredményét be kell mutatni. A gyakorlati feladatra érdemjegyet kapnak.
    Gyakorlati feladat példák:
    o Agreement score számolás dokumentumokhoz kapcsolódó kérdés-válaszokra a langchain python csomag használatával
    o Szintetikus adatgenerása sequence labeling problémákhoz (pl. named entity recognition)
    11. Pótlási lehetőségek ● Gyakorlati feladat: A projekt-feladat beadására az erre kijelölt pótlási időpontban (a szorgalmi időszakban vagy a pótlási héten) van lehetőség.
    12. Konzultációs lehetőségek Igény esetén, előzetes egyeztetés alapján.
    13. Jegyzet, tankönyv, felhasználható irodalom A tantárgy témaköreinek elmélyítését segítő szakirodalmak:
    - OpenAI: ChatGPT Documentation, 2023 - Online: https://platform.openai.com/docs/quickstart
    - GitHub Copilot, 2023 - Online: https://docs.github.com/en/copilot
    - Ouyang, Long, et al. "Training language models to follow instructions with human feedback." Advances in Neural Information Processing Systems 35 (2022): 27730-27744., https://arxiv.org/abs/2203.02155
    - Google: Buildoing Generative AI applications - https://cloud.google.com/blog/products/ai-machine-learning/generative-ai-applications-with-vertex-ai-palm-2-models-and-langchain
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra28
    Félévközi készülés órákra14
    Felkészülés zárthelyire0
    Házi feladat elkészítése18
    Kijelölt írásos tananyag elsajátítása0
    Vizsgafelkészülés0
    Összesen60
    15. A tantárgy tematikáját kidolgozta
    Név: Beosztás: Tanszék, Int.:
    Dr. Varga Pál docens TMIT
    Dr. Putz Orsolya adjunktus TMIT
    Dr. Zainkó Csaba adjunktus TMIT
    Gáspár Csaba egy.tanársegéd TMIT
    Mihályi Antal mérnöki csoportvezető Google, Cloud AI