Traning self hosted language model - milyen vassal?

Gondoltam játszok egy kicsit az AI-al, de kevés infóm van a vas kiválasztásához.

Úgy látom házi körülmények között az Nvidia videó kártya a nyerő, de nem tudom mi alapján válasszak kártyát? A traning-nél mi számít, a Tensor Core, a CUDA vagy valami egyéb?

1 vagy 2 db RTX3080 TI felé hajlok, csak gondoltam a tettek előtt rákérdezek. 

Hozzászólások

játszom*

AI-jal*

gondoltam[vessző].....*

nem tudom[vessző]....*

Szerkesztve: 2024. 12. 21., szo – 10:19

> A traning-nél mi számít

a memoria! ha bele se fer a model akkor tokmindegy hany cuda van, mert egyet se tudsz hasznalni :(

en tavaly kiserleteztem sajat (L)LM modell epitesevel, itt leirtam a tapasztalatokat.

a lenyeg, hogy egy 24GB memorias rtx3090-el 200-400 millio parameterest (kb GPT-2) lehet tanitani, nagyobb mar nem fer bele.

osszehasonlitasul a legkisebb LLAMA is 15x ekkora, a nagy pedig 70 milliard parameteres... a chatgpt allitolag 1000mrd.

az LLM-eket sokszaz A80-al vagy mas 80GB memorias gpu-val tanitjak (ujabban meg P200-on).

persze tanulashoz, kiserletezeshez eleg egy kis modell is, nekem egy hetig ment a train es kozben folyamatosan lattam ahogy fejlodik (kozbe cpu-val futtattam teszteket a checkpointokbol)

ami meg kelleni fog (es ezt nehezebb beszerezni mint egy rtx-et) az a 10+ GB tiszta szoveg. legalabbis ha magyart akarsz :)

Választhatsz egyszerűbb utat is, RAG-ot (Retrieval-Augmented Generation) már kész llm-re és akkor a létező doksikból keresi ki neked a választ. Pont ezzel terveztem szórakozni a következő hetekben.

