
gemma3 éååã§åãããŠã¿ã N100 CPUã§ã蚱容ã¬ãã«!? ïœllama-cppã§CPUæšè«(GPUã¯çéâŠ)ïœ
ããã«ã¡ã¯Rcatã§ãã
ä»åã¯å€§èŠæš¡èšèªã¢ãã«ã®è©±ã§ãã
ä»ãŸã§ã¯æ°ããã¢ãã«ãåºãŠããæã«ããã®ãŸãŸGPUã§æšè«ãšãã圢ã§è©ŠããŠãããŸããããä»åã¯éååãããã¢ãã«ã詊ããŠããããšæããŸãã
次åã¯ãã¡ã
ä»å䜿ã£ããã¹ãã¹ã¯ãªãããããŒã«ã«AIãµãŒããŒåããŸã
ã¯ããã«
å©çšèŠçŽ
æ å ±ãäœåã®æŽ»çšæã¯äºåã«å©çšèŠçŽãã確èªãã ããã
ã³ã¡ã³ãã«ã€ããŠ
å©çšèŠçŽã®ã¬ã€ãã©ã€ã³ã確èªã®äžã³ã¡ã³ãããŠãã ããã
åã£ãŠããªãã³ã¡ã³ãã¯åé€ããŸãã
æŠèŠ
ãããªãã©ãããã®ïŒ
ã€ãæè¿ãEdge GalleryãšããAndroidã¹ããŒããã©ã³åãã®ãšããžAIã®ã¢ããªãèŠã€ãããã§ããããã®ã¢ããªã¹ããŒããã©ã³ã®CPUã䜿ã£ãŠLLMãåãããšãããã®ã§ãããžãããšæãã¡ãã£ãšäœ¿ã£ãŠã¿ãŸããã
ãã®çµæããããªãã«é
ããã®ã®æ®éã«äœ¿ããâŠã
ãªãã§ã¹ããŒããã©ã³ã§åãã®ã調ã¹ããšãããéååã«ãã£ãŠã¢ãã«ãã ãã¶åæžããŠããããšãããããŸãããä»ãŸã§æ®éã®ããœã³ã³ã§ã3BãGPUã§åããã®ã§éçã ã£ãã®ã«ã¹ããŒããã©ã³ã§4Bãåããã§ãã
ããããããœã³ã³ã§åãããšããããããæ®éã«äœ¿ããã¬ãã«ãªã®ã§ã¯ãšããããšã§è©ŠããŠã¿ãããšã«ããŸããã
éååãšã¯
éååãšã¯ãã©ã¡ãŒã¿ãŒã®ãããæ°ãåæžããããšã§è»œéåããææ³ã§ããããã«ãã粟床ãç ç²ã«ããããšã§ãå€§å¹ ãªã¡ã¢ãªã®åæžãæšè«é床ã®åäžãèŠèŸŒãŸããŸãã
äŸãã°ãããŸãŸã§GPUã§ã¯16bitã®æµ®åå°æ°ç¹ã§ããããä»å詊ãã®ã¯intã®4ããããŸã§åæžãããã®ã«ãªããŸãã
ãããæ°ã§èšãã°1/4ãããã«intã«ããŠããŸãã®ã§ãæŒç®ã³ã¹ãã倧å¹
ã«äžãããŸãã
å®éã«åãããŠã¿ã
䜿çšããã©ã€ãã©ãª
ä»åã¯llama-cppã䜿çšããŸããPythonã®ã©ã€ãã©ãªãªã®ã§ãä»ãŸã§éãã®æèŠã§äœ¿ãããšãã§ããŸãã
䜿çšããã¢ãã«
googleã®geminiãšåãåºç€ã§éçºãããŠãããªãŒãã³ãœãŒã¹ã®gemma-3ã䜿ããŸãã
ã¹ããçã®ã¢ããªã§å®éã«åãããŠããããªãšæã£ãã®ã§ããã®ãŸãŸããœã³ã³ã§ã䜿ã£ãŠã¿ããã£ãããã§ãã
ããšãæ®æ®µã®èªååã®äœæ¥ã¯å
šéšgeminiã«ããããŠããã®ã§ã統系åã®ã¢ãã«ã§ããã°ãä»ãŸã§ãšäŒŒããããªåçãè¿ããŠããã®ã§ã¯ãªãããšããæåŸ
ããããŸãã
ãªããå
¬åŒã§ã¯llama-cppã«å¯Ÿå¿ããŠããggif圢åŒãç¡ãã£ãã®ã§ã倿æžã¿ã®ä»ã®æäŸè
ã®ã¢ãã«ã䜿çšããŸãã
ä»åã¯ä»¥äžã®ç©ããéžã°ããŠããããŸããã
https://huggingface.co/unsloth/gemma-3-4b-it-qat-GGUF/tree/main
ã¢ãã«ã®éžã³æ¹ãããããããªãã£ãã®ã§ãAIã«èãããšãããæ¬¡ã®ãããªåçãåŸãŸããã
ããããã®ãã¡ã€ã«ããã£ãŠè¿·ã£ãŠããŸããŸãããïŒã¯ããã¢ãã«æ¬äœã¯éåžž1ã€ã®GGUFãã¡ã€ã«ã§æ§æãããŠããŸãã ä»ã®ãã¡ã€ã«ã¯ãéååã®ã¬ãã«ãç°ãªãããªãšãŒã·ã§ã³ããé¢é£ããèšå®ãã¡ã€ã«ããããã¯ãã«ãã¢ãŒãã«æ©èœã®ããã®è£å©ãã¡ã€ã«ãªã©ã§ãã
ãã®ãªã¹ãã®äžãããããŒãPCã®CPUã§äœ¿ãããšãåæã«ãæ§èœãšãã¡ã€ã«ãµã€ãºã®ãã©ã³ã¹ãæãè¯ããšæãããGGUFãã¡ã€ã«ãéžãã§ãããŸãããã
ããªããéžã¶ã¹ãGGUFãã¡ã€ã«
ããããã¯ã以äžã®ãã¡ã€ã«ã§ãã
gemma-3-4b-it-qat-Q4_K_M.gguf
ãµã€ãº: 2.49 GB
çç±:
ååã®èª¬æã§æšå¥šãã Q4_K_M éååã¬ãã«ã§ããããã¯ããã¡ã€ã«ãµã€ãºãšã¢ãã«ã®åºåå質ã®ãã©ã³ã¹ãéåžžã«åªããŠãããšåºãèªèãããŠããŸãã
qat (Quantization-Aware Training) ã¢ãã«ãªã®ã§ãéååã«ããæ§èœå£åãæå°éã«æããããŠããããšãæåŸ
ã§ããŸãã
ããŒãPCã®CPUã§ãããã®ãµã€ãºã§ããã°ååã«åäœããå¯èœæ§ãé«ãã§ãã
ä»ã®ãã¡ã€ã«ã®è§£èª¬ãšéžã°ãªãçç±
gemma-3-4b-it-qat-BF16.gguf (7.77 GB):
ããã¯ãBF16ãïŒBFloat16ïŒåœ¢åŒã§ãéååãããŠããªãããªãªãžãã«ã®ç²ŸåºŠã«è¿ãã¢ãã«ã§ããæãé«å質ã§ããããã¡ã€ã«ãµã€ãºãéåžžã«å€§ãããããŒãPCã®CPUã§åããã«ã¯éãããŸããã¡ã¢ãªã倧éã«å¿
èŠãšããŸãã
gemma-3-4b-it-qat-Q2_K.gguf (1.73 GB), Q3_K_S.gguf (1.94 GB), Q3_K_M.gguf (2.1 GB) ãªã©ãããå°ãããã¡ã€ã«:
ãããã¯ããã«åŒ·ãéååãããŠããããã¡ã€ã«ãµã€ãºã¯å°ãããèªã¿èŸŒã¿ãéããªããŸãããããããã®åãã¢ãã«ã®åºåå質ïŒå¿çã®æ£ç¢ºæ§ãæµæ¢ãïŒãäœäžããå¯èœæ§ããããŸãããŸã㯠Q4_K_M ã詊ããŠã¿ãŠãããããã©ãŒãã³ã¹ãã©ãããŠãè¶³ããªãå Žåã«ããããã®ãã軜éãªã¢ãã«ãæ€èšãããšè¯ãã§ãããã
gemma-3-4b-it-qat-Q5_K_M.gguf (2.83 GB), Q6_K.gguf (3.19 GB), Q8_0.gguf (4.13 GB) ãªã©ããã倧ãããã¡ã€ã«:
ããã㯠Q4_K_M ããã粟床ãé«ãå¯èœæ§ããããŸããããã®åãã¡ã€ã«ãµã€ãºã倧ãããªããããŒãPCã®CPUã§åããéã®ã¡ã¢ãªæ¶è²»ãšæšè«é床ã«åœ±é¿ãåºããããªããŸãããŸã㯠Q4_K_M ã詊ããŠã¿ãŠãããå質ã«äžæºãããããã€PCã®æ§èœã«äœè£ããããšæããå Žåã«ããããã®ããé«ç²ŸåºŠã®ã¢ãã«ãæ€èšãããšè¯ãã§ãããã
gemma-3-4b-it-qat-IQ4_NL.gguf (2.36 GB), gemma-3-4b-it-qat-IQ4_XS.gguf (2.26 GB) ãªã© IQ ã§å§ãŸããã¡ã€ã«:
ãããã¯ãI-Quantization (Importance Quantization)ããšåŒã°ãããæ¯èŒçæ°ããéååææ³ã§ããäžéšã®ãã¹ãã§ã¯ Q4_K_M ãšåçããç¹å®ã®ç¶æ³äžã§ããè¯ãããã©ãŒãã³ã¹ã瀺ãããšããããŸããQ4_K_M ã§ããŸããããªãå Žåããããã«è©ŠããŠã¿ããå Žåã«éžæè¢ãšãªããŸããããŸãã¯æãæšæºçã§å®å®ããŠãã Q4_K_M ããå§ããã®ãç¡é£ã§ãã
UD- ã§å§ãŸããã¡ã€ã« (äŸ: gemma-3-4b-it-qat-UD-IQ1_M.gguf):
ããã¯ãUser DefinedããŸãã¯ç¹å®ã®çšéã«æé©åãããéååããŒãžã§ã³ã§ããå¯èœæ§ããããŸããéåžžã®çšéã§ã¯æšå¥šãããŸããã
mmproj-*.gguf ãã¡ã€ã« (äŸ: mmproj-BF16.gguf):
ãããã¯ããã«ãã¢ãŒãã«ãããžã§ã¯ã¿ãŒãã®éã¿ãã¡ã€ã«ã§ããGemma 3ã¯ç»åãšããã¹ãã®äž¡æ¹ãæ±ãããã«ãã¢ãŒãã«ã¢ãã«ã§ãããllama-cpp-python ã§ããã¹ãçæã®ã¿ãè¡ãå Žåã¯ãéåžžãã®ãã¡ã€ã«ã¯äžèŠã§ããç»åãæ±ããããªè€éãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããªãéããããŠã³ããŒãããå¿
èŠã¯ãããŸããã
.gitattributes, README.md, config.json, imatrix_unsloth.dat:
ãããã¯ã¢ãã«ã®ã¡ã¿ããŒã¿ã説æãèšå®ãã¡ã€ã«ããŸãã¯éååã«é¢ããè£å©ããŒã¿ã§ãããã¢ãã«æ¬äœã®GGUFãã¡ã€ã«ã§ã¯ãããŸãããããŠã³ããŒãããå¿
èŠã¯ãããŸããã
çµè«
ããŠã³ããŒããã¹ããã¡ã€ã«ã¯ãgemma-3-4b-it-qat-Q4_K_M.gguf ã§ãããšããããã§æããŠããã£ããã¡ã€ã«ãããŠã³ããŒãããŸãããªããä»ã«ãã³ãããŒã¯ããããã®ã§ãæçµçã«ã¯ä»¥äžã®ãã¡ã€ã«ã§æ¯èŒãããŸããã
gemma-3-4b-it-qat-Q4_K_M.gguf
äžçªãããããããããã£ã¢ã ãªã¢ãã«gemma-3-4b-it-qat-IQ4_NL.gguf
ãã©ã¡ãŒã¿ã®éèŠåºŠã§éååãããã¢ãã«ãããgemma-3-4b-it-qat-Q3_K_M.gguf
3bitãŸã§èœãšããã¢ãã«ãgemma-3-4b-it-qat-UD-Q2_K_XL.gguf
2Bitã詊ããŠã¿ãgemma-3-4b-it-qat-UD-Q4_K_XL.gguf
2Bitãšãšåãç³»åã®4Bitgemma-3-4b-it-qat-UD-Q3_K_XL.gguf
åäž
ãœãŒã¹ã³ãŒã
åããŠäœ¿ããã®ãªã®ã§ããšããããgeminiã«äžžæãããåŸãèªåã§å°ã
æžãå ããŸããã
ãã®é¢æ°ã¯ããããã¯ãšã¹ããªãŒã (ç»é¢ã«æåãéæè¡šç€ºããã)ã«å¯Ÿå¿ããåŠçã«ããã£ãæéãè¿ããŸãã
ã¹ããªãŒã æã¯æåã®ããŒã¯ã³ãåºããŸã§ã«ããã£ãæéãè¿ãããšãã§ããŸãã

