deepseek-ai
DeepSeek-R1-0528
684.5B parameters · mixture-of-experts · reasoning · Reasoning · DeepSeek family
Recommended download
Which version should I download?
Default pick: GGUF · UD-Q2_K_XL — Unsloth UD-Q2_K_XL dynamic 2-bit quant of DeepSeek-R1-0528 (684.531B total, 256-expert MoE) — recommended balanced pick. MIT.
Set your rig to confirm it fits and to see if a higher-quality quant runs fully on your hardware.
| Format | Level | Size | Verdict | Est. speed | Quality note | Swarm | Download |
|---|---|---|---|---|---|---|---|
| GGUF | UD-Q2_K_XL | 233.86 GB | Set your rig | — | Unsloth UD-Q2_K_XL dynamic 2-bit quant of DeepSeek-R1-0528 (684.531B total, 256-expert MoE) — recommended balanced pick. MIT. | 1S / 0L webseed OK |
GGUF · UD-Q2_K_XL
233.86 GB
- Est. speed
- —
- Swarm
- 1S / 0L webseed OK
Unsloth UD-Q2_K_XL dynamic 2-bit quant of DeepSeek-R1-0528 (684.531B total, 256-expert MoE) — recommended balanced pick. MIT.
Want a different quant? Request it on the board →
Runs fully on
Green = the model's best quant fits fully in GPU/unified memory at 8K context. Tap a card for its full "what runs on it" page.
Context
Advertised 160k · usable ≈ 64–128k (measured — LongBench v2)
How we know
Evidence grade: measured — a published evaluation we can cite, with task and length stated.
- LongBench v2 leaderboard — observed Jul 18, 2026
- DeepSeek-R1-0528 release note — observed Jul 18, 2026
LongBench v2 leaderboard: 56.7 overall w/ CoT; long bucket 51.4 — lower than original R1 (59.3). Release note publishes no context statements.
Reviewed on Jul 18, 2026.
Run it
Runtime completeness (UD-Q2_K_XL torrent): llama.cpp ✅ Ollama – vision sidecar –
- – Ollama — runs the GGUF directly; no Modelfile bundled
- – vision sidecar — not a vision model
Context / KV 8,192 tokens · FP16 set above the quant table
Generic commands (no rig set). GPU-offload values assume the model fits on your GPU — set your rig for values tuned to your hardware.
llama-server -m DeepSeek-R1-0528-UD-Q2_K_XL-00001-of-00006.gguf -c 8192 -ngl 999
Use llama-cli in place of llama-server for a one-shot prompt. This model compresses its KV cache, but only on llama.cpp b5137 (April 2025) or newer AND a GGUF converted after that date. Older files -- including some still-popular DeepSeek-R1 and V3-0324 quants -- fall back to the uncompressed layout and use about 5 MB per token instead of 70 KB. Check the quant repo date if long context is the point.
FROM ./DeepSeek-R1-0528-UD-Q2_K_XL-00001-of-00006.gguf
PARAMETER num_ctx 8192
PARAMETER num_gpu 999
PARAMETER stop "<|end▁of▁sentence|>"
PARAMETER temperature 0.6
PARAMETER top_p 0.95
# Chat template: Ollama uses the template embedded in the GGUF (no TEMPLATE directive needed).
ollama create deepseek-ai-deepseek-r1-0528 -f Modelfile
ollama run deepseek-ai-deepseek-r1-0528
GGUF is not a first-class vLLM format.
vLLM GGUF support is experimental and single-file only; prefer safetensors/GPTQ/AWQ for production. If you must, pass the .gguf path to `vllm serve` with --load-format gguf on a recent vLLM.
transformers does not load GGUF weights.
GGUF weights run under llama.cpp, Ollama or LM Studio.
Load DeepSeek-R1-0528-UD-Q2_K_XL-00001-of-00006.gguf, set the context length to 8192 tokens. Set GPU offload to Max (all layers).
MLX runs MLX-format weights only (Apple Silicon). This quant is a GGUF build.
GGUF weights run under llama.cpp, Ollama or LM Studio.
Technical details
Chat template
{% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% set ns = namespace(is_first=false, is_tool=false, is_output_first=true, system_prompt='', is_first_sp=true, is_last_user=false) %}{%- for message in messages %}{%- if message['role'] == 'system' %}{%- if ns.is_first_sp %}{% set ns.system_prompt = ns.system_prompt + message['content'] %}{% set ns.is_first_sp = false %}{%- else %}{% set ns.system_prompt = ns.system_prompt + '
' + message['content'] %}{%- endif %}{%- endif %}{%- endfor %}{{ bos_token }}{{ ns.system_prompt }}{%- for message in messages %}{% set content = message['content'] %}{%- if message['role'] == 'user' %}{%- set ns.is_tool = false -%}{%- set ns.is_first = false -%}{%- set ns.is_last_user = true -%}{{'<|User|>' + content + '<|Assistant|>'}}{%- endif %}{%- if message['role'] == 'assistant' %}{% if '</think>' in content %}{% set content = content.split('</think>')[-1] %}{% endif %}{% endif %}{%- if message['role'] == 'assistant' and message['tool_calls'] is defined and message['tool_calls'] is not none %}{%- set ns.is_last_user = false -%}{%- if ns.is_tool %}{{'<|tool▁outputs▁end|>'}}{%- endif %}{%- set ns.is_first = false %}{%- set ns.is_tool = false -%}{%- set ns.is_output_first = true %}{%- for tool in message['tool_calls'] %}{%- if not ns.is_first %}{%- if content is none %}{{'<|tool▁calls▁begin|><|tool▁call▁begin|>' + tool['type'] + '<|tool▁sep|>' + tool['function']['name'] + '
' + '```json' + '
' + tool['function']['arguments'] + '
' + '```' + '<|tool▁call▁end|>'}}{%- else %}{{content + '<|tool▁calls▁begin|><|tool▁call▁begin|>' + tool['type'] + '<|tool▁sep|>' + tool['function']['name'] + '
' + '```json' + '
' + tool['function']['arguments'] + '
' + '```' + '<|tool▁call▁end|>'}}{%- endif %}{%- set ns.is_first = true -%}{%- else %}{{'
' + '<|tool▁call▁begin|>' + tool['type'] + '<|tool▁sep|>' + tool['function']['name'] + '
' + '```json' + '
' + tool['function']['arguments'] + '
' + '```' + '<|tool▁call▁end|>'}}{%- endif %}{%- endfor %}{{'<|tool▁calls▁end|><|end▁of▁sentence|>'}}{%- endif %}{%- if message['role'] == 'assistant' and (message['tool_calls'] is not defined or message['tool_calls'] is none)%}{%- set ns.is_last_user = false -%}{%- if ns.is_tool %}{{'<|tool▁outputs▁end|>' + content + '<|end▁of▁sentence|>'}}{%- set ns.is_tool = false -%}{%- else %}{{content + '<|end▁of▁sentence|>'}}{%- endif %}{%- endif %}{%- if message['role'] == 'tool' %}{%- set ns.is_last_user = false -%}{%- set ns.is_tool = true -%}{%- if ns.is_output_first %}{{'<|tool▁outputs▁begin|><|tool▁output▁begin|>' + content + '<|tool▁output▁end|>'}}{%- set ns.is_output_first = false %}{%- else %}{{'
<|tool▁output▁begin|>' + content + '<|tool▁output▁end|>'}}{%- endif %}{%- endif %}{%- endfor -%}{% if ns.is_tool %}{{'<|tool▁outputs▁end|>'}}{% endif %}{% if add_generation_prompt and not ns.is_last_user and not ns.is_tool %}{{'<|Assistant|>'}}{% endif %}
Sampling defaults
- top_p
- 0.95
- temperature
- 0.6
Stop strings
<|end▁of▁sentence|>
Evidence & provenance
Source
- Revision pin
-
4236a6af538feda4548eca9ab308586007567f52 - Manifest
- Present
License
- Name
- mit
- Commercial use
- yes
- Access
- Open
File hashes (SHA-256)
-
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00001-of-00006.gguf
89f68bb6419306d71d6673868c86166161e4789426641a8059de2a7591c377d8 -
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00002-of-00006.gguf
2233f06c0d12548b5c23a06c6602645b19707f7c780a7eaa29667847e7f2cca9 -
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00003-of-00006.gguf
1346d009eed02e1c94f2446e805cb2e96528c66fefd63d1176c50a1ea3b06db7 -
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00004-of-00006.gguf
4fc7fbc476358469c4c0932d28af6e5867ec33cf803cbc9d1d56c47b20e45686 -
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00005-of-00006.gguf
1443d966973cc0d63e262edcb94dfde9c8be2951043588a023e02ebf6c07c3a4 -
deepseek-r1-0528-ud-q2-k-xl/DeepSeek-R1-0528-UD-Q2_K_XL-00006-of-00006.gguf
43b00c3a057a438e215f9fdca19787fb4e18701cdf7bc054585cb6014d168f96 -
deepseek-r1-0528-ud-q2-k-xl/LICENSE
f2c6c602815669d292889e5be8c802f2ed950653b77999b1584e8e6aed25d040 -
deepseek-r1-0528-ud-q2-k-xl/README.md
aac62a327dcc249441b491b49855a9c69c5122b1b69a34de69983155da318e84
Explore further
Get an email when a better quant fits your rig.
Set your rig once; we'll alert you when a new or better-fitting build lands.
Performance reports
Real-world throughput reported by the community (and scraped sources).
Community
Reviews, sampler presets and community runtime reports. Be the first to contribute.
Community runtime reports
Unofficial, community-submitted "it loads for me" reports. These are not the official verified-working badge — an admin reviews reports before anything is marked officially verified.
Log in to report whether a quant loads in your runtime.
No community reports yet.