|
--- |
|
language: |
|
- en |
|
- ko |
|
license: other |
|
tags: |
|
- facebook |
|
- meta |
|
- pytorch |
|
- llama |
|
- llama-3 |
|
- llama-3-ko |
|
pipeline_tag: text-generation |
|
license_name: llama3 |
|
license_link: LICENSE |
|
--- |
|
|
|
## Llama-3-Open-Ko-8B-Instruct-preview |
|
|
|
> Update @ 2024.05.01: Pre-Release [Llama-3-KoEn-8B](https://huggingface.co/beomi/Llama-3-KoEn-8B-preview) model & [Llama-3-KoEn-8B-Instruct-preview](https://huggingface.co/beomi/Llama-3-KoEn-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κ°μ μ¬κ³Όκ° λ¨μμμ΅λλ€! γ
γ
. κ³μν΄μ λ¨Ήμ κ³ν μμμμ? π |
|
``` |
|
|
|
|
|
|