䜿çšããããŒã¿
æ¬æŽ»åã®ç®çã¯ã以äžã®èšäºã§äœ¿ã£ãŠããæçš¿åæãèªåã®ããœã³ã³ã§è¡ãããšãªã®ã§ãæ²ç€ºæ¿ããååŸããã³ã¡ã³ãæ
å ±ã䜿ããŸãã
æçš¿ãå€ãããŠãæè¿1æ¥1000å以äžAPIãå©ããŠãã®ã§ãããããèªåã§è©ä»£ããããªããšããžã§å¶éããããâŠã
ã¡ãªã¿ã«å
¥åºåã¯ãããªæãã§ãã
ã³ã¡ã³ããAIã«é£ãããŠ3段éã§åœ¹ã«ç«ã€ãã©ããè©äŸ¡ãããã ãã§ãã
SNSæ
å ±ãæ©ãã®ã¯ãããã§ãããã©ãã§ãããæžã蟌ã¿ã7å²ä»¥äžãããã§ãããâŠãããããã®ãæéã®ç¡é§ãªã®ã§ãããããŠAIã§å¹çåããŠããããã§ããã

ã¡ãªã¿ã«gemini2.0 flash liteã¯å€§äœ5ç§çšåºŠã§å¿çããŸãã
åäœãã¹ã
æšè«ã«ã¯CPUã䜿çšããRyzen5 3600ã§ãã
ãã¹ãã®ãœãŒã¹ã¯ãããªæãã
äžã®æ¹ã§ã³ã¡ã³ããå®çŸ©ããŠããã®ã§ãããããã¯åºããŠãã¢ã¶ã€ã¯ãªã®ã§çç¥ã
å
šéšã§3æ²ç€ºæ¿ããã6ã³ã¡ã³ããã€æã£ãŠããŠããŠãããããã®æšè«æéãæ£èª€ããã§ãã¯ããŸããanserã¯ç§åºæºã§ãã©ã°ãä»ããå Žåã®å€ã§ãã
æéã¯ã3æ²ç€ºæ¿ãæšè«ããŠå¹³åãåºããŠããŸãã

