Full supervised fine-tuning of
Qwen3.5-9B on
Claude-Distills data. This model preserves all capabilities of the base Qwen3.5-9B while acquiring enhanced instruction-following and reasoning skills from Claude-generated training data.
This is the v2 of
Qwen3.5-9B-Claude-distill, trained with improved data and full-parameter SFT.
Categories were classified using an automated LLM-based classifier on a representative sample:
The dataset is dominated by math and code (~80%), with significant coverage of science, knowledge, and general conversation.
For full benchmark details including vision-language results, see the
base model card.
1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3model_name = "Kassadin88/Qwen3.5-9B-Claude-Distill-v2"
4
5tokenizer = AutoTokenizer.from_pretrained(model_name)
6model = AutoModelForCausalLM.from_pretrained(
7 model_name,
8 torch_dtype="auto",
9 device_map="auto",
10)
11
12messages = [
13 {"role": "user", "content": "Write a Python function to find the longest common subsequence of two strings."}
14]
15
16text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
17inputs = tokenizer(text, return_tensors="pt").to(model.device)
18outputs = model.generate(**inputs, max_new_tokens=32768)
19response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
20print(response)
1# vLLM
2vllm serve Kassadin88/Qwen3.5-9B-Claude-Distill-v2 --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --reasoning-parser qwen3
3
4# SGLang
5python -m sglang.launch_server --model-path Kassadin88/Qwen3.5-9B-Claude-Distill-v2 --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144 --reasoning-parser qwen3
1from openai import OpenAI
2
3client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
4
5messages = [
6 {"role": "user", "content": "Solve: find all integer solutions to x^2 + y^2 = 25"}
7]
8
9chat_response = client.chat.completions.create(
10 model="Kassadin88/Qwen3.5-9B-Claude-Distill-v2",
11 messages=messages,
12 max_tokens=32768,
13 temperature=1.0,
14 top_p=0.95,
15 presence_penalty=1.5,
16 extra_body={"top_k": 20},
17)
18print(chat_response.choices[0].message.content)
1text = tokenizer.apply_chat_template(
2 messages,
3 tokenize=False,
4 add_generation_prompt=True,
5 enable_thinking=False,
6)
1chat_response = client.chat.completions.create(
2 model="Kassadin88/Qwen3.5-9B-Claude-Distill-v2",
3 messages=messages,
4 max_tokens=32768,
5 temperature=0.7,
6 top_p=0.8,
7 presence_penalty=1.5,
8 extra_body={
9 "top_k": 20,
10 "chat_template_kwargs": {"enable_thinking": False},
11 },
12)
If you find our work helpful, feel free to give us a cite.
1@misc{qwen3.5,
2 title = {{Qwen3.5}: Towards Native Multimodal Agents},
3 author = {{Qwen Team}},
4 month = {February},
5 year = {2026},
6 url = {https://qwen.ai/blog?id=qwen3.5}
7}
1@misc{qwen35-9b-claude-distill-v2,
2 title={Qwen3.5-9B-Claude-Distill-v2: Full SFT on Claude Distill Data},
3 author={Kassadin88},
4 year={2026},
5 url={https://huggingface.co/Kassadin88/Qwen3.5-9B-Claude-Distill-v2}
6}