Instructions to use qwopqwop/EEVE-ALMA with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use qwopqwop/EEVE-ALMA with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("yanolja/EEVE-Korean-Instruct-10.8B-v1.0") model = PeftModel.from_pretrained(base_model, "qwopqwop/EEVE-ALMA") - Notebooks
- Google Colab
- Kaggle
| library_name: peft | |
| base_model: yanolja/EEVE-Korean-Instruct-10.8B-v1.0 | |
| license: mit | |
| language: | |
| - ko | |
| - en | |
| pipeline_tag: translation | |
| 사용 데이터셋: aihub | |
| 훈련 환경: RTX3090 x 8 | |
| epoch: 1 | |
| time: 19시간 | |
| ``` python | |
| import torch | |
| from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig | |
| from peft import prepare_model_for_kbit_training, PeftModel, PeftConfig | |
| model_path = 'yanolja/EEVE-Korean-Instruct-10.8B-v1.0' | |
| lora_path = 'qwopqwop/EEVE-ALMA' | |
| bnb_config = BitsAndBytesConfig(load_in_4bit=True,bnb_4bit_quant_type="nf4",bnb_4bit_compute_dtype=torch.float16,) | |
| model = AutoModelForCausalLM.from_pretrained(model_path, quantization_config=bnb_config, trust_remote_code=True) | |
| model.config.use_cache = False | |
| model = PeftModel.from_pretrained(model, lora_path) | |
| model = prepare_model_for_kbit_training(model) | |
| tokenizer = AutoTokenizer.from_pretrained(model_path, padding_side='left') | |
| en_text = 'Hi.' | |
| ko_text = '안녕하세요.' | |
| en_prompt = f"Translate this from English to Korean:\nEnglish: {en_text}\nKorean:" | |
| ko_prompt = f"Translate this from Korean to English:\nKorean: {ko_text}\nEnglish:" | |
| input_ids = tokenizer(en_prompt, return_tensors="pt", padding=True, max_length=256, truncation=True).input_ids.cuda() | |
| with torch.no_grad(): | |
| generated_ids = model.generate(input_ids=input_ids, num_beams=5, max_new_tokens=20, do_sample=True, temperature=0.6, top_p=0.9) | |
| outputs = tokenizer.batch_decode(generated_ids, skip_special_tokens=True) | |
| print(outputs) | |
| input_ids = tokenizer(ko_prompt, return_tensors="pt", padding=True, max_length=256, truncation=True).input_ids.cuda() | |
| with torch.no_grad(): | |
| generated_ids = model.generate(input_ids=input_ids, num_beams=5, max_new_tokens=20, do_sample=True, temperature=0.6, top_p=0.9) | |
| outputs = tokenizer.batch_decode(generated_ids, skip_special_tokens=True) | |
| print(outputs) | |
| ``` |