728x90
300x250
오늘은 AutoGPTQ로 한글 라마13b 모델을 양자화해볼려고 한다. 오늘도 koalpaca 데이터셋을 사용하려고 한다. 가볍게 데이터셋 프롬프트 형식만 맞춰서 만들어주고...
ds = load_dataset("beomi/KoAlpaca-v1.1a", split="train")
ds_list = []
for i in range(len(ds)):
ds_list.append(f"### User:\n{ds[i]['instruction']}\n\n### Assistant:\n{ds[i]['output']}</s>")
pickle.dump(ds_list, open("./ds.pkl", 'wb'), protocol=4)
AutoGPTQ를 통해서 양자화 하기 위한 코드르 준비한다. 뭐 별거 없다. 다 만들어주는 패키지ㄷㄷㄷ;;;
당연히 4비트 128그룹으로 준비한다.
logging.basicConfig(
format="%(asctime)s %(levelname)s [%(name)s] %(message)s", level=logging.INFO, datefmt="%Y-%m-%d %H:%M:%S"
)
pretrained_model_dir =
quantized_model_dir =
tokenizer = AutoTokenizer.from_pretrained(pretrained_model_dir, use_fast=True)
examples = []
for i in ds:
examples.append(tokenizer(i))
quantize_config = BaseQuantizeConfig(
bits=4,
group_size=128,
desc_act=False,
)
model = AutoGPTQForCausalLM.from_pretrained(pretrained_model_dir, quantize_config)
model.quantize(examples[:1000])
model.save_quantized(quantized_model_dir)
model.save_quantized(quantized_model_dir, use_safetensors=True)
돌아는 가고 있는데 로스가 심상치 않다 잘 안될거 같은 이 불길한 기운 ㅠㅠ
나중에 돌와서 작성하겠음..
728x90
300x250
'코딩 > 프로젝트' 카테고리의 다른 글
lora finetuning 후 EOS token이 안나오는 문제 (0) | 2023.10.28 |
---|---|
llama2에 remon 데이터로 LoRA 학습기 (0) | 2023.10.25 |
exllamav2로 exl2형식으로 양자화하기 (1) | 2023.10.20 |
nllb200을 이용한 다국어 번역 (0) | 2023.08.17 |
Transformers를 generator로 만드는 방법 (0) | 2023.08.16 |