ããã³ãã
ããã§ã¯éå
¬éãšããŸãã
ãã£ãšèª¬æãããšãæçš¿ã3段éã«åããŠãjsonã§åºåããŠãã ãããšããæç€ºã«ãªã£ãŠããŸãã
çµæ
çµæã¯ä»¥äžã®ããã«ãªããŸããã
bitãäžããŠãããŸãæ©ããªããªãã©ãããé
ãæããããŸãããã®æãã ãšæ®éã«Q4 MKã§ãããããâŠ
æ£ççã¯âŠç§ã®æç€ºãæªããã§ããããããã ãã©ã®ã¢ãã«ã§ãããŸãå€ãããªãã®ã§ãæ©ãåãã®ãéžã¹ã°ããæ°ãããŸãã
{
"gemma-3-4b-it-qat-IQ4_NL.gguf": {
"time": "29.4",
"first": "7.7",
"score": "24.074074%"
},
"gemma-3-4b-it-qat-Q3_K_M.gguf": {
"time": "25.5",
"first": "7.0",
"score": "24.074074%"
},
"gemma-3-4b-it-qat-Q4_K_M.gguf": {
"time": "26.5",
"first": "4.3",
"score": "24.074074%"
},
"gemma-3-4b-it-qat-UD-Q2_K_XL.gguf": {
"time": "32.8",
"first": "10.3",
"score": "22.222222%"
},
"gemma-3-4b-it-qat-UD-Q3_K_XL.gguf": {
"time": "32.9",
"first": "9.8",
"score": "22.222222%"
},
"gemma-3-4b-it-qat-UD-Q4_K_XL.gguf": {
"time": "29.3",
"first": "6.0",
"score": "25.925926%"
}
}ã¡ãªã¿ã«3bitãäžåããšãåºåãèŠãæãèªè§£åãè¶³ããŠãªãæããããŸãã10æå以å ã§ãšãã£ãæç€ºãç¡èŠããŠãããããã
2Bitã®é¡èãªåºåããããªæãã

