Instructions to use unsloth/Qwen3.8-27B-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.8-27B-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.8-27B-GGUF:UD-Q4_K_M # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3.8-27B-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.8-27B-GGUF:UD-Q4_K_M # Run inference directly in the terminal: llama cli -hf unsloth/Qwen3.8-27B-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.8-27B-GGUF:UD-Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf unsloth/Qwen3.8-27B-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.8-27B-GGUF:UD-Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_M
Use Docker
docker model run hf.co/unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_M
- LM Studio
- Jan
- Ollama
How to use unsloth/Qwen3.8-27B-GGUF with Ollama:
ollama run hf.co/unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_M
- Unsloth Desktop
- Pi
How to use unsloth/Qwen3.8-27B-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.8-27B-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.8-27B-GGUF:UD-Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use unsloth/Qwen3.8-27B-GGUF with Docker Model Runner:
docker model run hf.co/unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_M
- Lemonade
How to use unsloth/Qwen3.8-27B-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_M
Run and chat with the model
lemonade run user.Qwen3.8-27B-GGUF-UD-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use unsloth/Qwen3.8-27B-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.8-27B-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.8-27B-GGUF:UD-Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use unsloth/Qwen3.8-27B-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.8-27B-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.8-27B-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"
llama.cpp Strix Halo 128GB config for coding tasks
Hi, sharing my config here. Improvements are welcome.
I use it for coding with llama-vscode. The quality of the output is very good. Speed is acceptable.
Backend
Model is served by llama-cpp-for-strix-halo.
Configuration
model = models/qwen3.8/Qwen3.8-27B-UD-Q8_K_XL.gguf
chat-template-file = models/chat_template.jinja
ctx-size = 262144
flash-attn = true
no-mmap = true
n-gpu-layers = 999
batch-size = 4096
ubatch-size = 4096
models-max = 1
metrics = false
spec-type = draft-mtp
spec-draft-n-max = 4
spec-draft-ngl = all
parallel = 1
temp = 0.7
top-p = 0.80
top-k = 20
min-p = 0.0
presence-penalty = 1.5
repeat-penalty = 1.0
reasoning-preserve = true
reasoning-budget = 65536
n-predict = 131072
reasoning-budget-message="Reasoning budget exhausted — answering now."
Thanks for sharing, but what speeds are you getting in terms of PP and Decode with this setup?
I did not fully understand the question. I do not know the meaning of PP and Decode.
But I offer the following.
"timings": {
"cache_n": 0,
"prompt_n": 32,
"prompt_ms": 481.358,
"prompt_per_token_ms": 15.0424375,
"prompt_per_second": 66.47858766240512,
"predicted_n": 2567,
"predicted_ms": 182115.049,
"predicted_per_token_ms": 70.97234957131722,
"predicted_per_second": 14.089994287072892,
"draft_n": 3444,
"draft_n_accepted": 1709
}
It is the result of the below. It is not coding as such, but I do not know how to benchmark it properly.
curl http://localhost/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen3.8-27B",
"messages": [{"role": "user", "content": "How to get ls results with full path? Describe alternatives with detail. Offer examples. Suggest other approaches."}],
"stream": false
}'
Ah sorry, PP = Prompt Processing. How many inbound tokens per second that is being processed.
Decode is how many tokens it can generate per second.
They are usually measured at different context sizes like 8k, 32k, 64k and so on.
Do you feel like it works well?
Thank you. So the results I posted previously at least try to provide some measurement.
As of the general feel: It is slow but it is worth waiting. I mean that it thinks a lot. Sometimes not communicating much on the progress. Strix may be humming for an hour or more... Ultimately it yields working solution. With 0 to 2 bugs that can mostly be traced back to vague requirements. All accompanied with documentation and unit tests. The resulting code is clean and understandable enough to do final manual tweaks.
I suggest to change your params ubatch-size and spec-draft-n-max to improve the speed:
# ubatch-size:batch-size = 1:4 ratio is optimal on strix halo with MTP enabled
ubatch-size = 1024
# better acceptance rate
spec-draft-n-max = 3
I noticed Q8 has a better acceptance rate so I set spec-draft-n-max to 4 and it's slightly faster.