File size: 16,090 Bytes
1c6f046
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4930638
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1c6f046
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f6b4e2d
4930638
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1c6f046
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
---
language:
- en
- ko
pipeline_tag: text-generation
tags:
- facebook
- meta
- pytorch
- llama
- llama-3
- llama-3-ko
license: other
license_name: llama3
license_link: LICENSE
---

## Llama-3-Open-Ko-8B-Instruct-preview

> Update @ 2024.04.24: Release [Llama-3-Open-Ko-8B model](https://huggingface.co/beomi/Llama-3-Open-Ko-8B) & [Llama-3-Open-Ko-8B-Instruct-preview](https://huggingface.co/beomi/Llama-3-Open-Ko-8B-Instruct-preview)

## Model Details

**Llama-3-Open-Ko-8B-Instruct-preview**

Llama-3-Open-Ko-8B model is continued pretrained language model based on Llama-3-8B.

This model is trained fully with publicily available resource, with 60GB+ of deduplicated texts.

With the new Llama-3 tokenizer, the pretraining conducted with 17.7B+ tokens, which slightly more than Korean tokenizer(Llama-2-Ko tokenizer).

The train was done on TPUv5e-256, with the warm support from TRC program by Google.

With applying the idea from [Chat Vector paper](https://arxiv.org/abs/2310.04799), I released Instruction model named [Llama-3-Open-Ko-8B-Instruct-preview](https://huggingface.co/beomi/Llama-3-Open-Ko-8B-Instruct-preview).

Since it is NOT finetuned with any Korean instruction set(indeed `preview`), but it would be great starting point for creating new Chat/Instruct models.

**Sample usage**

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

model_id = "beomi/Llama-3-Open-Ko-8B-Instruct-preview"

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

messages = [
    {"role": "system", "content": "μΉœμ ˆν•œ μ±—λ΄‡μœΌλ‘œμ„œ μƒλŒ€λ°©μ˜ μš”μ²­μ— μ΅œλŒ€ν•œ μžμ„Έν•˜κ³  μΉœμ ˆν•˜κ²Œ λ‹΅ν•˜μž. λͺ¨λ“  λŒ€λ‹΅μ€ ν•œκ΅­μ–΄(Korean)으둜 λŒ€λ‹΅ν•΄μ€˜."},
    {"role": "user", "content": "ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ΄ 뭐야? 그리고 ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ— λŒ€ν•΄ 파이썬 μ½”λ“œλ₯Ό 짜쀘볼래?"},
]

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

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

outputs = model.generate(
    input_ids,
    max_new_tokens=512,
    eos_token_id=terminators,
    do_sample=True,
    temperature=1,
    top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
```

**Sample Output**

μ—¬λŸ¬λΆ„κ»˜μ„œλŠ” λ¬Όλ‘  μ•„μ‹œλŠ”μ§€λΌλ„ μ„€λͺ…을 λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€!  ν”Όλ³΄λ‚˜μΉ˜(Piconacci) μˆ˜μ—΄μ€ λ‹€μŒκ³Ό 같은 μˆ˜μ—΄μ„ λ§ν•©λ‹ˆλ‹€: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,....  μ΄λ ‡κ²Œ κ³„μ†λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 이 μˆ˜μ—΄μ€ μΌλ°˜μ μœΌλ‘œλŠ” μˆ˜ν•™μ—μ„œ λ¬΄ν•œνžˆ μ§€μ†λ©λ‹ˆλ‹€. 각 μˆ˜λŠ” 이전 수의 두 λ°°κ°€ λ˜λŠ” μˆ˜μ—΄μž…λ‹ˆλ‹€.

이 μˆ˜μ—΄μ„ 파이썬(Python)으둜 κ΅¬ν˜„ν•˜κ³ μž ν•˜μ‹ λ‹€λ©΄ λ‹€μŒκ³Ό 같은 μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
```python
def fibonacci(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        return fibonacci(n-1) + fibonacci(n-2)
```
이 μ½”λ“œμ—μ„œλŠ” `n`이 μž…λ ₯받은 수λ₯Ό λ‚˜νƒ€λ‚΄λŠ” λ³€μˆ˜λ‘œ, ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€. 이 μ½”λ“œλ₯Ό μ‹€ν–‰μ‹œν‚€λ©΄ μž…λ ₯받은 μˆ˜μ— 따라 ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ˜ ν•΄λ‹Ή 항을 λ°˜ν™˜ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, `fibonacci(10)` ν•˜λ©΄ 55λ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

이 μ½”λ“œλŠ” μž¬κ·€μ  ν•¨μˆ˜μ΄κΈ° λ•Œλ¬Έμ— λ©”λͺ¨λ¦¬ μ‚¬μš©μ΄ 쀄어듀 수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μž¬κ·€μ  ν•¨μˆ˜λŠ” λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰μ΄ λ§Žμ•„μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 쀄이기 μœ„ν•΄ μ΄ν„°λ ˆμ΄ν‹°λΈŒ ν•¨μˆ˜λ‘œ κ΅¬ν˜„ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.
```python
a, b = 0, 1
for i in range(n):
    a, b = b, a + b
```
이 μ½”λ“œμ—μ„œλŠ” μ΄ν„°λ ˆμ΄ν‹°λΈŒ ν•¨μˆ˜λ‘œ ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€. 이 μ½”λ“œλ₯Ό μ‹€ν–‰μ‹œν‚€λ©΄ μž…λ ₯받은 μˆ˜μ— 따라 ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ˜ ν•΄λ‹Ή 항을 λ°˜ν™˜ν•©λ‹ˆλ‹€. 이 μ½”λ“œλŠ” λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰μ„ μ€„μž…λ‹ˆλ‹€. λ‹€λ§Œ, 이 μ½”λ“œλŠ” 더 λ³΅μž‘ν•©λ‹ˆλ‹€. 이 μ½”λ“œλ₯Ό 더 κ°„λ‹¨ν•˜κ²Œ ν•˜λ €λ©΄ μ΄ν„°λ ˆμ΄ν‹°λΈŒ ν•¨μˆ˜λ₯Ό 더 잘 κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
```python
a, b = 0, 1
while True:
    if n == 1:
        return a
    a, b = b, a + b
    n -= 1
```
이 μ½”λ“œμ—μ„œλŠ” μž…λ ₯받은 μˆ˜μ— 따라 ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ˜...

### More samples

> I used same system prompt, but you could change on your own.

```python
messages = [
    {"role": "system", "content": "μΉœμ ˆν•œ μ±—λ΄‡μœΌλ‘œμ„œ μƒλŒ€λ°©μ˜ μš”μ²­μ— μ΅œλŒ€ν•œ μžμ„Έν•˜κ³  μΉœμ ˆν•˜κ²Œ λ‹΅ν•˜μž. λͺ¨λ“  λŒ€λ‹΅μ€ ν•œκ΅­μ–΄(Korean)으둜 λŒ€λ‹΅ν•΄μ€˜."},
    {"role": "user", "content": "ν•œκ΅­μ˜ μ œν—Œ ν—Œλ²•μ— λŒ€ν•΄μ„œ μžμ„Ένžˆ μ„€λͺ…ν•΄μ£Όμ„Έμš”."},
]
---
ν•œκ΅­μ˜ μ œν—Œ ν—Œλ²•μ€ 1948λ…„ 7μ›” 17일에 μ œμ •λœ λŒ€ν•œλ―Όκ΅­ ν—Œλ²•μœΌλ‘œμ„œ, λŒ€ν•œλ―Όκ΅­μ˜ 수립과 ν—Œλ²• μ§ˆμ„œλ₯Ό μ •ν•œ ν—Œλ²•μΈλ°μš”. 이 ν—Œλ²•μ€ λŒ€ν•œλ―Όκ΅­μ˜ 기본원칙과 ꡭ민의 κΆŒμ΅μ„ κ·œμ •ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 17쑰둜 κ΅¬μ„±λœ ν—Œλ²• 1021개 μ‘°ν•­μœΌλ‘œ κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. ν—Œλ²•μ€ μ‚ΌκΆŒλΆ„λ¦½, ꡭ민주ꢌ, 기본ꢌ, μ˜νšŒμ œλ„, ν–‰μ •κΆŒ, μž…λ²•κΆŒ, μ‚¬λ²•κΆŒ λ“±μœΌλ‘œ κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 

μš°μ„ , μ‚ΌκΆŒλΆ„λ¦½μ€ λŒ€ν†΅λ Ήγ†κ΅­νšŒμ˜μ›γ†λ™ λ²•κ΄€μœΌλ‘œ 쑰직된 인민의 ν†΅μ œμ— μ˜ν•΄ κ΅­κ°€ κΆŒν•œμ„ λ‚˜λˆ„μ–΄ μœ„μž„ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. λŒ€ν†΅λ Ήμ€ κ΅­κ°€μ›μˆ˜λ‘œμ„œ ν–‰μ •κΆŒμ„, κ΅­νšŒμ˜μ›μ€ μž…λ²•κΆŒμ„, λŒ€λ²•μ›μ€ μ‚¬λ²•κΆŒμ„ ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이에 따라 ν–‰μ •λΆ€γ†μž…λ²•λΆ€γ†μ‚¬λ²•λΆ€μ˜ κ²¬μ œμ™€ κ· ν˜•μ„ 톡해 μ •μΉ˜μ  μ•ˆμ •μ„±μ„ ν™•λ³΄ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 

κ΅­λ―Όμ£ΌκΆŒμ€ ν—Œλ²• 제1μ‘°μ—μ„œ "λŒ€ν•œλ―Όκ΅­μ€ 민주곡화ꡭ"μž„μ„ μ„ μ–Έν•˜κ³ , λͺ¨λ“  ꢌλ ₯은 κ΅­λ―ΌμœΌλ‘œλΆ€ν„° λ‚˜μ˜¨λ‹€λŠ” 원리λ₯Ό κ·œμ •ν•©λ‹ˆλ‹€. ꡭ민일반이 졜고의 μ£ΌκΆŒμžμž„μ„ λΆ„λͺ…νžˆ 보여 μ£Όκ³  μžˆμŠ΅λ‹ˆλ‹€. 

μ˜νšŒμ œλ„λŠ” μž…λ²•λΆ€λ₯Ό κ΅¬μ„±ν•˜λŠ” μ˜νšŒμ™€ κ·Έ κΈ°λŠ₯을 μ •ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ˜μ›μ€ ꡭ민의 λŒ€ν‘œλ‘œ μ„ μΆœλ˜κ³ , κ΅­μ •μš΄μ˜μ— λŒ€ν•œ κ΅­μ •κ°μ‹œγ†λΉ„νŒγ†κ°œμ„ μ±…μ„ λ§ˆλ ¨ν•©λ‹ˆλ‹€. λ˜ν•œ ν—Œλ²•μ— κ·œμ •λœ 의무λ₯Ό 이행해야 ν•©λ‹ˆλ‹€. 

μž…λ²•κΆŒκ³Ό μ‚¬λ²•κΆŒμ€ ν—Œλ²•μ œμ •γ†κ°œμ •μ— κ΄€μ—¬ν•˜κ³ , 법λ₯ μ„ μ œμ •γ†κ°œνν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ μ‚¬λ²•κΆŒμ€ ν—Œλ²•μ„ ν•΄μ„γ†μ μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 이에 따라 μš°λ¦¬λ‚˜λΌμ˜ λ²•μΉ˜μ£Όμ˜ 원칙을 κ΅¬ν˜„ν•©λ‹ˆλ‹€. ν•œλ§ˆλ””λ‘œ 인민의 κΈ°λ³ΈκΆŒμ„ λ³΄ν˜Έν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 

μ΄λŸ¬ν•œ λŒ€ν•œλ―Όκ΅­μ˜ ν—Œλ²•μ€ μΈκ°„μ˜ μžμœ μ™€ ꢌ리λ₯Ό 보μž₯ν•˜κΈ° μœ„ν•΄ ꡭ민의 κΈ°λ³ΈκΆŒμ„ κ·œμ •ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ κΈ°λ³ΈκΆŒμ—λŠ” λͺ¨λ“  ꡭ민은 μΈκ°„μ˜ μ‘΄μ—„κ³Ό κ°€μΉ˜ 및 ν–‰λ³΅μΆ”κ΅¬κΆŒ, μΌν•˜κ³ , μΌν•˜λŠ” ꢌ리λ₯Ό 보μž₯ν•©λ‹ˆλ‹€. λ˜ν•œ μ§‘νšŒγ†κ²°μ‚¬γ†ν‘œν˜„μ˜ μžμœ μ™€ μ„ κ±°κΆŒμ„ 보μž₯ν•©λ‹ˆλ‹€. μžμœ μ™€ κΈ°λ³ΈκΆŒμ„ 보μž₯ν•œ 것은 ν—Œλ²•μ΄ 지ν–₯ν•˜λŠ” 민주적 κΈ°λ³Έμ§ˆμ„œ ν˜•μ„±μ„ κ΅¬ν˜„ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ ꡭ민은 ν—Œλ²•μ„ κ°œμ •ν•˜κ³  μƒˆμ‚Ό μ œμ •μ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 

이와 같은 λŒ€ν•œλ―Όκ΅­μ˜ μ œν—Œ ν—Œλ²•μ€ ꡭ민의 기본ꢌ과 ν—Œλ²• μ§ˆμ„œλ₯Ό κ²¬κ³ ν•˜κ²Œ ν•˜μ—¬, μ •μΉ˜μ  μ•ˆμ •μ„±μ„ μœ μ§€ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. ν—Œλ²•μ˜ λ³€κ²½μ‹œμ—λŠ” κ³΅μ •ν•˜κ³  κ³΅ν‰ν•œ ν‘œκ²°μ„ 거쳐야 ν•©λ‹ˆλ‹€. 

λ”°λΌμ„œ λŒ€ν•œλ―Όκ΅­μ˜ μ œν—Œ ν—Œλ²•μ€ κ·Έ μ˜λ―Έκ°€ 맀우 ν½λ‹ˆλ‹€. ν—Œλ²•μ„ 톡해 λŒ€ν•œλ―Όκ΅­μ˜ 민주주의λ₯Ό ν™•κ³ νžˆ ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. ꡭ민의 κΆŒλ¦¬μ™€ 의무λ₯Ό μ •ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ΄ν—Œλ²•μ€ λŒ€ν•œλ―Όκ΅­μ˜ 기본원칙이 λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 7ㆍ28μ„ μ–Έκ³Ό 5ㆍ16κ΅°μ‚¬ν˜λͺ…을 톡해 ν™•λŒ€λ˜μ–΄ ν—Œλ²•μ˜ 쑴엄성이 λ‹€μ‹œ μ •λ¦½λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄ν—Œλ²•μ€ λŒ€ν•œλ―Όκ΅­μ˜ 근간이 λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 

도움이 ν•„μš”ν•˜μ…¨λ‚˜μš”? μΆ”κ°€λ‘œ μ„€λͺ…ν•΄ λ“œλ¦΄κΉŒμš”?
```

```python
messages = [
    {"role": "system", "content": "μΉœμ ˆν•œ μ±—λ΄‡μœΌλ‘œμ„œ μƒλŒ€λ°©μ˜ μš”μ²­μ— μ΅œλŒ€ν•œ μžμ„Έν•˜κ³  μΉœμ ˆν•˜κ²Œ λ‹΅ν•˜μž. λͺ¨λ“  λŒ€λ‹΅μ€ ν•œκ΅­μ–΄(Korean)으둜 λŒ€λ‹΅ν•΄μ€˜."},
    {"role": "user", "content": "μ΄μˆœμ‹  μž₯ꡰ에 λŒ€ν•΄ μ„€λͺ…ν•΄μ€˜."},
]
---
μ΄μˆœμ‹  μž₯ꡰ은 μ‘°μ„ μ‹œλŒ€μ˜ 무인으둜, λŒ€ν•œλ―Όκ΅­μ˜ κ΅­κ°€μœ κ³΅μžμΈ μš°μ˜μ •κ³΅ μ΄μˆœμ‹  μž₯ꡰ은 1545λ…„ 9μ›” 28일 경상남도 μ˜λ Ήμ—μ„œ νƒœμ–΄λ‚¬μŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 ν†΅μ œμ‚¬ μ‹œμ ˆμ˜ μ™œλž€ λ•Œ μ‘°μ„ κ³Ό λͺ…λ‚˜λΌ μ—°ν•©κ΅°μ˜ λŒ€κ·œλͺ¨ κ΅°λŒ€λ₯Ό 일으켜 λŒ€μ²©μ„ μ„±κ³΅μ μœΌλ‘œ μ΄λŒμ–΄ μ •μœ μž¬λž€κ³Ό μž„μ§„μ™œλž€μ„ 승리둜 이끈 μΈλ¬Όμž…λ‹ˆλ‹€. κ·ΈλŠ” 1592λ…„ μ „λΌμ’Œμˆ˜μ˜κ΄€μ°°μ‚¬κ°€ λ˜μ–΄ μ „λΌμ’Œμˆ˜μ˜μ—μ„œ μ™œμ μ„ 물리쳀으며, 1597λ…„μ—λŠ” μˆ˜μ›κ³Ό ν•œμ–‘ 방어을 μ„±κ³΅μ μœΌλ‘œ μΉ˜λ£Œν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ λͺ…λŸ‰λŒ€μ²©μ—μ„œ μ™œμ κ³Ό κ²©μ „ν•˜μ—¬ μ΄μˆœμ‹  μ΄μˆœμ‹  μž₯ꡰ은 λͺ…λŸ‰λŒ€μ²©μ—μ„œ μ‘°μ„  κ΄€κ΅°μ˜ 승리λ₯Ό μ΄λŒμ—ˆμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 의리λ₯Ό 지킀기 μœ„ν•΄ μ „λ¦¬ν’ˆμ„ κ³ μˆ˜ν•˜λŠ” 결단을 λ‚΄λ ΈμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 1598λ…„ μ‚¬μ²œμ„± μ „νˆ¬μ—μ„œ νŒ¨μ „ν•œ ν›„ μ „μ„Έκ°€ 역전돼 μ „μ„Έκ°€ λΆˆλ¦¬ν•΄μ§€μž, λ‚¨ν•˜ν•˜μ—¬ μ΄μˆœμ‹  μž₯ꡰ은 κ²°κ΅­ 좩무곡 μ΄μˆœμ‹ μ˜ 칭호λ₯Ό λ°›μ•˜μŠ΅λ‹ˆλ‹€. 그의 곡적은 λŒ€ν•œλ―Όκ΅­ μ΄μˆœμ‹  μž₯κ΅° κΈ°λ…κ΄€μœΌλ‘œ λͺ…μ˜ˆλ₯Ό 높이고 μžˆμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯κ΅°λ‹˜μ€ μ„ ν˜„μ˜ 칭호둜 1963λ…„ κ±΄κ΅­ν›ˆμž₯ 졜고 ν›ˆμž₯을 μˆ˜μ—¬λ°›μ•˜μœΌλ©°, λŒ€ν•œλ―Όκ΅­μ˜ ꡭ보 제13호둜 μ§€μ •λμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 전섀적인 인물둜 ν•œκ΅­μ˜ μ—­μ‚¬μ—μ„œ 큰 쑱적을 λ‚¨κ²ΌμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ이 μ™œλž€ λ‹Ήμ‹œμ˜ μ „νˆ¬μž₯μ†ŒλŠ” 좩무곡이 신라 μ²œμžμ—κ²Œ λ‚˜λΌλ₯Ό μœ„ν•΄ μ‹Έμš΄ 곳을 μ΄μˆœμ‹  μž₯ꡰ의 λ¬˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. λ‚˜λΌμ˜ κ³ λ‚œμ— 지성 μ΄μˆœμ‹  μž₯κ΅°λ‹˜μ˜ μœ„μ—…κ³Ό 의리λ₯Ό κΈ°λ…ν•˜λŠ” κ³³μž…λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ의 행적은 μ΄μˆœμ‹  μž₯κ΅° 기념관, μ΄μˆœμ‹  곡원 등이 μžˆμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ의 곡적을 κΈ°λ…ν•˜κΈ° μœ„ν•΄ λ‹€μ–‘ν•œ λ¬Έν™”μœ μ‚°κ³Ό 기념물이 μ‘°μ„±λμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ의 정신은 λ‚˜λΌλ₯Ό μœ„ν•΄ μ‹Έμš΄ μœ„λŒ€ν•œ 우리의 μ˜μ›…μž…λ‹ˆλ‹€. 1552λ…„ 12μ›”μ—λŠ” μ΄μˆœμ‹  μž₯ꡰ의 전섀을 μ˜›λ‚  동넀에 λ°°ν–₯, ν˜„μž¬λŠ” 좩무곡 μ΄μˆœμ‹  μž₯κ΅°κ»˜μ„œλŠ” μš°λ¦¬λ‚˜λΌμ˜ 상징적 인물이 λμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 μ‘°μ„ μ™•μ‘°μ˜ μ€‘μ‹œλ₯Ό λ°›κ³  μžˆμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 μ„ μ‘°μ—κ²Œ λ§Žμ€ λŒ€μ˜λ₯Ό μ΄λ£¨μ—ˆμŠ΅λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ의 곡적을 μ˜€λŠ˜λ‚ μ— μ΄λŒμ–΄ μ£ΌλŠ” μΈλ¬Όμž…λ‹ˆλ‹€. κ·Έλ₯Ό λͺ¨μ‹  것은 μ „κ΅­μ˜ μ‚¬λžŒλ“€μž…λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯κ΅°λ‹˜μ˜ κ³ κ²°ν•œ 정신은 μš°λ¦¬λ‚˜λΌκ°€ μ΄λ£©ν•œ μ„±κ³Όμž…λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 λ‚˜λΌλ₯Ό μœ„ν•΄ μ‹Έμš΄ μœ„λŒ€ν•œ μΈλ¬Όμž…λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ은 λŒ€ν•œλ―Όκ΅­μ—μ„œ κ°€μž₯ μœ„λŒ€ν•œ μΈλ¬Όμž…λ‹ˆλ‹€. μ΄μˆœμ‹  μž₯ꡰ의 행적은 μ˜μ›νžˆ κΈ°μ–΅ λ˜κ² μ§€μš”.
```

```python
messages = [
    {"role": "system", "content": "μΉœμ ˆν•œ μ±—λ΄‡μœΌλ‘œμ„œ μƒλŒ€λ°©μ˜ μš”μ²­μ— μ΅œλŒ€ν•œ μžμ„Έν•˜κ³  μΉœμ ˆν•˜κ²Œ λ‹΅ν•˜μž. λͺ¨λ“  λŒ€λ‹΅μ€ ν•œκ΅­μ–΄(Korean)으둜 λŒ€λ‹΅ν•΄μ€˜."},
    {"role": "user", "content": "μ„Έμ’…λŒ€μ™•μ˜ μ§‘ν˜„μ „ λ§₯뢁 던짐 사건에 λŒ€ν•΄μ„œ μ•Œκ³  μžˆμ–΄?"},
]
---
λ„€, μ„Έμ’…λŒ€μ™•μ˜ μ§‘ν˜„μ „ λ§₯뢁 던짐 사건은 μ‘°μ„ μ‹œλŒ€ μ€‘κΈ°μ˜ 문화적 λ°°κ²½κ³Ό κ΄€λ ¨λœ μ€‘μš”ν•œ μ‚¬κ±΄μž…λ‹ˆλ‹€. 1399λ…„ 10μ›” 2일에 μΌμ–΄λ‚œ 이 사건은 μ„Έμ’…λŒ€μ™•μ΄ μ €μˆ ν•œ γ€Žμ£Όν•΄γ€μ— λŒ€ν•œ λΉ„νŒλ¬ΈμΈ γ€Žμ˜μ‚°λ‘γ€μ„ μ €μˆ ν•œ μ΅œλ§Œλ¦¬μ™€μ˜ λ…ΌμŸμœΌλ‘œ μ‹œμž‘λμŠ΅λ‹ˆλ‹€. λ‹Ήμ‹œ μ„Έμ’…λŒ€μ™•μ€ μ§‘ν˜„μ „ ν•™μ‚¬λ“€μ—κ²Œ λ¬Έμ˜ˆλΆ€μ˜ 일치된 견해λ₯Ό κ΅¬ν•˜λ˜ 쀑에 μ΅œλ§Œλ¦¬κ°€ γ€Žμ˜μ‚°λ‘γ€μ˜ 글을 κ±°λ‘ ν•˜μ—¬ λΉ„νŒν•˜μž, μ„Έμ’… λŒ€μ™•μ΄ λ§₯뢁을 λ˜μ‘Œλ‹€κ³  ν•©λ‹ˆλ‹€. 이 사건은 μ‚¬μƒμ μœΌλ‘œλŠ” μ‘°μ„  μ™•μ‘° 초기 λ¬Έμ˜ˆλΆ€μ˜ ν•™μˆ  체계와 μ •μΉ˜μ  κ²¬ν•΄μ˜ λŒ€λ¦½μ„ λ…ΈμΆœν•˜λŠ” μ‚¬κ±΄μ΄μž 문학사적인 문제둜 μ΄μ–΄μ‘ŒμŠ΅λ‹ˆλ‹€.  이 μ‚¬κ±΄μœΌλ‘œ 인해 μ‘°μ„ μ‹œλŒ€μ˜ λ¬Έμ˜ˆλΆ€μ™€ μ‚¬λŒ€λΆ€μ˜ 견해 차이점을 λ…ΈμΆœν•˜λŠ” μ€‘μš”ν•œ μ‚¬κ±΄μœΌλ‘œ 기둝되고 μžˆμŠ΅λ‹ˆλ‹€. 주둜 λ…ΌμŸ 배경은 γ€Žμ£Όν•΄γ€μ˜ μ €μžλ‚˜ λ‚΄μš© 뢄석에 λŒ€ν•œ 이견과 μ§‘ν˜„μ „ ν•™μ‚¬λ“€μ˜ λ¬Έμ˜ˆκ΄€μ— λŒ€ν•œ λΉ„νŒμ„ μ€‘μ‹¬μœΌλ‘œ μ΄λ€„μ‘ŒμŠ΅λ‹ˆλ‹€. 이 사건은 μ‘°μ„  초기 μ™•μ‘° λ‚΄λΆ€μ˜ 견해 차이에 λ”°λ₯Έ ν•™μˆ μ μΈ λ…ΌμŸμœΌλ‘œ μ‹œμž‘λ˜μ–΄ μ •μΉ˜μ μΈ μš”μΈκΉŒμ§€ κ²°λΆ€ν•˜μ—¬ μ‘°μ„ μ™•μ‘° 초기 λ¬Έν™”μ Β·μ •μΉ˜μ  λ…ΌμŸμœΌλ‘œ ν™•μž₯λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 사건은 λ‹Ήμ‹œμ— μ™•μ‘° λ‚΄λΆ€μ˜ κ΄€λ£Œμ œλ„μ™€ μ„Έλ ₯측의 κ°ˆλ“±μ„ λ³΄μ—¬μ£ΌλŠ” μ€‘μš”ν•œ μ˜ˆκ°€ λ©λ‹ˆλ‹€. 이 μ‚¬κ±΄μ—μ„œ μ£Όλ₯˜ ν•™ν’μ˜ λΉ„νŒλΏ μ•„λ‹ˆλΌ, 역사적 μ‚¬μ‹€μ˜ μ™œκ³‘μ— λŒ€ν•œ λ…Όλž€λ„ 제기 λ©λ‹ˆλ‹€.  μ‹€μ œλ‘œ μ‹¬κ°ν•œ μž¬λ‚œμ„ μ΄ˆλž˜ν•˜λŠ” λŒ€κ·œλͺ¨μ μΈ λ…ΌμŸμœΌλ‘œ ν™•μ‚°λ˜μ§€ μ•Šμ•˜λ‹€ ν•˜λ”λΌλ„ λ‹Ήμ‹œ μ‚¬λŒ€λΆ€ λ‚΄λΆ€μ˜ 견해 μ°¨μ΄λ‚˜ μ •μΉ˜μ  μ–΅μ••μœΌλ‘œ μΈν•œ μ‚¬νšŒμ  지각 변동을 μΌμœΌν‚€κΈ°λ„ ν–ˆμŠ΅λ‹ˆλ‹€. λ‹Ήμ‹œμ˜ λ§₯뢁 λ˜μ§μ€ λ¬Έμ˜ˆλΆ€μ˜ 견해가 갈랐던 사건이라 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ”μš±μ΄ λ‹Ήμ‹œμ˜ λ§₯뢁 λ˜μ§μ€ μ‚¬νšŒμ  μ§€μ‹μΈμΈ΅μ—μ„œλ„ 이견이 μžˆμ„ 수 μžˆλŠ” 것은 κΈ°λ³Έμž…λ‹ˆλ‹€.  이 μ‚¬κ±΄μœΌλ‘œ μ˜€λŠ˜λ‚ κΉŒμ§€λ„ ν•œκ΅­μ˜ μ—­μ‚¬μ—μ„œ μ€‘μš”ν•œ 연ꡬ λŒ€μƒμ΄ 되고 μžˆμŠ΅λ‹ˆλ‹€. λ§₯뢁 μ΄λΌλŠ” 말은 μ‚¬κ±΄μ˜ μ£Όλ¬΄λŒ€λΌλŠ” μš©μ–΄λ₯Ό λ§Œλ“€μ–΄ λ‹Ήμ‹œμ˜ 사건을 ν‘œν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 사건은 주둜 μ •μΉ˜Β·ν•™μˆ Β·μ˜ˆμˆ  λ“± μ‚¬νšŒμ Β·λ¬Έν™”μ μΈ μ—¬λŸ¬ λΆ„μ•Όμ—μ„œ μΌμ–΄λ‚˜κ²Œ λ©λ‹ˆλ‹€. 이 사건은 이념적 κ΄€μ μ˜ μ°¨μ΄μ—μ„œ μ‹œμž‘λ˜μ§€λ§Œ, μ‚¬νšŒμ  λŒ€λ¦½κ³Ό κ°ˆλ“±κΉŒμ§€ μ΄ˆλž˜ν•˜λŠ” μ‚¬κ±΄μœΌλ‘œ κ°„μ£Όν•˜κΈ°λ„ ν•©λ‹ˆλ‹€. 이 문건에 λŒ€ν•œ μž¬ν•΄μ„μ„ 톡해 λ‹Ήμ‹œ ν•œκ΅­ μ‚¬νšŒλ₯Ό 이해할 수 μžˆμŠ΅λ‹ˆλ‹€.  μ΅œλ§Œλ¦¬λŠ” λ¬Έμ˜ˆλΆ€μ˜ 견해λ₯Ό λΉ„νŒν•  수 μžˆλŠ” κ³΅κ°„μœΌλ‘œ λ³΄μ•˜μ§€λ§Œ, λ‹Ήμ‹œμ˜ λ§₯뢁은 μ •μΉ˜μ Β·λ¬Έμ˜ˆμ μœΌλ‘œλŠ” μ‹¬κ°ν•œ 문제둜 μΈμ‹ν•˜κ²Œ λ©λ‹ˆλ‹€. 이 사건은 λ‹Ήμ‹œμ˜ 상황을 μ΄ν•΄ν•˜λŠ” 데 도움이 λ©λ‹ˆλ‹€. 이둠은 이 μ‚¬νšŒμ˜ μ£Όλ₯˜ ν•™ν’μ΄λ‚˜ 문화적 배경을 읽을 수 μžˆλŠ” μ€‘μš”ν•œ μ‚¬κ±΄μ˜ μ¦κ±°μž…λ‹ˆλ‹€. λ”°λΌμ„œ 이 사건은 μ˜€λŠ˜λ‚ κΉŒμ§€λ„ λ‹€μ–‘ν•œ λ°©λ©΄μ—μ„œ μ—°κ΅¬μ˜ λŒ€μƒμœΌλ‘œ 남아 μžˆμŠ΅λ‹ˆλ‹€. 이 사건이 μ „μ μœΌλ‘œ λ…ΌμŸλ§Œμ΄ μ•„λ‹ˆλΌλŠ” 점은 μ£Όμ˜ν•  ν•„μš”κ°€ μžˆμŠ΅λ‹ˆλ‹€. 이와 ν•¨κ»˜ μ‚¬λŒ€λΆ€ λ‚΄λΆ€μ˜ 견해 차이 그리고 지적 κ°ˆλ“±μ˜ 폭넓은 의미λ₯Ό μ΄ν•΄ν•˜λŠ”λ° 도움이 λ©λ‹ˆλ‹€. 이 μ‚¬κ±΄μœΌλ‘œ 인해, λ¬Έμ˜ˆλΆ€μ™€ μ •μΉ˜μ  κ²¬ν•΄μ˜ λŒ€λ¦½μ€ ν•œκ΅­ μ‚¬νšŒμ˜ 변화에 λŒ€ν•œ ν•œ 양상을 λ³΄μ—¬μ£ΌλŠ” ν•˜λ‚˜μ˜ μžλ£Œκ°€ λ©λ‹ˆλ‹€. 이둜써 μš°λ¦¬λŠ” μ‘°μ„ μ™•μ‘° 초기 문화적 λ°°κ²½κ³Ό μ •κΆŒμ˜ 견해λ₯Ό 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. 이 사건은 λ‹Ήμ‹œμ˜ ν•œκ΅­ μ‚¬νšŒμ˜ λ¬Έν™”μ Β·μ •μΉ˜μ  ν˜„μƒ κ°€μš΄λ° ν•˜λ‚˜μž…λ‹ˆλ‹€.  이와 같은 λ§₯뢁 던짐 μ‚¬κ±΄μ—μ„œ μš°λ¦¬λŠ” λ‹€μ–‘ν•œ λ°©μ‹μœΌλ‘œ ν•œκ΅­μ‚¬μ˜ 역사적인 배경을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ λ§₯뢁 사건은 사건 μžμ²΄κ°€ μ•„λ‹Œ μ‚¬κ±΄μ˜ λ§₯λ½μ—μ„œ ν•œκ΅­μ‚¬μ μΈ 배경을 νŒŒμ•…ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€. μš°λ¦¬λŠ” 이 μ‚¬κ±΄μœΌλ‘œ λ‹Ήμ‹œμ˜ μ‚¬νšŒμƒμ„ μ΄ν•΄ν•˜κ³  문화적 배경을 νŒŒμ•…ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄μ μ—μ„œ 사건은 λ‹Ήμ‹œ μ‚¬νšŒμ˜ μ€‘μš”μ„±μ„ κ°•μ‘°ν•©λ‹ˆλ‹€. 이 사건은 μ‚¬νšŒμ‚¬μ μœΌλ‘œ μ—°κ΅¬ν•˜μ—¬ λ‹Ήμ‹œ μ‚¬νšŒμƒμ˜ μ€‘μš”μ„±μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. 이 점은 역사적·문화적 배경을 μž¬ν•΄μ„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 사건은 μ‘°μ„  μ™•μ‘° 초기의 μ£Όμš” 사건이 λ©λ‹ˆλ‹€. 이 μ μ—μ„œ μ€‘μš”ν•œ μ‚¬κ±΄μœΌλ‘œ μΈμ •ν•©λ‹ˆλ‹€. λ…Όμ˜μ˜ μ „κ°œκΉŒμ§€λŠ” 이보닀 더 λ³΅μž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ§₯뢁 던짐 사건
```

```python
messages = [
    {"role": "system", "content": "μΉœμ ˆν•œ μ±—λ΄‡μœΌλ‘œμ„œ μƒλŒ€λ°©μ˜ μš”μ²­μ— μ΅œλŒ€ν•œ μžμ„Έν•˜κ³  μΉœμ ˆν•˜κ²Œ λ‹΅ν•˜μž. λͺ¨λ“  λŒ€λ‹΅μ€ ν•œκ΅­μ–΄(Korean)으둜 λŒ€λ‹΅ν•΄μ€˜."},
    {"role": "user", "content": "λ‚˜λŠ” 였늘 사과 5개λ₯Ό κ°–κ³ μžˆμ–΄. 그리고 μ–΄μ œ λ‚˜λŠ” 사과 2개λ₯Ό λ¨Ήμ—ˆμ§€. λ‚΄κ°€ μ§€κΈˆ 가진 μ‚¬κ³ΌλŠ” λͺ‡ κ°œμ§€?"},
]
---
μ‚¬κ³Όμ˜ μˆ˜λŸ‰μ„ ν™•μΈν•˜κ² μŠ΅λ‹ˆλ‹€. μ €λŠ” 5개의 사과가 μžˆμœΌμ‹ λ°, κ·Έ 쀑 2개λ₯Ό 이미 λ¨Ήμ—ˆμœΌλ‹ˆ 3개의 사과가 λ‚¨μ•„μžˆμŠ΅λ‹ˆλ‹€! γ…Žγ…Ž. κ³„μ†ν•΄μ„œ 먹을 κ³„νš μ—†μž–μ•„μš”? πŸ˜‰
```