Instructions to use leafspark/DeepSeek-V2-Chat-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use leafspark/DeepSeek-V2-Chat-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="leafspark/DeepSeek-V2-Chat-GGUF") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("leafspark/DeepSeek-V2-Chat-GGUF", dtype="auto") - llama-cpp-python
How to use leafspark/DeepSeek-V2-Chat-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="leafspark/DeepSeek-V2-Chat-GGUF", filename="DeepSeek-V2-Chat.bf16.gguf/DeepSeek-V2-Chat.bf16.part-01-of-22.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use leafspark/DeepSeek-V2-Chat-GGUF with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
Use Docker
docker model run hf.co/leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use leafspark/DeepSeek-V2-Chat-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "leafspark/DeepSeek-V2-Chat-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "leafspark/DeepSeek-V2-Chat-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
- SGLang
How to use leafspark/DeepSeek-V2-Chat-GGUF with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "leafspark/DeepSeek-V2-Chat-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "leafspark/DeepSeek-V2-Chat-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "leafspark/DeepSeek-V2-Chat-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "leafspark/DeepSeek-V2-Chat-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use leafspark/DeepSeek-V2-Chat-GGUF with Ollama:
ollama run hf.co/leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
- Unsloth Studio new
How to use leafspark/DeepSeek-V2-Chat-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for leafspark/DeepSeek-V2-Chat-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for leafspark/DeepSeek-V2-Chat-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for leafspark/DeepSeek-V2-Chat-GGUF to start chatting
- Docker Model Runner
How to use leafspark/DeepSeek-V2-Chat-GGUF with Docker Model Runner:
docker model run hf.co/leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
- Lemonade
How to use leafspark/DeepSeek-V2-Chat-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull leafspark/DeepSeek-V2-Chat-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.DeepSeek-V2-Chat-GGUF-Q4_K_M
List all available models
lemonade list
llama_model_load: error loading model: error loading model vocabulary: wstring_convert::from_bytes
I am using the llama.cpp b3026, but I encountered the following issue:
E:/WorkingArea/llama_cpp/llama.cpp $ main --override-kv deepseek2.attention.q_lora_rank=int:1536 --override-kv deepseek2.attention.kv_lora_rank=int:512 --override-kv deepseek2.expert_shared_count=int:2 --override-kv deepseek2.expert_weights_scale=float:16 --override-kv deepseek2.expert_feed_forward_length=int:1536 --override-kv deepseek2.leading_dense_block_count=int:1 --override-kv deepseek2.rope.scaling.yarn_log_multiplier=float:0.0707 -m E:/model_tmps/DeepSeek-V2-Chat.q4_k_m.split-00001-of-00008.gguf -c 128 --color -i
Log start
main: build = 3026 (5442939f)
main: built with cc (GCC) 14.1.0 for x86_64-w64-mingw32
main: seed = 1717598755
llama_model_loader: additional 7 GGUFs metadata loaded.
llama_model_loader: loaded meta data with 35 key-value pairs and 959 tensors from E:/model_tmps/DeepSeek-V2-Chat.q4_k_m.split-00001-of-00008.gguf (version GGUF V3 (latest))
llama_model_loader: Dumping metadata keys/values. Note: KV overrides do not apply in this output.
llama_model_loader: - kv 0: general.architecture str = deepseek2
llama_model_loader: - kv 1: general.name str = Deepseek-V2-Chat
llama_model_loader: - kv 2: deepseek2.block_count u32 = 60
llama_model_loader: - kv 3: deepseek2.context_length u32 = 163840
llama_model_loader: - kv 4: deepseek2.embedding_length u32 = 5120
llama_model_loader: - kv 5: deepseek2.feed_forward_length u32 = 12288
llama_model_loader: - kv 6: deepseek2.attention.head_count u32 = 128
llama_model_loader: - kv 7: deepseek2.attention.head_count_kv u32 = 128
llama_model_loader: - kv 8: deepseek2.rope.freq_base f32 = 10000.000000
llama_model_loader: - kv 9: deepseek2.attention.layer_norm_rms_epsilon f32 = 0.000001
llama_model_loader: - kv 10: deepseek2.expert_used_count u32 = 6
llama_model_loader: - kv 11: general.file_type u32 = 15
llama_model_loader: - kv 12: deepseek2.vocab_size u32 = 102400
llama_model_loader: - kv 13: deepseek2.rope.dimension_count u32 = 64
llama_model_loader: - kv 14: deepseek2.rope.scaling.type str = yarn
llama_model_loader: - kv 15: deepseek2.rope.scaling.factor f32 = 40.000000
llama_model_loader: - kv 16: deepseek2.rope.scaling.original_context_length u32 = 4096
llama_model_loader: - kv 17: deepseek2.attention.key_length u32 = 192
llama_model_loader: - kv 18: deepseek2.attention.value_length u32 = 128
llama_model_loader: - kv 19: deepseek2.expert_count u32 = 160
llama_model_loader: - kv 20: tokenizer.ggml.model str = gpt2
llama_model_loader: - kv 21: tokenizer.ggml.pre str = deepseek-llm
llama_model_loader: - kv 22: tokenizer.ggml.tokens arr[str,102400] = ["!", "\"", "#", "$", "%", "&", "'", ...
llama_model_loader: - kv 23: tokenizer.ggml.token_type arr[i32,102400] = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
llama_model_loader: - kv 24: tokenizer.ggml.merges arr[str,99757] = ["Ġ Ġ", "Ġ t", "Ġ a", "i n", "h e...
llama_model_loader: - kv 25: tokenizer.ggml.bos_token_id u32 = 100000
llama_model_loader: - kv 26: tokenizer.ggml.eos_token_id u32 = 100001
llama_model_loader: - kv 27: tokenizer.ggml.padding_token_id u32 = 100001
llama_model_loader: - kv 28: tokenizer.ggml.add_bos_token bool = true
llama_model_loader: - kv 29: tokenizer.ggml.add_eos_token bool = false
llama_model_loader: - kv 30: tokenizer.chat_template str = {% if not add_generation_prompt is de...
llama_model_loader: - kv 31: general.quantization_version u32 = 2
llama_model_loader: - kv 32: split.no u16 = 0
llama_model_loader: - kv 33: split.count u16 = 8
llama_model_loader: - kv 34: split.tensors.count i32 = 959
llama_model_loader: - type f32: 300 tensors
llama_model_loader: - type q4_K: 599 tensors
llama_model_loader: - type q6_K: 60 tensors
validate_override: Using metadata override ( int) 'deepseek2.leading_dense_block_count' = 1
validate_override: Using metadata override ( int) 'deepseek2.attention.q_lora_rank' = 1536
validate_override: Using metadata override ( int) 'deepseek2.attention.kv_lora_rank' = 512
validate_override: Using metadata override ( int) 'deepseek2.expert_feed_forward_length' = 1536
validate_override: Using metadata override ( int) 'deepseek2.expert_shared_count' = 2
validate_override: Using metadata override (float) 'deepseek2.expert_weights_scale' = 16.000000
validate_override: Using metadata override (float) 'deepseek2.rope.scaling.yarn_log_multiplier' = 0.070700
llama_model_load: error loading model: error loading model vocabulary: wstring_convert::from_bytes
llama_load_model_from_file: failed to load model
llama_init_from_gpt_params: error: failed to load model 'E:/model_tmps/DeepSeek-V2-Chat.q4_k_m.split-00001-of-00008.gguf'
main: error: unable to load model
Supplement: After downloading the Q4km model
Try the Q3_K_M, I generated the Q4 a while ago so it might be outdated.
It does not work :
(base) jiyin@jiyin:/media/jiyin/ResearchSpace1/llama.cpp$ ./main -m ../Deepseek-v2-chat-236B/DeepSeek-V2-Chat.Q3_K_M-00001-of-00006.gguf -p "hello"
Log start
main: build = 3026 (5442939f)
main: built with cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 for x86_64-linux-gnu
main: seed = 1717798418
llama_model_loader: additional 5 GGUFs metadata loaded.
llama_model_loader: loaded meta data with 46 key-value pairs and 959 tensors from ../Deepseek-v2-chat-236B/DeepSeek-V2-Chat.Q3_K_M-00001-of-00006.gguf (version GGUF V3 (latest))
llama_model_loader: Dumping metadata keys/values. Note: KV overrides do not apply in this output.
llama_model_loader: - kv 0: general.architecture str = deepseek2
llama_model_loader: - kv 1: general.name str = Deepseek-V2-Chat
llama_model_loader: - kv 2: deepseek2.block_count u32 = 60
llama_model_loader: - kv 3: deepseek2.context_length u32 = 163840
llama_model_loader: - kv 4: deepseek2.embedding_length u32 = 5120
llama_model_loader: - kv 5: deepseek2.feed_forward_length u32 = 12288
llama_model_loader: - kv 6: deepseek2.attention.head_count u32 = 128
llama_model_loader: - kv 7: deepseek2.attention.head_count_kv u32 = 128
llama_model_loader: - kv 8: deepseek2.rope.freq_base f32 = 10000.000000
llama_model_loader: - kv 9: deepseek2.attention.layer_norm_rms_epsilon f32 = 0.000001
llama_model_loader: - kv 10: deepseek2.expert_used_count u32 = 6
llama_model_loader: - kv 11: general.file_type u32 = 12
llama_model_loader: - kv 12: deepseek2.vocab_size u32 = 102400
llama_model_loader: - kv 13: deepseek2.rope.dimension_count u32 = 64
llama_model_loader: - kv 14: deepseek2.rope.scaling.type str = yarn
llama_model_loader: - kv 15: deepseek2.rope.scaling.factor f32 = 40.000000
llama_model_loader: - kv 16: deepseek2.rope.scaling.original_context_length u32 = 4096
llama_model_loader: - kv 17: deepseek2.attention.key_length u32 = 192
llama_model_loader: - kv 18: deepseek2.attention.value_length u32 = 128
llama_model_loader: - kv 19: deepseek2.expert_count u32 = 160
llama_model_loader: - kv 20: tokenizer.ggml.model str = gpt2
llama_model_loader: - kv 21: tokenizer.ggml.pre str = deepseek-llm
llama_model_loader: - kv 22: tokenizer.ggml.tokens arr[str,102400] = ["!", "\"", "#", "$", "%", "&", "'", ...
llama_model_loader: - kv 23: tokenizer.ggml.token_type arr[i32,102400] = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
llama_model_loader: - kv 24: tokenizer.ggml.merges arr[str,99757] = ["Ġ Ġ", "Ġ t", "Ġ a", "i n", "h e...
llama_model_loader: - kv 25: tokenizer.ggml.bos_token_id u32 = 100000
llama_model_loader: - kv 26: tokenizer.ggml.eos_token_id u32 = 100001
llama_model_loader: - kv 27: tokenizer.ggml.padding_token_id u32 = 100001
llama_model_loader: - kv 28: tokenizer.ggml.add_bos_token bool = true
llama_model_loader: - kv 29: tokenizer.ggml.add_eos_token bool = false
llama_model_loader: - kv 30: tokenizer.chat_template str = {% if not add_generation_prompt is de...
llama_model_loader: - kv 31: general.quantization_version u32 = 2
llama_model_loader: - kv 32: deepseek2.attention.q_lora_rank i32 = 1536
llama_model_loader: - kv 33: deepseek2.attention.kv_lora_rank i32 = 512
llama_model_loader: - kv 34: deepseek2.expert_shared_count i32 = 2
llama_model_loader: - kv 35: deepseek2.expert_weights_scale f32 = 16.000000
llama_model_loader: - kv 36: deepseek2.expert_feed_forward_length i32 = 1536
llama_model_loader: - kv 37: deepseek2.leading_dense_block_count i32 = 1
llama_model_loader: - kv 38: deepseek2.rope.scaling.yarn_log_multiplier f32 = 0.070700
llama_model_loader: - kv 39: quantize.imatrix.file str = imatrix.dat
llama_model_loader: - kv 40: quantize.imatrix.dataset str = groups_merged.txt
llama_model_loader: - kv 41: quantize.imatrix.entries_count i32 = 716
llama_model_loader: - kv 42: quantize.imatrix.chunks_count i32 = 62
llama_model_loader: - kv 43: split.no u16 = 0
llama_model_loader: - kv 44: split.count u16 = 6
llama_model_loader: - kv 45: split.tensors.count i32 = 959
llama_model_loader: - type f32: 300 tensors
llama_model_loader: - type q3_K: 479 tensors
llama_model_loader: - type q4_K: 174 tensors
llama_model_loader: - type q5_K: 5 tensors
llama_model_loader: - type q6_K: 1 tensors
llama_model_load: error loading model: error loading model hyperparameters: key deepseek2.leading_dense_block_count has wrong type i32 but expected type u32
llama_load_model_from_file: failed to load model
llama_init_from_gpt_params: error: failed to load model '../Deepseek-v2-chat-236B/DeepSeek-V2-Chat.Q3_K_M-00001-of-00006.gguf'
main: error: unable to load model
I know --override-kv should be added, but i want load this model in Ollama, so.
After multiple attempts, I found that regardless of the model (whether labeled as update or not), when running llama.cpp-b3026 or later versions, it is necessary to --override-kv these parameters, such as the difference between parameter types u32 and i32.
So, my question is: where do these parameter type differences come from? Do they occur during the conversion process or during the quantization process? If I operate based on your bf16 version, can I convert i32 to u32 when creating new model files?
Apologies for the late response; I was on vacation. For the i32 and u32 conversion error, I tried to add override kv flags into quantize, but for some reason it wrote those as i32 while it was supposed to be u32 (doesn’t fail though, so I didn’t notice). I’m not sure why it does this, probably because of a bug in llama.cpp, for which it’s probably best to open a bug report there.