# Granite 4.2 30B (slim)

> Granite 4.2 30B is IBM's open-weight dense reasoning model of 29.3B parameters, post-trained from Granite 4.1 30B Base, with switchable thinking, tool calling and a 131,072-token context, published in BF16, FP8, FP4, GGUF and MLX under Apache 2.0.

- Full: https://www.anchorterminal.com/tools/granite-4-2-30b.md (~10,450 tokens) · this version ~1,830 tokens · JSON https://www.anchorterminal.com/tools/granite-4-2-30b.json · canonical https://www.anchorterminal.com/tools/granite-4-2-30b
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-10 · pricing https://www.anchorterminal.com/tools/granite-4-2-30b#pricing · reviews https://www.anchorterminal.com/tools/granite-4-2-30b#reviews
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

**C · 61/100 · rank #60 of 135 open-weight models · #50 in Open-weight models · not agent-ready · confidence low**


Assessment: IBM's largest reasoning cousin, with the same strengths as the 3B. It runs in every runtime we count from IBM's own builds on a 24 GB card, is signed, plain Apache 2.0, and comes with a disclosure of its training data. No safety results are published and structured output isn't documented.

## Facts

- Kind: Open-weight model · vendor: IBM · category: Open-weight models · legal entity: International Business Machines Corporation (per IBM's naming guidance, as read for granite-guardian) · provenance 88/100
- Packages: huggingface `ibm-granite/granite-4.2-30b`, huggingface `ibm-granite/granite-4.2-30b-GGUF`, huggingface `ibm-granite/granite-4.2-30b-fp8`, huggingface `ibm-granite/granite-4.2-30b-mxfp4`, huggingface `ibm-granite/granite-4.2-30b-nvfp4`, huggingface `ibm-granite/granite-4.2-30b-q4-mlx`, ollama `granite4.2:30b`
- Auth: None · pricing: Free · x402: no · licence: Apache-2.0
- Benchmark probes: not run yet, so Performance is pending
- Surface graded: The open weights at huggingface.co/ibm-granite/granite-4.2-30b with IBM's FP8, MXFP4, NVFP4, GGUF and MLX builds, read from the model card, the files and their metadata, the chat template, IBM's disclosure file for this size, Ollama's library and the runtimes' own code at their latest releases on 10 November 2026. IBM's docs, blog, licence and security.txt were read for the 3B listing on 21 October and 4 November. Nothing was downloaded or run
- Model: A dense decoder-only transformer (GraniteForCausalLM), 64 layers, hidden size 4,096, 32 attention heads with 8 KV heads, SwiGLU (32,768), RoPE with theta 50,000,000 and separate input and output embeddings. 29,276,770,304 parameters per the Hub; the card says 30B. Post-trained from IBM's own granite-4.1-30b-base
- Languages: English, German, Spanish, French, Japanese, Portuguese, Arabic, Czech, Italian, Korean, Dutch and Chinese tested, per the card
- Context: 131,072 tokens per the card (natively 128K) and config.json (max_position_embeddings 131072). The card also names a long-context extension to 512K, without saying how to turn it on
- Tools and reasoning: Tools are declared with OpenAI's function schema and listed in a system turn inside <tools>. Calls come back as <tool_call><function=name><parameter=key>value</parameter></function></tool_call>, several per turn, and the card names the qwen3_coder parser for vLLM and SGLang. Thinking is on by default inside <think>, enable_thinking false turns it off and low_effort true shortens it, and SGLang returns it in reasoning_content
- Files: Eleven safetensors shards, 58.55 GB in BF16, a chat_template.jinja, granite_thinking_parser.py (a vLLM reasoning-parser plugin) and model.sig, a sigstore signature. No pickle files. Hugging Face lists a SHA-256 for every shard
- Licence: Apache 2.0, per the card, the metadata and the GitHub repository's LICENSE. No LICENSE file in the Hugging Face repository. The base, granite-4.1-30b-base, is IBM's own under Apache 2.0
- Runtimes: Transformers (granite), vLLM (GraniteForCausalLM in the 0.33.0 registry), SGLang (granite.py at 0.5.23), llama.cpp (granite, with IBM's GGUF) and Ollama's library (granite4.2:30b). LM Studio's organisation on the Hub also publishes a GGUF of it
- Hardware: No memory figure on the card. The BF16 files are 58.5 GB, IBM's FP8 build 30.1 GB, its MXFP4 and NVFP4 builds 16.8 and 17.6 GB, its Q4_K_M GGUF 17.7 GB and its 4-bit MLX build 16.5 GB
- Training data: IBM's disclosure file for this size lists the datasets used in pre-training and post-training with their metadata, released as a governance record on 3 September 2026. The card describes the three training stages, pre-training, supervised fine-tuning and reinforcement learning

- Scores: Capability pending, Reach 90, Risk 55, Agent interface 85, Documentation and upkeep 87 · total over the 7 assessed categories
- Why:  · Reach, Memory 25, IBM's own 4-bit MLX build granite-4.2-30b-q4-mlx is 16.47 GB, and 16.47 GB × 1.2 = 19.8 GB, which fits 24 GB but not 16 GB. · Risk, File safety 15, safetensors only, no .bin, .pt or .pth files (25). · Agent interface, Chat template 20, chat_template.jinja in the repository, with roles, tools, tool responses, the thinking switch and low effort. · Documentation and upkeep, Model card 17, Intended use (best for), limitations (ethical considerations and limitations), architecture, parameters (30B), context length…
- Sources: 19, open questions: 5, both in the full twin
- Capabilities: model.open-weights
- JSON: https://www.anchorterminal.com/api/v1/tools/granite-4-2-30b.json
- Its vendor verifies the listing with `verify_listing` or `POST https://www.anchorterminal.com/api/v1/verify` (the full twin says how); no effect on the grade.
- Support: https://huggingface.co/ibm-granite/granite-4.2-30b/discussions; https://github.com/ibm-granite/granite-4.2-language-models/issues; more in the full twin

## Before you call it

1. Start it with `ollama run granite4.2:30b`, or `llama-server -hf ibm-granite/granite-4.2-30b-GGUF:Q4_K_M --jinja`
2. With vLLM 0.32.0 or later leave out `--reasoning-parser-plugin`, since the parser is built in, and use `--tool-call-parser qwen3_coder`
3. Thinking is on by default. Pass `enable_thinking` false to turn it off or `low_effort` true for short reasoning
4. The context is 131,072 tokens. The card's 512K extension isn't documented
5. Validate JSON output yourself, since structured output isn't documented
6. IBM recommends Granite Guardian beside it to flag risky inputs and outputs

## Connect

```bash
ollama run granite4.2:30b
# or, with llama.cpp and IBM's own GGUF:
llama-server -hf ibm-granite/granite-4.2-30b-GGUF:Q4_K_M --jinja
# or, with vLLM 0.32.0 or later:
vllm serve ibm-granite/granite-4.2-30b --max-model-len 131072 \
  --reasoning-parser granite_thinking_parser \
  --tool-call-parser qwen3_coder --enable-auto-tool-choice
```

```bash
curl http://localhost:11434/api/chat \
  -d '{"model": "granite4.2:30b", "messages": [{"role": "user", "content": "Hello!"}]}'
```

## Similar tools

| Tool | Grade | Score | Shared capabilities | Slim |
| --- | --- | --- | --- | --- |
| Qwen3-Embedding-8B | BB | 75.4 | model.open-weights | https://www.anchorterminal.com/tools/qwen3-embedding-8b.min.md |
| Gemma 4 31B IT | BB | 74.1 | model.open-weights | https://www.anchorterminal.com/tools/gemma-4-31b-it.min.md |
| Qwen3-Embedding-4B | BB | 73.6 | model.open-weights | https://www.anchorterminal.com/tools/qwen3-embedding-4b.min.md |
| Gemma 4 12B IT | BB | 72.3 | model.open-weights | https://www.anchorterminal.com/tools/gemma-4-12b-it.min.md |
| Gemma 4 26B A4B IT | BB | 72.2 | model.open-weights | https://www.anchorterminal.com/tools/gemma-4-26b-a4b-it.min.md |


## Panel reviews (0, desk reviews from public material, no calls made)

