bstraehle commited on
Commit
e67b0f1
·
verified ·
1 Parent(s): db4a8f0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -14
app.py CHANGED
@@ -4,8 +4,8 @@ import gradio as gr
4
  import os, torch
5
  from datasets import load_dataset
6
  from huggingface_hub import HfApi, login
7
- from peft import LoraConfig, TaskType, get_peft_model, prepare_model_for_kbit_training
8
- from transformers import AutoModelForCausalLM, AutoTokenizer, Seq2SeqTrainer, Seq2SeqTrainingArguments, Trainer, TrainingArguments, pipeline
9
 
10
  ACTION_1 = "Prompt base model"
11
  ACTION_2 = "Fine-tune base model"
@@ -79,7 +79,7 @@ def fine_tune_model(base_model_name, dataset_name):
79
 
80
  # Configure training arguments
81
 
82
- training_args = TrainingArguments(
83
  output_dir=f"./{FT_MODEL_NAME}",
84
  num_train_epochs=3, # 37,500 steps
85
  max_steps=1, # overwrites num_train_epochs
@@ -93,27 +93,27 @@ def fine_tune_model(base_model_name, dataset_name):
93
 
94
  # PEFT
95
 
96
- lora_config = LoraConfig(
97
- r=16,
98
  # TODO https://www.philschmid.de/fine-tune-flan-t5-peft
99
  #bias="none",
100
  #lora_alpha=32,
101
  #lora_dropout=0.05,
102
  #target_modules=["q", "v"],
103
- task_type=TaskType.SEQ_2_SEQ_LM,
104
- )
105
 
106
- model = prepare_model_for_kbit_training(model)
107
 
108
- model = get_peft_model(model, lora_config)
109
 
110
- print("### PEFT")
111
- model.print_trainable_parameters() # trainable params: 6,815,744 || all params: 8,037,076,992 || trainable%: 0.0848
112
- print("###")
113
 
114
  # Create trainer
115
 
116
- trainer = Trainer(
117
  model=model,
118
  args=training_args,
119
  train_dataset=train_dataset,
@@ -152,7 +152,7 @@ def prompt_model(model_name, system_prompt, user_prompt, sql_context):
152
  return result
153
 
154
  def load_model(model_name):
155
- model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", load_in_8bit=True)
156
  tokenizer = AutoTokenizer.from_pretrained(model_name)
157
  tokenizer.pad_token = tokenizer.eos_token
158
 
 
4
  import os, torch
5
  from datasets import load_dataset
6
  from huggingface_hub import HfApi, login
7
+ #from peft import LoraConfig, TaskType, get_peft_model, prepare_model_for_kbit_training
8
+ from transformers import AutoModelForCausalLM, AutoTokenizer, Seq2SeqTrainer, Seq2SeqTrainingArguments, pipeline
9
 
10
  ACTION_1 = "Prompt base model"
11
  ACTION_2 = "Fine-tune base model"
 
79
 
80
  # Configure training arguments
81
 
82
+ training_args = Seq2SeqTrainingArguments(
83
  output_dir=f"./{FT_MODEL_NAME}",
84
  num_train_epochs=3, # 37,500 steps
85
  max_steps=1, # overwrites num_train_epochs
 
93
 
94
  # PEFT
95
 
96
+ #lora_config = LoraConfig(
97
+ # r=16,
98
  # TODO https://www.philschmid.de/fine-tune-flan-t5-peft
99
  #bias="none",
100
  #lora_alpha=32,
101
  #lora_dropout=0.05,
102
  #target_modules=["q", "v"],
103
+ # task_type=TaskType.SEQ_2_SEQ_LM,
104
+ #)
105
 
106
+ #model = prepare_model_for_kbit_training(model)
107
 
108
+ #model = get_peft_model(model, lora_config)
109
 
110
+ #print("### PEFT")
111
+ #model.print_trainable_parameters() # trainable params: 6,815,744 || all params: 8,037,076,992 || trainable%: 0.0848
112
+ #print("###")
113
 
114
  # Create trainer
115
 
116
+ trainer = Seq2SeqTrainer(
117
  model=model,
118
  args=training_args,
119
  train_dataset=train_dataset,
 
152
  return result
153
 
154
  def load_model(model_name):
155
+ model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto")
156
  tokenizer = AutoTokenizer.from_pretrained(model_name)
157
  tokenizer.pad_token = tokenizer.eos_token
158