æåŸ ããŠããã®ã¯ãããªæããªã®ã§

远å å®éš
ãããŸãå€ãããªããªãããã£ãšå€§ããã®ãªãã©ããªã®ããã£ãŠã¿ãŸããã
ãã£ã¡ã¯é床ãèœã¡ãŸããããåºåã®æ¹ã¯æåŸ
éãã«ãªã£ãŠããã®ã§ãèªè§£åã¯äžãã£ãŠããŠããŸãããæåã®ããŒã¯ã³ãåºããŸã§ã®æéãé·ããªã£ãŠããã®ã§ãããŠäœ¿ãããšã¯æããªãæãã§ããã
{
"gemma-3-4b-it-qat-Q4_K_M.gguf": {
"time": "26.6",
"first": "4.4",
"score": "24.074074%"
},
"gemma-3-4b-it-qat-Q5_K_M.gguf": {
"time": "33.5",
"first": "9.1",
"score": "25.925926%"
},
"gemma-3-4b-it-qat-Q6_K.gguf": {
"time": "33.9",
"first": "8.0",
"score": "25.925926%"
}
}GPUã ãšã©ããªã®ã
llamma cppã§ãããã€ã³ã¹ããŒã«æã«ã²ãšããå ããããšã§GPUçãã€ã³ã¹ããŒã«ã§ããã¿ããã§ãã
詳ããã¯ãã¡ã
ãã«ã
ãã«ãæžã¿ã®ãããã¿ããã§ããâŠãªããšCUDAã12.6ãå
¥ã£ãŠãã䜿ããŸããã§ããã
ãªã®ã§èªåã§ãã«ãããŸãã

