File tree 4 files changed +14
-15
lines changed
CPU/QLoRA-FineTuning/alpaca-qlora
4 files changed +14
-15
lines changed Original file line number Diff line number Diff line change 39
39
from datasets import load_dataset
40
40
import accelerate
41
41
42
- from transformers import LlamaTokenizer
42
+ from transformers import AutoTokenizer
43
43
from peft import (
44
44
get_peft_model_state_dict ,
45
45
set_peft_model_state_dict ,
@@ -198,13 +198,12 @@ def train(
198
198
model = model .to ("cpu" )
199
199
print (f"Model moved to rank { os .environ .get ('LOCAL_RANK' )} " )
200
200
201
- tokenizer = LlamaTokenizer .from_pretrained (base_model )
201
+ tokenizer = AutoTokenizer .from_pretrained (base_model )
202
202
print (f"Tokenizer loaded on rank { os .environ .get ('LOCAL_RANK' )} " )
203
203
204
- tokenizer .pad_token_id = (
205
- 0 # unk. we want this to be different from the eos token
206
- )
207
- tokenizer .padding_side = "left" # Allow batched inference
204
+ # For Llama family
205
+ if tokenizer .pad_token is None :
206
+ tokenizer .pad_token = tokenizer .eos_token
208
207
209
208
print (model )
210
209
Original file line number Diff line number Diff line change @@ -180,10 +180,9 @@ def train(
180
180
tokenizer = AutoTokenizer .from_pretrained (base_model , trust_remote_code = True )
181
181
print (f"Tokenizer loaded on rank { os .environ .get ('LOCAL_RANK' )} " )
182
182
183
- tokenizer .pad_token_id = (
184
- 0 # unk. we want this to be different from the eos token
185
- )
186
- tokenizer .padding_side = "left" # Allow batched inference
183
+ # For Llama family
184
+ if tokenizer .pad_token is None :
185
+ tokenizer .pad_token = tokenizer .eos_token
187
186
188
187
print (model )
189
188
Original file line number Diff line number Diff line change @@ -192,11 +192,9 @@ def train(
192
192
tokenizer = AutoTokenizer .from_pretrained (base_model , trust_remote_code = True )
193
193
print (f"Tokenizer loaded on rank { os .environ .get ('LOCAL_RANK' )} " )
194
194
195
- tokenizer .pad_token_id = (
196
- 0 # unk. we want this to be different from the eos token
197
- )
198
- tokenizer .padding_side = "left" # Allow batched inference
199
-
195
+ # For Llama family
196
+ if tokenizer .pad_token is None :
197
+ tokenizer .pad_token = tokenizer .eos_token
200
198
print (model )
201
199
202
200
# Prepare a IPEX-LLM compatible Peft model
Original file line number Diff line number Diff line change @@ -192,6 +192,9 @@ def train(
192
192
193
193
tokenizer = AutoTokenizer .from_pretrained (base_model , trust_remote_code = True )
194
194
print (f"Tokenizer loaded on rank { os .environ .get ('LOCAL_RANK' )} " )
195
+ # For Llama family
196
+ if tokenizer .pad_token is None :
197
+ tokenizer .pad_token = tokenizer .eos_token
195
198
print (model )
196
199
197
200
# Prepare a IPEX-LLM compatible Peft model
You can’t perform that action at this time.
0 commit comments