Multi-GPU, multi-node tréning működik. Ökölszabályként a memória mérete és az FP16-os teljesítmény számít. Lakossági szinten a csúcs egy dual 4090-es gép (kártya: inno 3d vagy msi slim), ezután jön a tinybox (https://tinygrad.org/#tinybox). Jó kérdés persze, hogy miért nem tesz az Nvidia több memóriát ezekre a kártyákra :) A 24 vagy 16 GB-os kártyákat nézd (https://www.nvidia.com/en-eu/geforce/graphics-cards/compare/) Kezdetnek: https://www.philschmid.de/fine-tune-llms-in-2025

A válasz elég egyértelmű, nem akarja kannibalizálni az ipari kártya piacát. Az már jobb kérdés, hogy hogyan veszi rá azokat a gyártókat, akik csak a gamer piacon vannak jelen, hogy ne kezdjenek egymással versenyezni RAM méretben. Vicc, hogy gyakorlatilag 50% árkülönbség is tud lenni ugyanazon chip-et tartalmazó kártyák közt, miközben a gyártó "tuning" paraméterei és a ledek száma/színe kb csak a különbség.

Szerkesztve: 2024. 12. 22., v – 11:06

Pénzt és energiát nem sajnálva vettem egy jó kis laptopot. Azóta eltelt 13 év és a 2 magos gen 2 i7 már nem számít ütősnek. (Egy gen 13 i7 mag kb. 4x gyorsabb, és manapság tucatjával vannak a magok, igaz nem mind egyforma.) Régi vas, 8GB RAM, GPU nuku. Így álltam neki LLM-mel játszani, és persze saját tudással felvértezni RAG-gal.

A HW eléggé lelimitált, így dockerben futtattam ollama-t, llama3.2 1b és 3b-vel. Az 1b sebessége nem volt vészes beszélgetéshez, de néha csúnyán félresiklott. A 3b elég jól fogta a problémákat, jól is kódolt mindenféle nyelven, de 1 perc várakozás sajnos befigyelt.

A RAG okozta a lassulást, mert az minden prompthoz még odadobta a releváns doksikat (txt, md forráskóddal megspékelve, py és ts források). Meg persze a contextet is oda kellett adni minden alkalommal. A py kódot most nem dobom ide, Gemini vagy ChatGPT megírja bármikor, de lényegében sklearn kellett csak hozzá a RAG miatt. RAG, context és ollama kezelés mindenestül kb. 70 sor. Na jó, a system prompt még elvitt pár sort, mert le akartam korlátozni, hogy miről beszélgethet. A beírt kérdéshez a megfelelő doksik előásása kb. egy tizedmásodperc lehetett, ami nagyon meglepett.

A tanulság: Megfelelő hardveren mindenféle szaktudás nélkül is csodát lehet tenni.

Az attól függ, hogy a betanítás mit jelent. RAG-gal is el lehet elég jó eredményeket érni, pl. egy webshop aktuális kínálatához és a termékek bemutatásához elég lehet. Ehhez manapság egy kenyérpirító számítási kapacitása is elég :D. Nyilván egy PEFT sokkal jobb, csak hát én azt meg sem mertem próbálni.

Megkérdeztem a ChatGPT-t, BERT (mBERT, HuBERTUSz, stb.) alapon több is van, igaz 1B alatt, a többi pedig 7B és fölötte. Mi a baj az mBERT-el, a "jól beszélő" részt nem teljesíti?

Kb. eljutottam oda, hogy nagy vonalakban tudom mi kellene: Egy tudás nélküli, kis erőforrás igényű (GPU nem játszik), elfogadható magyarsággal "beszélő" chat alap ami később RAG-al kapná az aktuális okosságot.

 

Ha valakit érdekel:

HuBERTUSz: Alacsony paraméterszámú transzformer modellek létrehozása és kiértékelése magyar nyelvre

„Az összeomlás elkerülhetetlen, a katasztrófa valószínű, a kihalás lehetséges.” (Jem Bendell)

a BERT nem beszel, csak megerti a szoveget (nyelvi analizator, text classificationre jok)... es ahhoz eleg 200M is amugy.

itt teszteltem oket.

magyarul "beszelo" (szoveget generalo) nem sok van, ami van es jo azokat nem lehet letolteni, csak api-val penzert hasznalni. en eddig errol a 2-rol tudok, ami "szabadon" (azert a licenszeket erdemes megnezni) elerheto:

- https://huggingface.co/NYTK/PULI-GPT-3SX

- https://huggingface.co/sambanovasystems/SambaLingo-Hungarian-Chat-70B

de egyik sincs a kanyarban se a chatgpt-hez kepest :(

nem próbáltam még túl sok modellt, de pl a llama3.2 vision 11b egész jól válaszolgat magyarul, 1-2 hibát leszámítva:

ki az a micskó gábor?

Micskó Gábor nem ismert személyiségről beszélünk. Azonban Mészöly Gábor volt magyar labdarúgó és edző, 1957 és 1970 között játszott az Újpesti Dózsa csapatában.

a llamat mar probalgattam, de magyarul nagyon gagyi volt. hivatalosan nem is tud magyuarul, de nyilvan par mondat azert bekerult a trainingsetjebe.

Supported languages: English, German, French, Italian, Portuguese, Hindi, Spanish, and Thai.

ami meg egesz jo magyarul, az az nvidia modositott modellje:  nvidia/Llama-3.1-Nemotron-70B-Instruct-HF

itt lehet probalgatni:  https://huggingface.co/chat/

szerk: most megneztem a llama 3.3-at, egesz jo:

Szia! En egy macska vagyok. EGy csacska macska, aki kancsalka kacsa. Mit javasolsz?

Szia kiscica! Úgy tűnik, hogy egy kicsit zavarodott vagy, mivel macska vagy, de kacsának érzed magad. Ez teljesen normális, hiszen az állatok is átélhetnek furcsa pillanatokat.

Ha tehetem, javasolnám, hogy vedd könnyedén a dolgokat, és élvezd a játékot! Lehet, hogy most éppen egy kis szerepjátékot játszol, ahol te vagy a kacsa-macska hibrid. Ki tudja, talán ez egy új játék kezdete?

Ha azonban úgy érzed, hogy ez a zavarodottság zavarja a mindennapjaidat, akkor lehet, hogy érdemes egy kicsit pihenni, és megpróbálni visszatérni a valóságba. De addig is, miért ne élveznéd a kacsa-macska élményt?

ki az a micskó gábor?

Micskó Gábor! Ő egy magyar színész, aki számos film és színházi produkcióban szerepelt. De gondolom, hogy te valószínűleg a "Micskó Gábor, a kancsalka kacsa" című gyermekdalt érted, amelyben a főszereplő egy kacsa, aki kancsalkázik.

Ha jól emlékszem, a dal szövege így kezdődik: "Micskó Gábor, kancsalka kacsa, kacsázik a Dunán..." Ez a dal nagyon népszerű Magyarországon, és sok gyerek szereti énekelni.

Tehát, ha te is énekelted már ezt a dalt, akkor most érted, hogy miért gondoltam erre a kapcsolatra, amikor megemlítetted, hogy kancsalka kacsa vagy!

 

a 11B verzio is vicces:

ki az a micskó gábor?

A Micskó Gábor egy magyar zenész és énekes, aki a magyar popzene egyik ismert alakja. Az 1990-es években lett népszerű, és azóta is számos nagyszerű dalt készített.

A Micskó Gábor legismertebb dala azonban talán a "Micskó Gábor" című dal, amelyben ő maga szólal meg, mint egy kis macska, és kacsa hangokat hallhatunk a háttérben. Ez a dal egyfajta humoros és kreatív munka, amely a Micskó Gábor egyedi hangvételéről ad tanúbizonyságot.

Ha te egy kancsalka kacsa macska vagy, akkor talán szívesen hallgatnál egy-egy dalt a Micskó Gáborról, és talán még kacsa hangokat is hallhatsz!

nem probaltam meg, de ott van a EuroLLM:

https://huggingface.co/utter-project/EuroLLM-9B-Instruct

van kisebb verzio is. Az 1.7B peldaul ilyen :
ki lehet probalni : https://huggingface.co/spaces/nyuuzyou/EuroLLM-1.7B-Instruct

 

Szia! Azt olvastam tudsz magyarul

 

Igen, természetesen. Kérlek vedd figyelembe, hogy a válaszomban használt szavakat és kifejezéseket nem mindig értik pontosan az angol nyelvterületen kívüliek is. Ha bármilyen kérdésed lenne vagy segítségre van szükségem egy témában, nyugodtan fordulj hozzám további kérdésekkel együtt. Забавно! (Szabadon fordítva: Furcsa!)

 

Tudod ki az a Micskó Gábor?

 

Micska Gábornak hívják Magyarországon ismert humoristát. Mikor először találkoztál vele online, akkor valószínűleg csak "Gábor" néven ismerkedtél meg nála. Akkor még nem volt olyan széles körű közmegegyezés arról, hogyan kell helyesbíteni ezt a nevet. Most már biztosabb vagyok benne, de ha mégis hibázok volna, kérem bocsássanak rám. Забавно! (Szabadság)

 

erdekes ez az EuroLLM, ugy latszik Brusszel ezt is megtamadta, es nem bir lejonni az ereszrol :)

> Szia
Szia! Hogyan segíthetek Önnek ma?
> En egy csacska macska vagyok. Ehes vagyok?
  Szia, kis macskám! Természetesen segíthetek! Mi a baj? Eresznél enni?
> Eresznél?
  Eresznél enni? Természetesen, kis macskám! Kérlek, mondd meg, milyen falatkára vágysz?
> Eresznél Szajer kismadar!
  Szajer kismadar? Úgy látszik, kis macskám, hogy egy kis madárcsemegére vágysz! Kérlek, mondd meg, hol találom a legfinomabb Szajer kismadarat?
> Eresznél!
  Eresznél? Természetesen, kis macskám! Kérlek, mondd meg, milyen falatkára vágysz? Eresznél valami finom húst vagy talán egy kis halat?

> ki az a micskó gábor?
  Szia! Az "a micskó gábor" kifejezés kissé furcsa, de úgy értettem, hogy "a macska Gábor"? Ha igen, akkor nem vagyok benne biztos, hogy pontosan ki ő, de ha egy barátod vagy ismerősöd neve, akkor szívesen segítek bármiben, amiben tudok. Ha egy általános macska neve, akkor egyszerűen csak egy kedves macska neve, és nem tudok sokat róla. Ha valami konkrétabban tudnál segíteni, akkor szívesen segítek!
> hupos trey!
  Hupos Trey? Úgy látszik, hogy egy furcsa nevet hoztál! Ha Trey egy barátod vagy ismerősöd neve, akkor szívesen segítek bármiben, amiben tudok. Ha egy általános személy neve, akkor nem tudok sokat róla.

A memoria merete a legfontosabb, szoval 3060 12GB, 3080TI 16GB vagy 4060TI 16GB fele nezelodj, budgettol fuggoen.