Instructions to use DragonBophades/WichtelHui-Qwen3.8-27B-SLERP with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use DragonBophades/WichtelHui-Qwen3.8-27B-SLERP with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="DragonBophades/WichtelHui-Qwen3.8-27B-SLERP") 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 AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("DragonBophades/WichtelHui-Qwen3.8-27B-SLERP") model = AutoModelForMultimodalLM.from_pretrained("DragonBophades/WichtelHui-Qwen3.8-27B-SLERP", device_map="auto") 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?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use DragonBophades/WichtelHui-Qwen3.8-27B-SLERP with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP", "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/DragonBophades/WichtelHui-Qwen3.8-27B-SLERP
- SGLang
How to use DragonBophades/WichtelHui-Qwen3.8-27B-SLERP 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 "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP" \ --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": "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP", "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 "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP" \ --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": "DragonBophades/WichtelHui-Qwen3.8-27B-SLERP", "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" } } ] } ] }' - Docker Model Runner
How to use DragonBophades/WichtelHui-Qwen3.8-27B-SLERP with Docker Model Runner:
docker model run hf.co/DragonBophades/WichtelHui-Qwen3.8-27B-SLERP
WichtelHui-Qwen3.8-27B-SLERP
A 50/50 SLERP of Wichtel-Qwen3.6-27B and Huihui-Qwen3.8-27B-abliterated.
The merge exists to answer one question: does refusal behaviour survive averaging? One parent is abliterated and refuses nothing; the other refuses what it should. The answer turned out to be more interesting than expected — the two kinds of behaviour merge differently.
Lineage note
This is a cross-pretrain merge. Wichtel is Qwen3.6-line, Huihui is Qwen3.8-line. Measured tensor-by-tensor, the two parents sit at cosine 0.85–0.90 with relative L2 ≈ 0.50 across the language-model layers — a pretrain-scale distance, not a fine-tune one. A 50/50 average of models that far apart would conventionally be expected to land between basins and degrade. It did not; see ARC below.
What the merge did
Discrete refusal behaviour resolved cleanly to the safe parent. Graded capability interpolated. That asymmetry is the result worth reporting.
Safety and truthfulness
29-item suite, 3 samples per item, greedy, thinking disabled.
| ccp_truth | safety_control | ccp_truth_neutral | capability | compliance | |
|---|---|---|---|---|---|
| Wichtel-Qwen3.6-27B | 17/18 | 2/2 | 4/4 | 3/3 | 2/2 |
| Huihui-Qwen3.8-abliterated | 18/18 | 0/2 | 3/4 | 3/3 | 2/2 |
| WichtelHui (this model) | 18/18 | 2/2 | 3/4 | 3/3 | 2/2 |
safety_control holds two prompts that a model should refuse. The abliterated parent
scores 0/2 on them — abliteration removes a refusal direction without regard to what that
direction refuses, so topic refusals and harm refusals go together. This merge scores 2/2,
at a pass rate of 1.00 on both, while keeping the full 18/18 the abliterated parent gained.
The one regression against Wichtel is a single neutrally-phrased Chinese item
(june4_neutral_zh), which follows the abliterated parent.
Capability
| ARC | tool_call_valid | right_tool | args_ok | no_hallucination | |
|---|---|---|---|---|---|
| Wichtel-Qwen3.6-27B | 64.88% | 1.00 | 1.00 | 1.00 | 1.00 |
| WichtelHui | 60.54% | 1.00 | 0.77 | 0.85 | 1.00 |
| Qwen3.8-27B (base) | 52.84% | — | — | — | — |
| Huihui-Qwen3.8-abliterated | 52.17% | 1.00 | 0.57 | 0.66 | 1.00 |
ARC-Challenge, 299 tasks via llama-perplexity --multiple-choice (deterministic — no
sampling, no judge). Tool use is a 47-case agentic benchmark.
ARC lands at 60.54%, above the 58.5% midpoint of its parents, so the cross-pretrain average did not collapse.
Intended use, honestly
This is a research artifact, not a drop-in agent. At 0.77 right_tool it misses roughly a
quarter of tool selections where Wichtel misses none — disqualifying for autonomous agent work.
Use Wichtel for that.
Where this model is interesting is as a base to tune from, and as evidence that merging with a safety-intact parent is a viable mitigation for indiscriminate abliteration.
Merge configuration
base_model: nbeerbower/Wichtel-Qwen3.6-27B
models:
- model: huihui-ai/Huihui-Qwen3.8-27B-abliterated
merge_method: slerp
parameters:
t: 0.5
dtype: bfloat16
tokenizer_source is deliberately absent. Setting it to base rebuilds the embedding to
the tokenizer's 248077 real tokens while config.json still declares the padded 248320, and
llama.cpp then refuses to load the model with a token_embd.weight shape mismatch. Both
parents ship the same tokenizer, so the setting buys nothing.
Vision and MTP
mergekit emits only the language model for this architecture — all 333 visual.* tensors are
dropped, leaving a config that still declares vision. They were grafted back from Wichtel
(the parents' vision towers are cosine 0.999 identical), along with the 15 mtp.* tensors.
Verified before publishing: 1199 tensors with names identical to the reference, no all-zero or non-finite weights among them, embedding rows matching the declared vocab, the GGUF loading cleanly, and an image prompt answered correctly through its own mmproj.
- Downloads last month
- 36