Instructions to use nbeerbower/Viking-Qwen3.6-27B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nbeerbower/Viking-Qwen3.6-27B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="nbeerbower/Viking-Qwen3.6-27B") 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("nbeerbower/Viking-Qwen3.6-27B") model = AutoModelForMultimodalLM.from_pretrained("nbeerbower/Viking-Qwen3.6-27B", 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 nbeerbower/Viking-Qwen3.6-27B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nbeerbower/Viking-Qwen3.6-27B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nbeerbower/Viking-Qwen3.6-27B", "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/nbeerbower/Viking-Qwen3.6-27B
- SGLang
How to use nbeerbower/Viking-Qwen3.6-27B 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 "nbeerbower/Viking-Qwen3.6-27B" \ --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": "nbeerbower/Viking-Qwen3.6-27B", "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 "nbeerbower/Viking-Qwen3.6-27B" \ --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": "nbeerbower/Viking-Qwen3.6-27B", "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 nbeerbower/Viking-Qwen3.6-27B with Docker Model Runner:
docker model run hf.co/nbeerbower/Viking-Qwen3.6-27B
Viking-Qwen3.6-27B
A TIES merge of three Qwen3.6-27B finetunes over an abliterated base.
Merge Details
Merge Method
TIES via mergekit, using
huihui-ai/Huihui-Qwen3.6-27B-abliterated
as the base. The abliterated base was chosen over stock Qwen/Qwen3.6-27B so that the
abliteration is baked into the base rather than diluted through TIES sparsification of each
model's delta.
Models Merged
- philipjohnbasile/Qwen3.6-27B-Fable-Fusion-711-bf16
- bottlecapai/ThinkingCap-Qwen3.6-27B
- nbeerbower/Qwen3.6-27B-TIES
All three at weight: 1, density: 1, normalized, int8_mask: true, bf16.
Configuration
models:
- model: philipjohnbasile/Qwen3.6-27B-Fable-Fusion-711-bf16
parameters:
weight: 1
density: 1
- model: bottlecapai/ThinkingCap-Qwen3.6-27B
parameters:
weight: 1
density: 1
- model: nbeerbower/Qwen3.6-27B-TIES
parameters:
weight: 1
density: 1
merge_method: ties
base_model: huihui-ai/Huihui-Qwen3.6-27B-abliterated
parameters:
weight: 1
density: 1
normalize: true
int8_mask: true
dtype: bfloat16
Provenance notes
Three things about this merge that are worth knowing before you use it:
The Fable-Fusion parent is a dequantization, not an original checkpoint. DavidAU only ever released Fable-Fusion-711 as GGUF, which mergekit can't read. The parent used here is philipjohnbasile's bf16 reconstruction from the Q8_0 GGUF. Q8_0 is near-lossless but not lossless, so whatever error that dequantization carries is inherited by this merge. That repo's author also reports that the released weights did not reproduce the source card's refusal-rate claims under their testing, and has stopped describing them as uncensored — take the "uncensored" half of the lineage with a grain of salt.
The vision tower was grafted back on after merging.
mergekit merged the language model only — the output had 850 model.language_model.* tensors and no
model.visual.* at all, while still declaring Qwen3_5ForConditionalGeneration in its config. The
333 vision tensors and the VLM config.json / preprocessor_config.json were copied back in from
the abliterated base afterward. The vision encoder is therefore untouched base weights, not a
merge of the parents' vision towers. Final index: 1199 tensors (850 language, 333 vision, 15 MTP,
1 lm_head), verified complete against the shards with no missing or orphaned keys.
The MTP head comes from the base, not from the merge.
The merge produced 4 MTP tensors; the graft step replaced them with the base's 15. Those 4 merged
tensors are still physically present in the language shards but are unreferenced by
model.safetensors.index.json and will not be loaded.
Untested at the time of upload — no generation smoke test has been run against these weights.
- Downloads last month
- 18