Views
No views yet
kldzj/gpt-oss-20b-heretic-bf16, distilled from MiniMaxAI/MiniMax-M2.1 using weight-delta SVD-LoRA distillation (cross-architecture).kldzj/gpt-oss-20b-heretic-bf16MiniMaxAI/MiniMax-M2.1q_proj, k_proj, v_proj, o_proj)This is an adapter. You must load the base model first.
1import torch
2from transformers import AutoTokenizer, AutoModelForCausalLM
3from peft import PeftModel
4
5base_id = "kldzj/gpt-oss-20b-heretic-bf16"
6adapter_id = "win10/gpt-oss-20b-heretic-distilled-MiniMax-M2.1-lora"
7
8tokenizer = AutoTokenizer.from_pretrained(base_id, use_fast=True)
9
10base = AutoModelForCausalLM.from_pretrained(
11 base_id,
12 torch_dtype=torch.bfloat16,
13 device_map="auto",
14)
15
16model = PeftModel.from_pretrained(base, adapter_id)
17model.eval()
18
19messages = [
20 {"role": "system", "content": "You are a helpful assistant."},
21 {"role": "user", "content": "Explain knowledge distillation in 5 bullet points."},
22]
23
24inputs = tokenizer.apply_chat_template(
25 messages,
26 add_generation_prompt=True,
27 tokenize=True,
28 return_tensors="pt",
29)
30
31with torch.no_grad():
32 out = model.generate(
33 inputs.to(model.device),
34 max_new_tokens=512,
35 do_sample=False,
36 )
37
38print(tokenizer.decode(out[0], skip_special_tokens=True))1from peft import PeftModel
2
3merged = model.merge_and_unload()
4merged.save_pretrained("./merged_model", safe_serialization=True)
5tokenizer.save_pretrained("./merged_model")1python universal_distill.py \
2 --teacher ./MiniMax-M2-bf16 \
3 --student ./gpt-oss-20b-heretic-bf16 \
4 --output ./MiniMax-M2.1-to-gpt-oss-20b-heretic-bf16-lora-adaptive-delta-ratio-0.35 \
5 --svd-mode full \
6 --energy-threshold 0.95 \
7 --projection-rank 1024 \
8 --min-rank 1024 \
9 --max-rank 2880 \
10 --interp-mode lsq \
11 --svd-rand-iter 2 \
12 --svd-rand-oversamples 8 \
13 --calib-format alpaca \
14 --calib-alpaca-template classic \
15 --calib-max-samples 128 \
16 --calib-max-length 32768 \
17 --calib-batch-size 2 \
18 --calib-save ./calib_stats_rombo-code_bagel_hermes-dataset.safetensors \
19 --calib-data ./data/code_bagel_hermes-2.5.json \
20 --calib-mode rms \
21 --mixed-precision \
22 --max-delta-ratio 0.35kldzj/gpt-oss-20b-heretic-bf16.gpt-oss-20b variant, it must be shape-compatible (otherwise adapter load will fail).