File size: 1,956 Bytes
4f07ac5
e087433
 
 
 
 
 
 
 
5df5dcd
 
 
 
4f07ac5
 
cc84426
4f07ac5
df672fe
cc84426
 
 
 
 
 
 
87e66f1
cc84426
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5df5dcd
cc84426
5df5dcd
cc84426
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
87e66f1
 
 
 
 
 
 
 
 
b404660
 
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
86
---
language:
- th
- en
base_model:
- Qwen/Qwen2.5-7B-Instruct
- Qwen/Qwen2.5-7B
pipeline_tag: text-generation
library_name: transformers
datasets:
- airesearch/WangchanX-Legal-ThaiCCL-RAG
- airesearch/WangchanThaiInstruct
- pythainlp/han-instruct-dataset-v4.0
---

<img src="./Tsunami.webp" alt="Tsunami Model" width="800" style="margin-left:'auto' margin-right:'auto' display:'block'"/>

# Tsunami-0.5-7B-Instruct
**TSUNAMI**: Transformative Semantic Understanding and Natural Augmentation Model for Intelligence.

**TSUNAMI** full name was created by ChatGPT.

---

### infomation
**Tsunami-0.5-7B-Instruct** is Thai Large Language Model that fine-tuned from **Qwen2.5-7B** around **60,000** rows in Thai-specific domain.

---

### Prompt Template

This model uses `ChatML` prompt template:

```
<|im_start|>system
{System}<|im_end|>
<|im_start|>user
{User}<|im_end|>
<|im_start|>assistant
{Assistant}
````

### How to use


```python

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model_name = "Tsunami-th/Tsunami-0.5-7B-Instruct"

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "สวัสดีครับ"}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

inputs = tokenizer(text, return_tensors="pt")
inputs = inputs.to(model.device)
with torch.no_grad():
   output = model.generate(**inputs, max_new_tokens=512)

response = tokenizer.decode(output[0, len(inputs['input_ids'][0]):], skip_special_tokens=True)
```

---

### Author
 - Pollakrit Lorprasertkul | [email protected]

---

 - **Tsunami-0.5-7B-Instruct** is the version 0.5 that did not train on the whole dataset.
 - **Tsunami-1.0-7B-Instruct** is coming soon.