Instructions to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="unsloth/Qwen3.5-397B-A17B-MTP-GGUF") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("unsloth/Qwen3.5-397B-A17B-MTP-GGUF", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-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 unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-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 unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Use Docker
docker model run hf.co/unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
- LM Studio
- Jan
- vLLM
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "unsloth/Qwen3.5-397B-A17B-MTP-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": "unsloth/Qwen3.5-397B-A17B-MTP-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
- SGLang
How to use unsloth/Qwen3.5-397B-A17B-MTP-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 "unsloth/Qwen3.5-397B-A17B-MTP-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": "unsloth/Qwen3.5-397B-A17B-MTP-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'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 "unsloth/Qwen3.5-397B-A17B-MTP-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": "unsloth/Qwen3.5-397B-A17B-MTP-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Ollama
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Ollama:
ollama run hf.co/unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
- Unsloth Desktop
- Pi
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Docker Model Runner:
docker model run hf.co/unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
- Lemonade
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Run and chat with the model
lemonade run user.Qwen3.5-397B-A17B-MTP-GGUF-UD-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use unsloth/Qwen3.5-397B-A17B-MTP-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "unsloth/Qwen3.5-397B-A17B-MTP-GGUF:UD-Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
1.40 to .48 token
I was hoping to go faster. But my 72gb vram and 64gb system ram went slower with mtp. Unless I did something wrong. The smaller models nearly doubled though line qwen 27b and 122b. I was wishing I could run this model.
I was hoping to go faster. But my 72gb vram and 64gb system ram went slower with mtp. Unless I did something wrong. The smaller models nearly doubled though line qwen 27b and 122b. I was wishing I could run this model.
MTP currently increases memory consumption. If a model previously barely fit in memory, then with MTP enabled, due to insufficient RAM it may start offloading to SSD, for example, resulting in performance degradation.
In my case, MTP improved token generation (TG) speed from 12 tokens/sec to 15 tokens/sec using draft=3. However, prompt processing (PP) speed dropped by almost half—from 150 tokens/sec down to 80 tokens/sec.
That's why I currently run two versions of the model: one with MTP and one without. For long prompts, I use the version without MTP (at least until they figure out how to optimize PP speed). For short prompts where the model needs to do extensive reasoning/generation, I switch to the MTP-enabled version.
before the merge I used https://github.com/ikawrakow/ik_llama.cpp
with setting like:
@echo off
"E:\llama_ai\llama_ikawrakowik-b1111-bin-cuda-13.1\llama-server.exe" ^
-m "E:\llama_ai\models\Qwen3.5-397B-A17B\UD-IQ3_XSS\Qwen3.5-397B-A17B-UD-IQ3_XXS-00001-of-00004.gguf" ^
--alias "Qwen3.5-397B-A17B-GGUF:UD-IQ3_XXS" ^
--gpu-layers 999 ^
-ot "\.([0-9]|[1-9][0-9]|[0-9][0-9][0-9])\.ffn_(gate|up|down)_exps.=CPU" ^
--flash-attn on ^
--no-mmap ^
-cuda fusion=1,offload-batch-size=8,mmq-id-size=1000 ^
--cache-type-k q8_0 ^
--cache-type-v q8_0 ^
--cache-ram 0 ^
--ctx-size 100536 ^
-ub 8192 ^
-b 8192 ^
-mqkv ^
-muge ^
--context-shift auto ^
--slot-save-path "E:\llama_ai\kv_cache\Qwen3.5-397B-A17B" ^
--reasoning on ^
--threads 16 ^
--ctx-checkpoints-interval 20192 ^
--ctx-checkpoints 8 ^
--recurrent-ckpt-mode gpu-fallback ^
--parallel 1 ^
--host 0.0.0.0 ^
--port 11434 ^
--seed 3407 ^
--temp 1.0 ^
--top-p 0.9 ^
--min-p 0.01 ^
--top-k 40 ^
--jinja
pause
now with the Details
llama + spec: MTP Support (#22673 https://github.com/ggml-org/llama.cpp/pull/22673)
I am confused .. should I use ikawrakow rather to benefit from better PP speed ? I am using a notebook 5090m with 192gb ram (4000M memory though...), and cannot PIN the memory .. the ik_llama helped to boost PP speed like x3 .. but I think this was about mmq having the most effect ..
any advice on the llama.cpp main ? does it support also -cuda fusion options or which should I use best with this unsloth uploads?