File size: 5,037 Bytes
dd902ef
231f38e
 
dd902ef
 
 
 
231f38e
dd902ef
67c476d
dd902ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1328029
 
 
 
2c4dced
1328029
 
 
 
 
 
 
2c4dced
1328029
 
 
 
 
2c4dced
 
 
 
 
1328029
 
 
 
 
 
 
2c4dced
 
1328029
 
 
 
 
 
2c4dced
1328029
 
2c4dced
1328029
2c4dced
1328029
2c4dced
1328029
2c4dced
dd902ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83f8574
dd902ef
 
 
 
 
 
 
 
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
---
base_model:
- meta-llama/Meta-Llama-3.2-3B
language:
- en
- ko
library_name: transformers
license: llama3.2
---
 

<a href="https://github.com/MLP-Lab/Bllossom">
  <img src="https://github.com/teddysum/bllossom/blob/main//bllossom_icon.png?raw=true" width="30%" height="30%">
</a>

# Update!
* [2024.10.08] Bllossom-3B 모델이 최초 업데이트 되었습니다.



# Bllossom | [Demo]() | [Homepage](https://www.bllossom.ai/) | [Github](https://github.com/MLP-Lab/Bllossom) |

```bash
저희 Bllossom 팀에서 Bllossom-3B 모델을 공개합니다.
llama3.2-3B가 나왔는데 한국어가 포함 안되었다구?? 이번 Bllossom-3B는 한국어가 지원되지 않는 기본 모델을 한국어-영어로 강화모델입니다.
 - 100% full-tuning으로 150GB의 정제된 한국어로 추가 사전학습 되었습니다. (GPU많이 태웠습니다)
 - 굉장히 정제된 Instruction Tuning을 진행했습니다.
 - 영어 성능을 전혀 손상시키지 않은 완전한 Bilingual 모델입니다.
 - LogicKor 기준 5B이하 최고점수를 기록했고 6점 초반대 점수를 보입니다.
 - Instruction tuning만 진행했습니다. DPO 등 성능 올릴 방법으로 튜닝해보세요.
 - MT-Bench, LogicKor 등 벤치마크 점수를 잘받기 위해 정답데이터를 활용하거나 혹은 벤치마크를 타겟팅 해서 학습하지 않았습니다. (해당 벤치마크 타게팅해서 학습하면 8점도 나옵니다...)

언제나 그랬듯 해당 모델은 상업적 이용이 가능합니다.

1. Bllossom은 AAAI2024, NAACL2024, LREC-COLING2024 (구두) 발표되었습니다.
2. 좋은 언어모델 계속 업데이트 하겠습니다!! 한국어 강화를위해 공동 연구하실분(특히논문) 언제든 환영합니다!! 
```



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

model_id = 'Bllossom/llama-3.2-Korean-Bllossom-3B'

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
instruction = "철수가 20개의 연필을 가지고 있었는데 영희가 절반을 가져가고 민수가 남은 5개를 가져갔으면 철수에게 남은 연필의 갯수는 몇개인가요?"

messages = [
    {"role": "user", "content": f"{instruction}"}
    ]

input_ids = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)

terminators = [
    tokenizer.convert_tokens_to_ids("<|end_of_text|>"),
    tokenizer.convert_tokens_to_ids("<|eot_id|>")
]

outputs = model.generate(
    input_ids,
    max_new_tokens=1024,
    eos_token_id=terminators,
    do_sample=True,
    temperature=0.6,
    top_p=0.9
)

print(tokenizer.decode(outputs[0][input_ids.shape[-1]:], skip_special_tokens=True))
```
```
철수가 20개의 연필을 가지고 있었고 영희가 절반을 가져가면, 영희가 가져간 연필의 갯수는 20 / 2 = 10개입니다.

이제 철수가 남은 연필의 갯수를 계산해보겠습니다. 영희가 10개를 가져간 후 철수가 남은 연필의 갯수는 20 - 10 = 10개입니다.

민수가 남은 5개를 가져갔으므로, 철수가 남은 연필의 갯수는 10 - 5 = 5개입니다. 

따라서 철수가 남은 연필의 갯수는 5개입니다.
```

## Supported by

 - AICA  <img src="https://aica-gj.kr/images/logo.png" width="20%" height="20%">

## Citation
**Language Model**
```text
@misc{bllossom,
  author = {ChangSu Choi, Yongbin Jeong, Seoyoon Park, InHo Won, HyeonSeok Lim, SangMin Kim, Yejee Kang, Chanhyuk Yoon, Jaewan Park, Yiseul Lee, HyeJin Lee, Younggyun Hahm, Hansaem Kim, KyungTae Lim},
  title = {Optimizing Language Augmentation for Multilingual Large Language Models: A Case Study on Korean},
  year = {2024},
  journal = {LREC-COLING 2024},
  paperLink = {\url{https://arxiv.org/pdf/2403.10882}},
 },
}
```

**Vision-Language Model**
```text
@misc{bllossom-V,
  author = {Dongjae Shin, Hyunseok Lim, Inho Won, Changsu Choi, Minjun Kim, Seungwoo Song, Hangyeol Yoo, Sangmin Kim, Kyungtae Lim},
  title = {X-LLaVA: Optimizing Bilingual Large Vision-Language Alignment},
  year = {2024},
  publisher = {GitHub},
  journal = {NAACL 2024 findings},
  paperLink = {\url{https://arxiv.org/pdf/2403.11399}},
 },
}
```

## Contact
 - 임경태(KyungTae Lim), Professor at Seoultech. `[email protected]`
 - 함영균(Younggyun Hahm), CEO of Teddysum. `[email protected]`
 - 김한샘(Hansaem Kim), Professor at Yonsei. `[email protected]`

## Contributor
 - **유한결(Hangyeol Yoo)**, [email protected]
 - 신동재(Dongjae Shin), [email protected]
 - 임현석(Hyeonseok Lim), [email protected]
 - 원인호(Inho Won), [email protected]
 - 김민준(Minjun Kim), [email protected]
 - 송승우(Seungwoo Song), [email protected]
 - 육정훈(Jeonghun Yuk), [email protected]
 - 최창수(Chansu Choi), [email protected]
 - 송서현(Seohyun Song), [email protected]