ããããCUDAãªã or åãããªãæ¹ã¯ãã¡ãããã€ã³ã¹ããŒã«
â»ãã¡ããNVIDA GPUã®å Žåã§ããã
ROCmã®ãããã¿ãããªã®ã§ãAMD GPUã§ãè¡ããã®ãã??
éäžäžæãè¡ããªããŠè²ã 調ã¹ãŠãæçµçã«äžèšã³ãã³ããæã¡ããã§æåããŸãããtmpã®äžãã¯èŠããªãããã ãã©ããã£ãŠãã»ãã·ã§ã³äžã ããªã®ã§å¥ã«OK
set FORCE_CMAKE = 1
set CMAKE_ARGS=-DGGML_CUDA=on
set TEMP=C:\temp
set TMP=C:\temp
pip install llama-cpp-python --force-reinstall --no-cache-dir30åããããã«ãã«æéãããã£ãŠã€ã³ã¹ããŒã«çµäºã
å®è¡çµæ
1000æåã15ç§ã§åºåããŸããâŠãããRTX2060ãªãã§ããâŠã
Linuxã®ãµãŒããŒã«GPUã€ããŠãã°äžéšã®ã¿ã¹ã¯ã¯å®å
šã«ããŒã«ã«ã«ç§»è¡ã§ããããªã¬ãã«ã§ãâŠ
thunderboltãç¡ãã®ã§eGPUã䜿ããªãã®ã§ææ²ã§ããâŠã
ãŸãšã
ä»åã¯éååLLMã詊ããŠã¿ãŸããã
ä»ãŸã§ã¯ç²ŸåºŠãäžããã®ã¯ãªããšæã£ãŠçŽ éãããŠãŸããããå
šç¶ãããªããšã¯ãªãã§ããã
ãã©ã¡ãŒã¿ã®ç²ŸåºŠãäžããŠããã®å倧ããªã¢ãã«ã詊ããŸãããfloatãintã«ãªã£ãŠããã®ã§å€§ãããŠãå
šç¶èŠã«ãªããŸããã
ããŒã«ã«LLMãµãŒããŒã欲ãããªã£ãŠããŸããããGPUæã®PCã«å·®ãæ¿ããã®ããããã¯æè¿åºãŠããNPUã«æãåºããŠã¿ãã®ãâŠ
ããã§ã¯ãŸããäŒãããŸãããã