Easy-Systems/easy-ko-gemma-2-9b-it-v1
DALL-E๋ก ์์ฑํ ์ด๋ฏธ์ง์ ๋๋ค.
- google/gemma-2-9b-it ๋ฅผ ๋ฒ ์ด์ค๋ก ํ์ฌ ๋ค์ํ Task(QA, Summary, Translate, Coding, Math ๋ฑ)๊ฐ ๊ตฌ์ฑ๋ ํ๊ตญ์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธํ๋ ๋ ๋ชจ๋ธ ์ ๋๋ค.
- ์ ์ ๋ 6๋ง๊ฐ์ ๋ฐ์ดํฐ๋ก ํ์ธํ๋์ ํตํด Task ๋ณ ๋ต๋ณ์ด ๊ฐ์ ๋ ๋ชจ๋ธ ์ ๋๋ค.
Data
- AI hub (https://www.aihub.or.kr/), ๊ตญ๋ฆฝ๊ตญ์ด์(https://www.korean.go.kr/) ๋ฐ์ดํฐ๋ฅผ ๋ค์ํ Task๋ก ๊ฐ๊ณตํ์ฌ ํ์ธํ๋์ ์ฌ์ฉ.
How to use
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
model_id = "Easy-Systems/easy-ko-gemma-2-9b-it-v1"
model = AutoModelForCausalLM.from_pretrained(model_id,
attn_implementation="eager",
torch_dtype=torch.bfloat16,
device_map="auto")
tokenizer = AutoTokenizer.from_pretrained(model_id)
prompt=""
messages = [
{"role": "user", "content": "๋น์ ์ ์น์ ํ AI chatbot ์
๋๋ค. ์์ฒญ์ ๋ํด์ ํ๊ตญ์ด๋ก ๋ต๋ณํด์ฃผ์ธ์.\n" + prompt},
]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
outputs = model.generate(
input_ids,
max_new_tokens=2048,
do_sample=True,
temperature=0.3,
repetition_penalty=1.1,
top_p=0.95,
top_k=40,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True).strip())
Example Output
"maywell/logickor_evaluators" ์ ์ง๋ฌธ์ ์ฌ์ฉํจ.
- Math
f(x) = 3x^3 + 2x^2 + 58์ ๋ฏธ๋ถํ์์ค, ๋ฏธ๋ถํ ์์ ํ ๋ฒ ๋ ๋ฏธ๋ถํด๋ณด์์ค.
f(x) = 3x^3 + 2x^2 + 58์ ๋ฏธ๋ถ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
f'(x) = 9x^2 + 4x
f'(x)๋ฅผ ํ ๋ฒ ๋ ๋ฏธ๋ถํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
f''(x) = 18x + 4
- Reasnoning
๋ฏผ์์๊ฒ๋ ๋นจ๊ฐ์ ์ ์ธ ํ ๋ฒ๊ณผ ๋ ธ๋์ ์ ์ธ ๋ค์ฏ ๋ฒ์ด ์์ด. ๋ฏผ์๊ฐ ๋ ธ๋์ ๋ฐ์ง 3๋ฒ์ ์๋ก ๊ตฌ๋งคํ๊ณ ๋ ธ๋์ ๋ฐ์ง ๋ ๋ฒ์ ์น๊ตฌ์๊ฒ ์ ๋ฌผํ์ ๋ ๋ฏผ์๋ ๋ช ๋ฒ์ ๋ ธ๋์ ์ ์ธ ๋ฅผ ๊ฐ์ง๊ณ ์์๊น?
๋ฏผ์๊ฐ ๊ฐ์ง๊ณ ์๋ ์ ์ธ ๋ค์ ์์์ ๋ชจ๋ ์์ผ๋ฉด ๋ฌด์จ ์์ด ๋ ๊น? ๋ฌผ๊ฐ์ ๊ฒฝ์ฐ์ ๋น์ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ์ค๋ช ํด์ค.
๋ฏผ์๋ ๋
ธ๋์ ์
์ธ ๋ค์ฏ ๋ฒ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๋
ธ๋์ ๋ฐ์ง์ ์๋ ๋ฏผ์๊ฐ ๊ฐ์ง๊ณ ์๋ ์
์ธ ์ ์์๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ฏผ์๋ ์ฌ์ ํ 5๋ฒ์ ๋
ธ๋์ ์
์ธ ๋ฅผ ๊ฐ์ง๊ณ ์์ ๊ฒ์
๋๋ค.
๋ฏผ์๊ฐ ๊ฐ์ง๊ณ ์๋ ์
์ธ ๋ค์ ์์์ ๋ชจ๋ ์์ผ๋ฉด ๋ฌด์จ ์์ด ๋ ๊น์? ๋ฌผ๊ฐ์ ๊ฒฝ์ฐ์ ๋น์ ๊ฒฝ์ฐ๋ฅผ ๋ชจ๋ ์ค๋ช
ํด ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๋ฌผ๊ฐ: ๋นจ๊ฐ์๊ณผ ๋
ธ๋์์ ์์ผ๋ฉด ์ฃผํฉ์์ด ๋ฉ๋๋ค. ๋ฐ๋ผ์ ๋ฏผ์๊ฐ ๊ฐ์ง๊ณ ์๋ ๋ชจ๋ ์
์ธ ๋ฅผ ์์ผ๋ฉด ์ฃผํฉ์์ด ๋ ๊ฒ์
๋๋ค.
๋น: ๋นจ๊ฐ์๊ณผ ๋
ธ๋์์ ์์ผ๋ฉด ์ฃผํฉ์์ด ๋ฉ๋๋ค. ์ด๋ ๋ฌผ๊ฐ๊ณผ ๊ฐ์ ์๋ฆฌ๋ก ์๋ํฉ๋๋ค. ํ์ง๋ง, ๋น์ ๋ค๋ฅธ ์์์ ๋น์ ํก์ํ๊ณ ๋ฐ์ฌํ๋ ๋ฐฉ์์ผ๋ก ์๋ํ๊ธฐ ๋๋ฌธ์, ๋นจ๊ฐ์๊ณผ ๋
ธ๋์ ๋น์ ์์ผ๋ฉด ์ฃผํฉ์ ๋น์ด ์์ฑ๋ฉ๋๋ค
- Coding
์ฝ๋ฉ ๋ฌธ์ ์ฃผ์ด์ง ๋ฆฌ์คํธ์์ ์ค๋ณต๋์ง ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์ ๋ฅผ ๋ฐํํ๋ ํจ์๋ฅผ ์์ฑํด๋ผ.
ํจ์๋ช : find_unique_character
๋งค๊ฐ๋ณ์: characters (list)
๋ฐํ๊ฐ: ์ค๋ณต๋์ง ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์
์์:
์ ๋ ฅ: ['a', 'b', 'c', 'a', 'd'] ์ถ๋ ฅ: 'b'
์ ๋ ฅ: ['a', 'b', 'a', 'b', 'c'] ์ถ๋ ฅ: 'c'
์ ๋ ฅ: ['a', 'b', 'c', 'd', 'e'] ์ถ๋ ฅ: 'a'
์ธ์ด๋ ์์ ๋กญ๊ฒ ์ฌ์ฉ ํ ์ ์๋ค,
def find_unique_character(characters):
"""
์ฃผ์ด์ง ๋ฆฌ์คํธ์์ ์ค๋ณต๋์ง ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ฅผ ๋ฐํํ๋ ํจ์
Args:
characters: ๋ฌธ์์ด ๋ฆฌ์คํธ
Returns:
์ค๋ณต๋์ง ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์
"""
for char in characters:
if characters.count(char) == 1:
return char
# ์์ ์ฌ์ฉ
print(find_unique_character(['a', 'b', 'c', 'a', 'd'])) # ์ถ๋ ฅ: b
print(find_unique_character(['a', 'b', 'a', 'b', 'c'])) # ์ถ๋ ฅ: c
print(find_unique_character(['a', 'b', 'c', 'd', 'e'])) # ์ถ๋ ฅ: a
์ค๋ช
:
ํจ์ ์ ์: find_unique_character(characters) ํจ์๋ฅผ ์ ์ํฉ๋๋ค. ์ด ํจ์๋ ๋ฌธ์์ด ๋ฆฌ์คํธ characters๋ฅผ ์
๋ ฅ์ผ๋ก ๋ฐ์ต๋๋ค.
๋ฐ๋ณต๋ฌธ: for char in characters: ๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ฆฌ์คํธ์ ๊ฐ ๋ฌธ์๋ฅผ ์ํํฉ๋๋ค.
์ค๋ณต ํ์ธ: characters.count(char) == 1 ์ ์ฌ์ฉํ์ฌ ํ์ฌ ๋ฌธ์ char๊ฐ ๋ฆฌ์คํธ์์ ํ ๋ฒ๋ง ๋ํ๋๋์ง ํ์ธํฉ๋๋ค.
๋ฐํ: ๋ง์ฝ ์ค๋ณต๋์ง ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ฅผ ์ฐพ์ผ๋ฉด, ๋ฐ๋ก ํด๋น ๋ฌธ์๋ฅผ ๋ฐํํฉ๋๋ค.
์์ ์ฌ์ฉ:
์ฝ๋์ ์์ ๋ถ๋ถ์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ํ ์
๋ ฅ ๋ฆฌ์คํธ์ ๋ํด ํ
์คํธํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค. ๊ฐ ํ
์คํธ ์ผ์ด์ค๋ find_unique_character() ํจ์๋ฅผ ํธ์ถํ๊ณ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ํ์ํฉ๋๋ค.
License
- Creative Commons Attribution-NonCommercial-ShareAlike 4.0 (CC-BY-NC-SA-4.0)
- ์์ ์ ์ฌ์ฉ ์, ์๋์ ์ฐ๋ฝ์ฒ๋ก ๋ฌธ์ํด์ฃผ์๊ธฐ ๋ฐ๋๋๋ค.
Contact
- ์์ ์ ์ฌ์ฉ ๋๋ ๊ธฐํ ๋ฌธ์ ์ฌํญ์ ๋ํ์ฌ ์ฐ๋ฝํ์๋ ค๋ฉด ๋ค์ ์ด๋ฉ์ผ๋ก ์ฐ๋ฝ ์ฃผ์ญ์์ค.
- ๊ฐํ๊ตฌ: [email protected]
- Downloads last month
- 31