|
--- |
|
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 |
|
|
|
**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 |
|
``` |
|
μ΄ μ½λμμλ μ
λ ₯λ°μ μμ λ°λΌ νΌλ³΄λμΉ μμ΄μ... |
|
|
|
|
|
|