File size: 3,456 Bytes
06442c1
 
f4832c3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
---
license: apache-2.0
language:
- ja
- en
library_name: transformers
tags:
- japanese
---

# Tanuki-8x8B-dpo-v1.0

## モデルについて

Tanuki-8x8Bは、フルスクラッチで?トークン事前学習された8x8Bパラメータ(総パラメータ約47B、アクティブパラメータ約13B)の大規模言語モデルです。  
Tanuki-8x8B-dpo-v1.0は、Tanuki-8x8BにSFTおよびDPOを適用し作成された対話用モデルです。

## 量子化モデル
- [AWQ 4bit量子化](https://huggingface.co/team-hatakeyama-phase2/Tanuki-8x8B-dpo-v1.0-AWQ)
- [GPTQ 4bit量子化](https://huggingface.co/team-hatakeyama-phase2/Tanuki-8x8B-dpo-v1.0-GPTQ-4bit)
- [GPTQ 8bit量子化](https://huggingface.co/team-hatakeyama-phase2/Tanuki-8x8B-dpo-v1.0-GPTQ-8bit)
- [GGUF量子化](https://huggingface.co/team-hatakeyama-phase2/Tanuki-8x8B-dpo-v1.0-GGUF)*

*GGUF版は性能低下が発生している可能性があり、非推奨

## 使い方

```python
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer

model = AutoModelForCausalLM.from_pretrained("weblab-GENIAC/Tanuki-8x8B-dpo-v1.0", device_map="auto", torch_dtype="auto", trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained("weblab-GENIAC/Tanuki-8x8B-dpo-v1.0")
streamer = TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)

messages = [
    {"role": "system", "content": "以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。"},
    {"role": "user", "content": "AIによって私たちの暮らしはどのように変わりますか?"}
]

input_ids = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
output_ids = model.generate(input_ids,
                            max_new_tokens=1024,
                            temperature=0.5,
                            streamer=streamer)
```

## プロンプト形式
Tanuki-8x8B-dpo-v1.0は日本語版Alpacaのプロンプトフォーマットを利用します。
```
<s>以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。

### 指示:
AIによって私たちの暮らしはどのように変わりますか?

### 応答:

```

なお、本モデルはデフォルトのシステムプロンプトである`以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。`以外を学習していないため、このシステムプロンプトの使用を推奨します。タスクの詳細はユーザープロンプトに記述してください。

## ベンチマーク

**Japanese MT-Bench**  
GPT-4による評価 (gpt-4-0613、平均スコア算出においてスコア-1は除外)

| | Tanuki-8B-dpo-v1.0 | Tanuki-8x8B-dpo-v1.0 |
| ---- | ---- | ---- | 
| 平均スコア | 7.24 | 7.96 |
| coding |	5.4	| 6.75 |
| extraction |	6.65	| 6.90|
| humanities	| 9.1	| 9.3 |
| math	| 3.9	| 5.75 |
| reasoning	| 5.75	| 7.35 |
| roleplay	| 8.75	| 8.95 |
| stem	| 9.35	| 9.40 |
| writing	| 9.05	| 8.85 |

GPT-4oによる評価
![image/png](https://cdn-uploads.huggingface.co/production/uploads/6348501e50fe0799927c3667/TMl4VIoTyUzzdbj5PdVEi.png)

**人手評価**  
Chatbot Arena的なシステムを使った人手によるブラインドテストの結果
![image/png](https://cdn-uploads.huggingface.co/production/uploads/6348501e50fe0799927c3667/RzPOQfETYD9_AFEjVkwCX.png)