𝗤𝘂𝗮𝗻𝘁𝗶𝘇𝗶𝗻𝗴 𝗠𝗼𝗱𝗲𝗹𝘀 𝗼𝗻 𝗮 𝟲 𝗚𝗕 𝗟𝗮𝗽𝘁𝗼𝗽 𝗚𝗣𝗨
నేను RTX 3050 లాప్టాప్ GPU పై లార్జ్ లాంగ్వేజ్ మోడల్స్ను (LLMs) ఉపయోగించడానికి ప్రయత్నించాను. ఈ కార్డ్లో కేవలం 6 GB VRAM మాత్రమే ఉంది. 4-bit క్వాంటైజేషన్తో ఏ మోడల్స్ పనిచేస్తాయి మరియు ఏవి విఫలమవుతాయో నేను చూడాలనుకున్నాను.
మూడు మోడల్స్ను క్వాంటైజ్ చేయడానికి నేను ఒకే స్క్రిప్ట్ను ఉపయోగించాను:
- Phi-3.5-mini (3.8B)
- Llama-3.2-3B
- Qwen2.5-3B (VibeThinker)
ఫలితాలు: Phi మరియు Llama బాగా పనిచేసాయి. Phi 34 నిమిషాల్లో 7.6 GB నుండి 2.2 GBకి తగ్గింది. Llama మరియు VibeThinker కూడా అదే విధంగా మారాయి. ఈ మోడల్స్ సులభంగా సరిపోయాయి.
ఆ తర్వాత నేను Qwen2.5-7Bని ప్రయత్నించాను. అది విఫలమైంది. 'Out of Memory' ఎర్రర్తో ప్రక్రియ రెండవ లేయర్ వద్దే ఆగిపోయింది (crash అయింది).
అది ఎందుకు విఫలమైంది: GPTQ క్వాంటైజేషన్ ప్రతి లేయర్ కోసం ఒక Hessian మ్యాట్రిక్స్ను నిర్మిస్తుంది. 7B మోడల్ కోసం, ఈ గణిత ప్రక్రియకు 6 GB కార్డ్ అందించే దానికంటే ఎక్కువ మెమరీ అవసరమవుతుంది. నేను కొన్ని పరిష్కారాలను ప్రయత్నించాను:
- చిన్న కాలిబ్రేషన్ డేటాసెట్లు: ఎటువంటి మార్పు లేదు.
- Hessiansలను CPUకి ఆఫ్ లోడ్ చేయడం: ఇది కొంచెం ఎక్కువ సమయం పనిచేసింది కానీ చివరకు క్రాష్ అయింది.
- GPTQ కి బదులుగా AWQ ఉపయోగించడం: ఇది కూడా అదే చోట క్రాష్ అయింది.
- కేవలం CPU మాత్రమే ఉపయోగించడం: ఇది పనిచేస్తుంది కానీ చాలా నెమ్మదిగా ఉంటుంది. ప్రతి లేయర్కు సుమారు 16 నిమిషాలు పడుతుంది.
చిన్న GPUల కోసం ముఖ్యమైన విషయాలు:
- మోడల్ పరిమాణం 3 రెట్లు తగ్గుతుందని ఆశించండి.
- GPU క్వాంటైజేషన్ కోసం 3 నుండి 4 బిలియన్ పారామీటర్ల పరిమితిని లక్ష్యంగా పెట్టుకోండి.
- మీ KV బడ్జెట్ను గమనించండి. ఫైల్ పరిమాణాలు ఒకేలా ఉన్నప్పటికీ, inference సమయంలో ఉపయోగించే మెమరీ మారుతూ ఉంటుంది.
- సర్వింగ్ కంటే క్వాంటైజేషన్ ప్రక్రియలో ఎక్కువ మెమరీ అవసరమవుతుంది. ఈ ప్రక్రియ సమయంలో మీ సిస్టమ్ RAMని పర్యవేక్షించండి.
మోడల్ పోలిక (W4A16): • Phi-3.5-mini: 2.27 GB | 68.7 tok/s • Llama-3.2-3B: 2.26 GB | 66.0 tok/s • VibeThinker-3B: 2.07 GB | 43.9 tok/s
క్వాంటైజేషన్ తర్వాత మూడు మోడల్స్ ప్రాథమిక గణితం మరియు ప్రైమ్ నంబర్ లాజిక్ను సరిగ్గా నిర్వహించాయి.
ఐచ్ఛిక అభ్యాస సమూహం: https://t.me/GyaanSetuAi