RAG kiértékelés — MI Ügynök tesztelése és értékelése 3. rész

Az előző bejegyzésekben szó volt arról, hogy a Keresésalapú szöveggenerálás (RAG) megoldás teljesítményét hogyan mérjük, ha ismert, milyen választ szeretnénk kapni az egyes kérdésekre. Ezt „helyesség” (angolul: Correctness) értéknek nevezzük, és talán a leghasznosabb kiértékelési eljárás. De nem az egyetlen. A mai bejegyzésben ezekkel a mérési módszerekkel ismerkedünk meg. Ami közös bennük, hogy nem szükséges az elvárt válasz ismerete, helyette Nagy Nyelvi Modelleket használunk a megoldás pontozására.

LLM-ek Apple Siliconon: MLX, kvantálás és LoRA

Általában nem írok konkrét könyvtárakról, mert azok gyakran változnak, és az írás elég gyorsan elavulhat. A mai bejegyzés kivétel lesz. Ennek az oka, hogy mostanában viszonylag sok időt töltök kisebb Nagy Nyelvi Modellek finomhangolásával, és ezek egy részét a saját Apple gépeimen végzem. Ez azt jelentette, hogy kellett egy viszonylag részletes jegyzetet készítenem magamnak. Gondoltam, mivel a lényeget úgyis összeszedtem, gyorsan beformázom, és megosztom. Hátha másnak is hasznos lesz.

Keresés vektor adatbázisban (Milvus példákkal)

A mai bejegyzésben folytatom a RAG témakörét, és miután betöltöttük a szöveget a vektoradatbázisba, most megnézzük, hogyan találhatjuk meg a legrelevánsabbat. Megismerjük, mi a BM25, a Rouge-L és a hibrid keresés. A bejegyzésben a Milvus rendszert fogjuk használni, de a lényeges pontok könnyen átültethetők más adatbázisokra is.

Szöveg darabolása – RAG adatelőkészítés

A mai bejegyzésben a Keresésalapú Szöveggenerálásnál (RAG) maradunk, de ezúttal a nagyobb szövegek darabolásáról lesz szó. Az előző írásomban kifejtettem, miért érdemes a szövegeket darabolni. Bemutattam a „tű a szénakazalban” tesztet, valamint azt is, hogy a hosszabb szövegek feldolgozása nagyobb erőforrásokat igényel. A mostani bejegyzés inkább gyakorlati megközelítést kínál, és különböző darabolási eljárásokat ismertet.

Szöveg-hasonlóság mérése — MI Ügynök tesztelése és értékelése 2. rész

A mai bejegyzésben maradok a számítógépes nyelvészet témájánál, és két szöveg hasonlóságát fogom egy kicsit körbejárni. Elsősorban a szemantikus hasonlóságról (angolul: Semantic Textual Similarity) lesz szó. Bemutatom a BERT Score, az SBERT és az UNE mérési módszereket. Az összehasonlítás érdekében azonban egy szókészlet-egyezésen alapuló eljárást, a METEOR-t is bemutatom. Miután megértettük, hogyan mérhető a hasonlóság, azt is megvizsgálom, miként alkalmazható ez a tudás egy valós problémára: az előző bejegyzésben bemutatott egyszerű RAG megoldás teljesítményét fogjom értékelni. Ehhez az Arize Phoenix keretrendszert használom.

Keresésalapú Szöveggenerálás (RAG) alapok

A mai bejegyzésben továbbra is a számítógépes nyelvészet témájánál maradunk, de ezúttal annak egy határterületét nézzük meg közelebbről: a Keresésalapú Szöveggenerálással (angolul: Retrieval-augmented generation, RAG) foglalkozunk részletesebben. Első lépésként egy PDF dokumentumot töltünk be egy Milvus vektoradatbázisba, majd természetes nyelven végzünk keresést a tartalmában.