glm-4-9b-ko-v2 / README.md
youjunhyeok's picture
Update README.md
ed3d314 verified
metadata
datasets:
  - jojo0217/korean_rlhf_dataset
  - jojo0217/korean_safe_conversation
  - HAERAE-HUB/qarv-instruct-ko
  - HAERAE-HUB/Korean-Human-Judgements
  - HAERAE-HUB/K2-Feedback
  - changpt/ko-lima-vicuna
  - maywell/kiqu_samples
  - CarrotAI/ko-instruction-dataset
  - 4n3mone/vector_bench
language:
  - ko
library_name: transformers
license: other
license_name: glm-4
license_link: https://huggingface.co/THUDM/glm-4v-9b/blob/main/LICENSE
pipeline_tag: text-generation
tags:
  - llama-factory

Model

Dataset

Load Model

Use the following Python code to load the model:

from transformers import AutoTokenizer, AutoModelForCausalLM

path = 'youjunhyeok/glm-4-9b-ko-v2'

model = AutoModelForCausalLM.from_pretrained(path, trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True)
model.to('cuda')

Chat

def chat(message):
    messages = [
        {"role": "system", "content": "당신은 인공지능 어시스턴트입니다. 친절하고 정확한 답변을 해주세요."},
        {"role": "user", "content": message},
    ]

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

    terminators = [
        tokenizer.eos_token_id,
    ]

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

chat('다음 두 집합 A, B에 대해 A 교집합 B = {1, 2, 3, 4, 5}이고, A 합집합 B = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}일 때, A와 B의 원소의 개수 범위를 구하시오.')

Output

집합 A와 B에 대한 정보를 바탕으로 A와 B의 원소의 개수 범위를 구해볼게요.

먼저, A 교집합 B = {1, 2, 3, 4, 5}라는 정보를 보면, 집합 A와 B의 공통 원소는 1, 2, 3, 4, 5이므로, 이 원소들의 개수를 구하면 됩니다. 즉, A와 B의 공통 원소 개수는 5입니다.

다음으로, A 합집합 B = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}라는 정보를 보면, 집합 A와 B의 모든 원소를 합친 결과가 이 집합이므로, 이 집합의 원소 개수를 구하면 됩니다. 즉, A와 B의 합집합 원소 개수는 10입니다.

따라서, 집합 A와 B의 원소의 개수 범위는 5에서 10 사이입니다. 즉, A와 B의 공통 원소 개수는 최소 5개이고, 합집합 원소 개수는 최대 10개입니다. 이 정보를 바탕으로 A와 B의 원소 개수 범위를 구할 수 있어요. 다른 궁금한 점이 있으면 언제든지 물어봐 주세요!

Llama_factory Train Config

{data_dir}, {dataset_name}, {output_dir} is variable

bf16: true
cutoff_len: 2048
dataset: {dataset_name}
dataset_dir: {data_dir}
ddp_timeout: 180000000
do_train: true
eval_steps: 150
eval_strategy: steps
finetuning_type: lora
flash_attn: auto
gradient_accumulation_steps: 8
include_num_input_tokens_seen: true
learning_rate: 0.0001
logging_steps: 5
lora_alpha: 16
lora_dropout: 0.05
lora_rank: 16
lora_target: all
loraplus_lr_ratio: 1
lr_scheduler_type: inverse_sqrt
max_grad_norm: 1.0
max_samples: 75000
model_name_or_path: THUDM/glm-4-9b
num_train_epochs: 3.0
optim: adamw_torch
output_dir: {output_dir}
packing: true
per_device_eval_batch_size: 8
per_device_train_batch_size: 8
plot_loss: true
preprocessing_num_workers: 16
report_to: all
resize_vocab: true
save_steps: 150
stage: sft
template: glm4
val_size: 0.05
warmup_steps: 150