.gguf ফাইল নামিয়ে ভাবছেন এবার চালাবেন যেভাবে? দ্রুততম পথ: ollama run hf.co/<repo>:Q4_K_M — Ollama সরাসরি Hugging Face থেকে GGUF টেনে নিয়ে সার্ভ করে। GGUF হলো এক-ফাইলের মডেল ফরম্যাট, যা llama.cpp এনেছিল আর আজ প্রতিটি local-LLM টুল বোঝে — তাই একই ফাইল চলে Ollama, llama.cpp, LM Studio, Jan-এ, আর (শর্তসাপেক্ষে) vLLM-এও। এই গাইডে প্রতিটি রানারের জন্য কপি-পেস্ট কমান্ড, নিজের VRAM অনুযায়ী সঠিক quant বাছাই, আর বাস্তবে যে লোড-error গুলোতে পড়বেন তা-ই আছে।
GGUF ফাইল আসলে কী?
GGUF (GGML Universal File) হলো quantised ভাষা মডেলের কন্টেইনার ফরম্যাট। এক ফাইলেই weights, tokenizer আর মডেলের মেটাডেটা — আর কিছু নামাতে হয় না, কনফিগ-সুপ নেই। ভেতরের weights quantised: 16-বিট ফ্লোট থেকে 4-বিট (বা তার নিচের) ইন্টিজারে চাপা — এজন্যই ফুল প্রিসিশনে ~18 GB চাওয়া 9B মডেল Q4 ফাইলে ~5.5 GB-তে নেমে আসে আর চলে গেমিং GPU-তে, এমনকি CPU-তেও।
GGUF ফাইলের নামে দুটো জিনিস দেখা হয়:
- বেস মডেল —
gemma-3-4b-it-GGUFমানে ফাইন-টিউন করা Gemma 3 4B, GGUF-এ এক্সপোর্ট করা। - quant ট্যাগ —
Q4_K_M,Q8_0,IQ4_XSও সঙ্গীরা বলে দেয় weights কতটা জোরে চাপা পড়েছে। বাছাই নিচে।
Ollama কি GGUF মডেল চালাতে পারে?
হ্যাঁ — GGUF Ollama-র স্থানীয় ফরম্যাট, আর 2024 থেকে Hugging Face থেকে ফাইল ছুঁয়েও দেখা ছাড়াই টেনে নেওয়া যায়:
# Hugging Face থেকে সরাসরি GGUF quant পুল করে চ্যাট করুন
ollama run hf.co/bartowski/gemma-2-9b-it-GGUF:Q4_K_M
# কোলনের পরের quant ট্যাগ রিপোর ভেতরের ফাইলটা বেছে নেয়
ollama run hf.co/ggml-org/gemma-3-4b-it-GGUF:Q8_0 নিজেই .gguf ফাইল নামিয়ে রেখেছেন? Modelfile দিয়ে ফাইলটার দিকে ধরান:
# Modelfile — এক লাইনই যথেষ্ট
FROM ./gemma-2-9b-it-Q4_K_M.gguf ollama create gemma9b -f Modelfile
ollama run gemma9b Ollama GPU অফলোড নিজেই ঠিক করে আর পোর্ট 11434-এ OpenAI-কম্প্যাটিবল API দেয়, তাই ওই API বোঝা যেকোনো টুল মডেলটা ব্যবহার করতে পারে। লেনদেনের দাম নিয়ন্ত্রণ: কত লেয়ার GPU-তে যাবে, সেটা আপনি বাছবেন না।
llama.cpp-তে GGUF ফাইল কীভাবে চালাব?
GGUF-এর উৎসই llama.cpp — ফরম্যাটটা এর জন্যই বানানো — তাই সমর্থন সবচেয়ে গভীর ও টাটকা। llama-server বাইনারি চ্যাট UI আর OpenAI-কম্প্যাটিবল এন্ডপয়েন্ট দুটোই দেয়:
# Hugging Face থেকে সরাসরি নামায় (আপনার মেশিনের মেলা GGUF বেছে নেয়)
llama-server -hf ggml-org/gemma-3-4b-it-GGUF --port 8080
# অথবা হাতে থাকা ফাইল চালান, সম্পূর্ণ GPU অফলোডে
llama-server -m ./gemma-2-9b-it-Q4_K_M.gguf -ngl 99 --port 8080 -ngl 99 মানে 99 লেয়ার GPU-তে; VRAM যত নেবে তার নিচে নামান, বাকি থাকবে CPU-তে। এই আংশিক-অফলোড ডায়ালটাই llama.cpp-র আসল শক্তি — 9B মডেল 6 GB কার্ডেও 48 লেয়ারের 20টা অফলোড করে ভালোভাবে চলে, শুধু ধীরে। সার্ভার নয়, এক-বারের প্রম্পট চাইলে একই -m ফ্ল্যাগসহ llama-server-এর জায়গায় llama-cli।
LM Studio হলো সেই একই ইঞ্জিন, ডেস্কটপ GUI-র পর্দার আড়ালে: .gguf ফাইল তার models ফোল্ডারে ফেলে দিন (বা অ্যাপের ভেতরেই Hugging Face খোঁজুন), লোডে ক্লিক করুন। টুলিং-পছন্দটা নিজেই হলে Ollama vs LM Studio তুলনা দেখে নিন — মডেলের নিচে কোনটা বসবেন।
কোন GGUF quantisation নামাবেন?
ডিফল্ট উত্তর: Q4_K_M। এটাই কমিউনিটির সুইট স্পট — সাইজের প্রায় এক-চতুর্থাংশে ফুল-প্রিসিশন কোয়ালিটির এক-দুই শতাংশের মধ্যে। সিঁড়িটা, বড় থেকে ছোট:
- Q8_0 — প্রায় লসলেস; VRAM প্রতি weight-এ 8.5 বিট টেনে নিয়েও না বুঝলে এটা নিন।
- Q6_K / Q5_K_M — সাইজে এক ধাপ কম, 30B+ মডেলে তখনও চমৎকার।
- Q4_K_M — ডিফল্ট। 7–14B মডেলে প্রতি-GB কোয়ালিটি এখানেই চূড়ায়।
- IQ4_XS / Q3_K_M — বড় মডেলকে ছোট কার্ডে চাপার সময়; কোয়ালিটি হারাটা বোঝা যেতে শুরু করে।
- Q2_K ও নিচে — শেষ ভরসা; মাঝপথেই মডেল আবগচ্ছা বলে যেতে শুরু করে।
আঁটানোর হাতে-গড়া নিয়ম: ফাইলের সাইজ GB-তে প্লাস ~1–2 GB context-ওভারহেড — এ পুরোটা VRAM-এ আঁটতে হবে। 9B মডেলের 4.7 GB Q4_K_M আট GB কার্ডে আরামে বসে। ভয়ংকর quant-এ বড় মডেলের চেয়ে ভালো quant-এ ছোট মডেল — Q8-এর 4B সাধারণত Q2-এর 9B-কে হারায়।
GGUF vs Safetensors: কোন ফরম্যাট লাগবে?
Safetensors হলো unquantised আর্কাইভ ফরম্যাট — ট্রেনিং, ফাইন-টিউনিং আর transformers, ComfyUI-র মতো টুলের জন্য ফুল-প্রিসিশন weights। GGUF হলো quantised, চালানোর উপযোগী ফরম্যাট — নিজের হার্ডওয়্যারে ইনফারেন্সের জন্য। GGUF ফাইন-টিউন করা যায় না, আর safetensors ফাইল আগে convert না করে Ollama বা llama.cpp-তে চালানো যায় না (llama.cpp-র convert_hf_to_gguf.py স্ক্রিপ্টটা এজন্যই)। নিয়ম: ট্রেনিং বা ইমেজ পাইপলাইন → safetensors; লোকাল চ্যাট ও সার্ভিং → GGUF। আপনার সার্চ “gguf vs safetensors” দিয়ে শুরু হয়ে থাকলে, এই ভাগটাই পুরো উত্তর।
কোন GGUF রানার ব্যবহার করবেন?
| রানার | সবচেয়ে ভালো যেখানে | ইনস্টল | GPU অফলোড | OpenAI-কম্প্যাটিবল API |
|---|---|---|---|---|
| Ollama | একবার সাজিয়ে ভুলে থাকা | curl one-liner | অটোমেটিক | আছে (:11434/v1) |
| llama.cpp | সর্বোচ্চ নিয়ন্ত্রণ, টাটকা ফিচার | বিল্ড বা প্যাকেজ ম্যানেজার | ম্যানুয়াল -ngl ডায়াল | আছে (llama-server) |
| LM Studio | ডেস্কটপ GUI, মডেল ঘোরাঘুরি | অ্যাপ ডাউনলোড | অটোমেটিক | আছে (লোকাল সার্ভার) |
| vLLM | ব্যাচড মাল্টি-ইউজার সার্ভিং | pip install vllm | অটোমেটিক | আছে (স্থানীয়) |
Ollama বাছুন যদি চান বুটে চালু হয়ে চোখের আড়ালেই চলে — আমার হোমল্যাব-এ নেটওয়ার্কের সবাইকে মডেল সার্ভ করে এটাই। llama.cpp বাছুন যখন ফিচারটা মুক্তির দিনেই লাগবে (নতুন আর্কিটেকচার ওখানেই আসে আগে) বা লেয়ার-লেভেল মেমরি নিয়ন্ত্রণ চান। GUI চাইলে LM Studio। vLLM কেবল তখন, যখন এক মডেলকে অনেক concurrent ব্যবহারকারীকে সার্ভ করতে হবে — এর GGUF সমর্থন চলে, কিন্তু স্থানীয় ফরম্যাটের পাশে দ্বিতীয় শ্রেণির।
GGUF মডেল লোডই হচ্ছে না কেন?
বেশিরভাগ কেস ঢেকে দেওয়া চারটা error:
unknown model architecture— GGUF-টা এমন আর্কিটেকচারে বানানো, যা আপনার রানটাইমের পরে এসেছে (নতুন MoE আর ভিশন মডেল নিত্যই আসে)। Ollama আপডেট করুন বা llama.cpp নতুন করে বিল্ড করুন; অন্য কোনো সমাধান নেই।- লোডের সময় out of memory — quant আপনার VRAM প্লাস context-এর জন্য বড়। এক ধাপ নামান (
Q4_K_M→Q3_K_M),-nglকমান, বা-c 4096দিয়ে context ছোট করুন। - Download truncated / corrupt — GGUF লোড magic-number বা মেটাডেটা error দেয়। আবার নামান, Hugging Face পাতায় দেওয়া SHA256-এর সাথে মেলান।
ollama run ./model.ggufঅস্বীকার করে — স্বাভাবিক: Ollama-রrunফাইল-পাথ নয়, মডেল নাম নেয়। ওপরে দেখানো Modelfile পথটা ব্যবহার করুন।
শেষ একটা দিক: লোকাল GGUF এন্ডপয়েন্ট এজেন্টিক কোডিং টুলের সাথে দারুণ জোড়া — OpenAI-কম্প্যাটিবল ক্লায়েন্টকে এদিকে ধরান, কমপ্লিশনের দাম হয় কেবল বিদ্যুৎ। এই গাইডের প্লাম্বিং ঠিক হলে কোন মডেল সেই আসনের যোগ্য, তা পরীক্ষা করেছে কোডিংয়ের সেরা লোকাল LLM।
— mrsaynothing
— mrsaynothing
AI, Linux ও self-hosting নিয়ে ফিল্ড নোটস।
পোস্টটি নিয়ে dev.to-তে আলোচনা করুন dev.to ↗
পরের হাউ-টু ইমেইলে পান
প্রতি পোস্টে একটি ইমেইল। সমাধান করুন, এগিয়ে যান।
এটা কী?Git Sync Fork With Upstream: 3টি নিরাপদ পদ্ধতি
লেখাগুলো ভালো লাগছে? এমন জিনিস বানানোই আমার পেশা। আমাকে নিন