whatmodel.sh / Granite 3.1 2B Instruct

Granite 3.1 2B Instruct is an open-weights language model from IBM, released December 2024. Its published size is 2.53B parameters and a 128k-token context window. Licence: apache-2.0.

Catalogue identity notes

Arena entry 'granite-3.1-2b-instruct' (text). LMArena's leaderboard table (arena-leaderboard space @6f2eeeb) labels 'granite-3.1-2b-instruct' as 'Granite-3.1-2B-Instruct' (IBM, Apache 2.0), linking https://huggingface.co/ibm-granite/granite-3.1-2b-instruct. Maker repo ibm-granite/granite-3.1-2b-instruct @bbc2aed: licence tag apache-2.0. 2,533,531,648 parameters from the Hugging Face safetensors metadata (dense, so active = total). Released 2024-12: month the maker's Hugging Face repo was created (createdAt 2024-12-06).

36.2±1.0#587 of 719 LLMsfrom 18 benchmark results across 5 sources

$ how it compares

The LLMs ranked either side of Granite 3.1 2B Instruct, out of 828 with a score, then more from IBM.

#modelscorewhereRAMreleased
678Zephyr 7B alpha Hugging Face36±1local~6.1GB2023-10
679Vicuna 13B v1.5 LMSYS36±2local~9.8GB2023-08
680Granite 3.1 2B Instruct IBM36±1local~3.1GB2024-12
681EXAONE 3.5 2.4B Instruct LG AI Research36±2local~3GB2024-12
682LLaMA 33B Meta36±1comparison only2023-02
more from IBM
192Granite 4.2 30B IBM63±1api $0.28/M +local~19GB2026-08
239Granite 4.2 8B IBM60±1api $0.11/M +local~6.6GB2026-08
276Granite 4.2 3B IBM57±1api $0.052/M +local~3.7GB2026-08

see all LLMs · find the ones that fit your machine

$ what it's good at

chat & writing▁▁▁▃▅▄▅█▆▆▇▃ #325 of 393 · 17% of its score · 3 tests

Beats OpenThinker3 7B, Gemma 4 E2B, Code Llama 70B Instruct here, though they rank higher overall. Trails LFM2 350M, Gemma 3 1B, Flan-T5 XXL here, though they rank lower overall.

testresultvs the others in its rundifficultycountswhy
LMArena (text)1178.8 ✎▁▁▁▂▃▃▃▆▆▇█▃ beats 55/379avg 1268▇▇▇ 8.1%blunt
IFEval (aggregation unspecified) lab +163.6% ✎▄▄·▄······▄█ beats 1/5easy · avg 79%▇▇ 5.8%at its level · several runs
Arena-Hard (version/judge unspecified) lab23.3% ✎█·▄··▄·····█ beats 0/5medium · avg 58%▇ 3.2%at its level
math▁▂▃▅▆▅▄█▄▁▁▁ #355 of 398 · 31% of its score · 3 tests

Beats Yi 34B Chat, Llama 3 8B Instruct, Command R (03-2024) here, though they rank higher overall. Trails Gemma 3 1B, Qwen3 0.6B, Tulu 2 DPO 7B here, though they rank lower overall.

