File size: 1,866 Bytes
37f88f6 69385ad 37f88f6 69385ad |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
---
library_name: transformers
tags:
- reasoning
- merge
- llama
- deepseek
license: llama3.1
language:
- en
- ja
base_model:
- tokyotech-llm/Llama-3.1-Swallow-8B-v0.2
---
# Llama-3.1-Swallow-8B-v0.2-reasoningvector-deepseek-r1
DeepSeekの蒸留モデルから推論能力を抽出した重みの差分を、日本語モデルにマージしたモデルです。
つまり、This Model = Japanese Model + (Reasoning Model - Base Model)
- **Base Model**: [meta-llama/Llama-3.1-8B](https://huggingface.co/meta-llama/Llama-3.1-8B)
- **Reasoning Model**: [deepseek-ai/DeepSeek-R1-Distill-Llama-8B](https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Llama-8B)
- **Japanese Model**: [tokyotech-llm/Llama-3.1-Swallow-8B-v0.2](https://huggingface.co/tokyotech-llm/Llama-3.1-Swallow-8B-v0.2)
## 使用方法
```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
# モデルとTokenizerの取得
model_name = "HachiML/Llama-3.1-Swallow-8B-v0.2-reasoningvector-deepseek-r1"
jp_model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.bfloat16,
device_map="auto",
)
jp_tokenizer = AutoTokenizer.from_pretrained(model_name)
# チャットメッセージの準備
chat = [
{"role": "user", "content": "\[p = \sum_{k = 1}^\infty \frac{1}{k^2} \quad \text{および} \quad q = \sum_{k = 1}^\infty \frac{1}{k^3}\]と定義する。 \[\sum_{j = 1}^\infty \sum_{k = 1}^\infty \frac{1}{(j + k)^3}\]を \( p \) および \( q \) を用いて表す方法を求めよ。"},
]
# 推論の実行
with torch.no_grad():
token_ids = jp_tokenizer.apply_chat_template(chat, return_tensors="pt")
output_ids = jp_model.generate(
token_ids.to(jp_model.device),
temperature=0.0,
max_new_tokens=2048,
)
output = jp_tokenizer.decode(output_ids[0][token_ids.size(1) :])
print(output)
``` |