Instructions to use unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: ./llama-cli -hf unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: ./build/bin/llama-cli -hf unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
Use Docker
docker model run hf.co/unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
- LM Studio
- Jan
- vLLM
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "unsloth/Qwen3-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
- Ollama
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF with Ollama:
ollama run hf.co/unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
- Unsloth Desktop
- Pi
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF with Docker Model Runner:
docker model run hf.co/unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
- Lemonade
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull unsloth/Qwen3-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
Run and chat with the model
lemonade run user.Qwen3-VL-30B-A3B-Thinking-GGUF-UD-Q4_K_XL
List all available models
lemonade list
- Hermes Agent
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use unsloth/Qwen3-VL-30B-A3B-Thinking-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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL
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-VL-30B-A3B-Thinking-GGUF:UD-Q4_K_XL" \ --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"
Conflicting sampling parameter recommendations?
Hey! Firstly, thanks for the great work with the UD quants, as always. The Q4_K_XL GGUF is running great at 96K context on my 7900 XTX via llama.cpp w/ Vulkan.
However I've got some questions regarding sampling params, specifically temperature. On your guys' site, the Qwen3-VL guide states to set a temperature of 1.0 for 'Thinking' variants of this model series. But when you click the source, the Qwen3-VL git seems to recommend a temp of 0.6 instead. I wanted to see if I could get some clarification on this if possible?
I've been testing both 0.6 and 1.0. Using temp=1 has caused a few issues for me. I've had one instance of chinese characters showing up, and a few weird cases where the model contains its chain-of-thought outside of the tag. For reference, I'm using the other recommended params;
- top_p=0.95
- top_k=20
- repeat_penalty=1.0
Although, to reduce excessive thinking, I am using presence_penalty=1.5 as was recommended for non-VL Qwen3-Thinking models. I was also wondering if min_p should be set to 0.0 or kept at 0.01? (the llama.cpp default as far as I can tell)
Once again, appreciate all the awesome work you guys do! UD quants are my go-to, and I'd appreciate any advice on this.
Cheers :)
Hey! Firstly, thanks for the great work with the UD quants, as always. The Q4_K_XL GGUF is running great at 96K context on my 7900 XTX via llama.cpp w/ Vulkan.
However I've got some questions regarding sampling params, specifically temperature. On your guys' site, the Qwen3-VL guide states to set a temperature of 1.0 for 'Thinking' variants of this model series. But when you click the source, the Qwen3-VL git seems to recommend a temp of 0.6 instead. I wanted to see if I could get some clarification on this if possible?
I've been testing both 0.6 and 1.0. Using temp=1 has caused a few issues for me. I've had one instance of chinese characters showing up, and a few weird cases where the model contains its chain-of-thought outside of the tag. For reference, I'm using the other recommended params;
- top_p=0.95
- top_k=20
- repeat_penalty=1.0
Although, to reduce excessive thinking, I am using presence_penalty=1.5 as was recommended for non-VL Qwen3-Thinking models. I was also wondering if
min_pshould be set to 0.0 or kept at 0.01? (the llama.cpp default as far as I can tell)Once again, appreciate all the awesome work you guys do! UD quants are my go-to, and I'd appreciate any advice on this.
Cheers :)
@ayylmaonade I'm running into the same issue! I'm wondering if you stuck with 0.6, and if that worked better for you? What about presence_penalty and min_p?
Hey! Firstly, thanks for the great work with the UD quants, as always. The Q4_K_XL GGUF is running great at 96K context on my 7900 XTX via llama.cpp w/ Vulkan.
However I've got some questions regarding sampling params, specifically temperature. On your guys' site, the Qwen3-VL guide states to set a temperature of 1.0 for 'Thinking' variants of this model series. But when you click the source, the Qwen3-VL git seems to recommend a temp of 0.6 instead. I wanted to see if I could get some clarification on this if possible?
I've been testing both 0.6 and 1.0. Using temp=1 has caused a few issues for me. I've had one instance of chinese characters showing up, and a few weird cases where the model contains its chain-of-thought outside of the tag. For reference, I'm using the other recommended params;
- top_p=0.95
- top_k=20
- repeat_penalty=1.0
Although, to reduce excessive thinking, I am using presence_penalty=1.5 as was recommended for non-VL Qwen3-Thinking models. I was also wondering if
min_pshould be set to 0.0 or kept at 0.01? (the llama.cpp default as far as I can tell)Once again, appreciate all the awesome work you guys do! UD quants are my go-to, and I'd appreciate any advice on this.
Cheers :)
@ayylmaonade I'm running into the same issue! I'm wondering if you stuck with 0.6, and if that worked better for you? What about presence_penalty and min_p?
After a few days of tinkering with a whole assortment of settings, I finally landed on a decent combination. It’s still a notch below the older 2507 checkpoint when it comes to pure‑text tasks though. I settled on a temperature of 1.0, a min_p of 0.0, and a presence_penalty of 1.5. Even though a few repos suggest a penalty of 0.0, I saw no drop in quality and over‑thinking got noticeably cut down. All the other parameters stayed the same: top_k 20, top_p 0.95, repeat_penalty 1.0.
I also found a handy benchmark that directly compares VL models against their non‑VL counterparts in text‑based scenarios. https://dubesor.de/benchtable - have a look here if you want, just search "Qwen3" - at the very least it confirms I'm not insane regarding the reduction in text-performance, lol.
Thanks! Missed this notification, but I'm on GLM 4.7 Flash and currently evaluating Qwen3.5 now 😁