testresultvs the others in its rundifficultycountswhy
GSM8K lab +167.5% ✎█··▄·····▄·█ beats 1/5very easy · avg 90%▇▇▇▇▇▇▇▇▇ 22%sharp · at its level · several runs
MATH-500 lab35.1% ✎█···▄·▄▄···▄ beats 0/5easy · avg 74%▇▇ 5.1%at its level
AIME 2024 lab0.9% ✎█···▄▄▄····▄ beats 1/5very hard · avg 11%▇▇ 4.0%sharp · too hard for it
other tests9 not in a task · 52% of its score
testresultvs the others in its rundifficultycountswhy
MMLU lab +157.1% ✎▄█········▄█ beats 1/5easy · avg 78%▇▇▇▇ 10%at its level · several runs
BIG-Bench Hard lab61.8% ✎█·▄·····▄▄·▄ beats 1/5easy · avg 84%▇▇▇▇ 8.9%sharp · at its level
ARC Challenge lab54.6% ✎▆▁▁▂▂▅▇█▄▃▃▂ beats 64/97easy · avg 82%▇▇▇▇ 8.8%sharp · at its level
CPTUB average (SpeakLeash, 0-5 judge scale)38.9% ✎▁▃▂▂▃█▃▆▅▄▂▃ beats 7/95easy · avg 66%▇▇ 6.0%at its level
DROP lab21.0% ✎▃▃·····▃···█ beats 0/5easy · avg 68%▇▇ 5.6%at its level
WinoGrande lab67.5% ✎▁···▂▁▁▅█▇▃▁ beats 52/87easy · avg 84%▇▇ 5.5%at its level
HellaSwag lab75.1% ✎▁▁▁▁▂▂▃▇█▆▅▃ beats 55/85very easy · avg 89%▇▇ 3.9%at its level
PopQA lab20.5% ✎▄·█······▄·█ beats 1/5hard · avg 34%▇ 2.4%blunt
1 more test
testresultvs the others in its rundifficultycountswhy
Vectara hallucination leaderboard, 2025 dataset (HHEM-2.3, factual consistency rate)84.3% ✎▁▁▃▃▄▄█▆▃▂▂▁ beats 13/140very easy · avg 94%▇ 0.9%blunt · noisy

$ where to run it

llama.cpp · recommended

version

  1. Install llama.cpp · Homebrew and winget installs name the commands llama-cli and llama-server instead.
    macOS / Linux
    curl -LsSf https://llama.app/install.sh | sh
    Windows
    irm https://llama.app/install.ps1 | iex

    other ways to install ↗

  2. Run Granite 3.1 2B Instruct · needs ~1.5 GB · from huggingface.co/lmstudio-community
    chat in the terminal
    llama cli -hf lmstudio-community/granite-3.1-2b-instruct-GGUF:Q4_K_M
  3. Or start a local server and open the address it prints (http://localhost:9931)
    llama serve -hf lmstudio-community/granite-3.1-2b-instruct-GGUF:Q4_K_M

LM Studio

version

  1. Install LM Studio · Open the app once before using the lms command.

    download it (macOS / Windows / Linux) ↗

  2. Run Granite 3.1 2B Instruct · needs ~1.5 GB · from huggingface.co/lmstudio-community

    open in LM Studio ↗

  3. Or download it in the terminal
    lms get https://huggingface.co/lmstudio-community/granite-3.1-2b-instruct-GGUF@Q4_K_M -y
  4. Then run lms ls to see its name, and lms chat followed by that name

Ollama

version

  1. Install Ollama

    download it (macOS / Windows) ↗

    Linux
    curl -fsSL https://ollama.com/install.sh | sh
  2. Run Granite 3.1 2B Instruct · needs ~2.02 GB · from ollama.com
    chat in the terminal
    ollama run granite3.1-dense:2b-instruct-q4_K_M

Weights and documentation: huggingface.co/ibm-granite ↗

$ how the score was worked out · ibm-granite/granite-3.3-8b-in… 52%, ibm-granite/granite-3.1-3b-a8… 32%, LMArena leaderboard dataset 8% and 2 more

Each result implies a score on its own, after adjusting for how hard its test is and who ran it. The score is their weighted average, with a small pull toward the middle for thinly tested models. Each test's weight is its counts column above; here it's added up by who ran the tests. How it works

sourceresultsshare of the scorelicence
ibm-granite/granite-3.3-8b-instruct model card · lab-reported9▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 52%Apache-2.0
ibm-granite/granite-3.1-3b-a800m-instruct model card · lab-reported6▇▇▇▇▇▇▇▇▇▇ 32%Apache-2.0
LMArena leaderboard dataset1▇▇ 8%CC BY 4.0
SpeakLeash CPTUB (Complex Polish Text Understanding Benchmark)1▇▇ 6%MIT
Vectara hallucination leaderboard (vectara/hallucination-leaderboard repository)1▇ 1%Apache-2.0
prior · pull toward the middle▇ 0%
weighted average= 36.2

$ improve this page

Use a short GitHub form or edit the data through a pull request. Every number needs a source; here's which ones we can use.

data updated · sources and licences · json