Downloads · 30 days
4
4% of all-time downloads
rycont/kanana-2.1b-lora-reasoning
kanana-2.1b-lora-reasoning is a machine learning model from rycont. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for peft.
kakaocorp/kanana-nano-2.1b-instruct 모델에 kuotient/gsm8k-ko 데이터셋으로 COT GRPO를 학습시킨 LoRA 어댑터입니다.
Downloads · 30 days
4
4% of all-time downloads
All-time downloads
91
Public
Repo size
184 MB
Likes
0
Public
Click a slice to open those files.
.safetensors184 MB · 100%
From the Hugging Face model README
kakaocorp/kanana-nano-2.1b-instruct 모델에 kuotient/gsm8k-ko 데이터셋으로 COT GRPO를 학습시킨 LoRA 어댑터입니다.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
from peft import PeftModel
model_name = "kakaocorp/kanana-nano-2.1b-instruct"
peft_model_id = "rycont/kanana-2.1b-lora-reasoning"
base_model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.bfloat16,
trust_remote_code=True,
)
model = PeftModel.from_pretrained(base_model, peft_model_id).to("cuda")
tokenizer = AutoTokenizer.from_pretrained(model_name)
streamer = TextStreamer(tokenizer)
SYSTEM_PROMPT = """
You are a helpful AI assistant developed by Kakao. Respond in the following format:
<reasoning>
...
</reasoning>
<answer>
...
</answer>
"""
messages = [
{"role" : "system", "content" : SYSTEM_PROMPT},
{"role" : "user", "content" : f"철수가 한 변의 길이가 5km인 정사각형 모양의 공원에서 둘레를 따라 나무를 심으려고 해. 나무 사이 간격은 500m야. 한 나무를 심을 때 17번의 삽질이 필요한데, 근로기준법상 한 사람은 인생에서 31번의 삽질밖에 못해. 그렇다면 철수가 나무심기를 완료하기 위해서는 몇명의 인부를 추가로 고용해야 할까?"},
{"role" : "system", "content" : "<reason> 심호흡 하고, 차근차근 생각해보자. 일단, "},
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
continue_final_message=True,
return_tensors="pt"
).to("cuda")
_ = model.eval()
# with model.disable_adapter():
with torch.no_grad():
output = model.generate(
input_ids,
max_new_tokens=1024,
streamer=streamer,
tokenizer=tokenizer,
stop_strings="</answer>"
)
print(tokenizer.decode(output[0]))