Mesterséges intelligencia a webalkalmazásokban
Nyelvi modellek a projektmenedzsmentben (BSc szakdolgozat)
Django webalkalmazás, amely kisebb, ingyenesen elérhető nyelvi modellekkel, minimális hardverigény mellett támogatja a projektadminisztrációt dokumentációk és specifikációk generálásával.
- egységteszt
- 248
- Cypress E2E teszt
- 258
- összehasonlított nyelvi modell
- 5
- jogosultsági szint
- 4
- Cél
- A projektadminisztráció, különösen a dokumentációk és specifikációk készítésének támogatása ingyenes, kisebb paraméterszámú, minimális hardveren futó nyelvi modellekkel úgy, hogy a generált szöveg minősége megfelelő maradjon.
- Megoldás
- Django alkalmazás intuitív felülettel és szerepkör-alapú hozzáféréssel. Több kisebb modellt különböző promptolási technikákkal és eszközkonfigurációkkal hajtottam meg; a technikákat külön és kombinálva is teszteltem, és találtam egy közös konfigurációt, amely mindegyik modellnél megfelelően teljesít.
- Eredmény
- Működő rendszer, amely a generált dokumentumokat GitHub-kompatibilis Markdown formátumban tölti le. Specifikus promptolási technikákkal jelentős minőségjavulást értem el; a komplex összefüggések kezelése korlátozott, további finomhangolást igényel.
- Egy közös prompt- és paraméterkonfiguráció, amely mind az öt modellnél megfelelően teljesít
- A generált dokumentumok GitHub-kompatibilis Markdown formátumban tölthetők le
- Dockerrel konténerizálva, az image elérhető a Docker Hubon
- A Cypress tesztek jogosultsági szintenként szervezettek: vendég, felhasználó, moderátor, adminisztrátor
Kutatási kérdés
Hogyan használhatók hatékonyan az ingyenesen elérhető nyelvi modellek minimális hardveren úgy, hogy a generált szöveg minősége megfelelő marad? A legnagyobb kihívás a szövegminőség megítélése volt: a specifikációk tartalma objektíven nehezen mérhető, ezért a fő szempont az volt, mennyire felel meg az eredmény a felhasználók elvárásainak, és mennyire segíti a munkájukat.
Mit mutattak a kísérletek
Nem létezik univerzális konfiguráció. Egy paraméterezés az egyik modellnél kiváló lehet, a másiknál rontja a képességeket. Hosszú kísérletezés után találtam olyan konfigurációt, amely mind az öt modellnél megfelelő eredményt adott a kijelölt feladaton.
Architektúra és technológiák
Django (Python) backend SQLite adatbázissal, HTML, CSS és JavaScript frontend Bootstrappel, MVC felépítés és Docker konténerizáció. A modellek Hugging Face Transformersen keresztül futnak. A munkaszervezés GitHub Projects és Issues segítségével történt.
Tesztelés
Egységtesztek a Django beépített unittest keretrendszerével alkalmazásonként (modellek, nézetek, URL-ek, űrlapok, admin és a nyelvimodell-szolgáltatási réteg), valamint jogosultsági szintenként szervezett Cypress end-to-end tesztek. A 248 egységteszt kb. 4,5 perc, a 258 E2E teszt kb. 2,5 perc alatt futott le.
Továbbfejlesztés
Dokumentumtípus-specifikus finomhangolás, feladatspecifikus prompt- és paraméteroptimalizálás, további dokumentumtípusok, automatikus értékelés közepes méretű modellel, vektoradatbázis-alapú kontextuskezelés (RAG) és teljesítményoptimalizálás.