Views
No views yet
1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3# ベースモデルのロード
4base_model = AutoModelForCausalLM.from_pretrained("your-base-model")
5tokenizer = AutoTokenizer.from_pretrained("your-base-model")
6
7# Reasoning Vectorのロード(差分パラメータ)
8reasoning_vector = AutoModelForCausalLM.from_pretrained("HachiML/ReasoningVector-DeepSeek-R1-Distill-Qwen-32B")
9
10# ベースモデルに差分を適用(実装に応じた適用方法を記載)
11# 除外対象
12skip_layers = ["model.embed_tokens.weight", "model.norm.weight", "lm_head.weight"]
13for k, v in base_model.state_dict().items():
14 # layernormも除外
15 if (k in skip_layers) or ("layernorm" in k):
16 continue
17 new_v += reasoning_vector.state_dict()[k].to(v.device)
18 v.copy_(new_v)
19
20# 推論の実行例
21inputs = tokenizer("推論したいテキストを入力", return_tensors="pt")
22outputs = base_model.generate(**inputs)
23print(tokenizer.decode(outputs[0], skip_special_tokens=True))