Nemil commited on
Commit
0fc9ad8
Β·
verified Β·
1 Parent(s): efd1fb7

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +40 -46
app.py CHANGED
@@ -156,58 +156,52 @@ class Social_Media_Captioner:
156
 
157
 
158
  def _load_model(self):
159
- try:
160
- self.bnb_config = BitsAndBytesConfig(
161
- load_in_4bit = True,
162
- bnb_4bit_use_double_quant = True,
163
- bnb_4bit_quant_type= "nf4",
164
- bnb_4bit_compute_dtype=torch.bfloat16,
165
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
166
  self.model = AutoModelForCausalLM.from_pretrained(
167
- self.MODEL_NAME,
168
- device_map = "auto",
169
- trust_remote_code = True,
170
- quantization_config = self.bnb_config
 
171
  )
 
172
 
173
  # Defining the tokenizers
174
- self.tokenizer = AutoTokenizer.from_pretrained(self.MODEL_NAME)
175
  self.tokenizer.pad_token = self.tokenizer.eos_token
176
 
177
- if self.use_finetuned:
178
- # LORA Config Model
179
- self.lora_config = LoraConfig(
180
- r=16,
181
- lora_alpha=32,
182
- target_modules=["query_key_value"],
183
- lora_dropout=0.05,
184
- bias="none",
185
- task_type="CAUSAL_LM"
186
- )
187
- self.model = get_peft_model(self.model, self.lora_config)
188
-
189
- # Fitting the adapters
190
- self.peft_config = PeftConfig.from_pretrained(self.peft_model_name)
191
- self.model = AutoModelForCausalLM.from_pretrained(
192
- self.peft_config.base_model_name_or_path,
193
- return_dict = True,
194
- quantization_config = self.bnb_config,
195
- device_map= "auto",
196
- trust_remote_code = True
197
- )
198
- self.model = PeftModel.from_pretrained(self.model, self.peft_model_name)
199
-
200
- # Defining the tokenizers
201
- self.tokenizer = AutoTokenizer.from_pretrained(self.peft_config.base_model_name_or_path)
202
- self.tokenizer.pad_token = self.tokenizer.eos_token
203
-
204
- self.model_loaded = True
205
- print("Model Loaded successfully")
206
-
207
- except Exception as e:
208
- print(e)
209
- self.model_loaded = False
210
-
211
 
212
  def inference(self, input_text: str, use_cached=True, cache_generation=True) -> str | None:
213
  if not self.model_loaded:
 
156
 
157
 
158
  def _load_model(self):
159
+ self.bnb_config = BitsAndBytesConfig(
160
+ load_in_4bit = True,
161
+ bnb_4bit_use_double_quant = True,
162
+ bnb_4bit_quant_type= "nf4",
163
+ bnb_4bit_compute_dtype=torch.bfloat16,
164
+ )
165
+ self.model = AutoModelForCausalLM.from_pretrained(
166
+ self.MODEL_NAME,
167
+ device_map = "auto",
168
+ trust_remote_code = True,
169
+ quantization_config = self.bnb_config
170
+ )
171
+
172
+ # Defining the tokenizers
173
+ self.tokenizer = AutoTokenizer.from_pretrained(self.MODEL_NAME)
174
+ self.tokenizer.pad_token = self.tokenizer.eos_token
175
+
176
+ if self.use_finetuned:
177
+ # LORA Config Model
178
+ self.lora_config = LoraConfig(
179
+ r=16,
180
+ lora_alpha=32,
181
+ target_modules=["query_key_value"],
182
+ lora_dropout=0.05,
183
+ bias="none",
184
+ task_type="CAUSAL_LM"
185
+ )
186
+ self.model = get_peft_model(self.model, self.lora_config)
187
+
188
+ # Fitting the adapters
189
+ self.peft_config = PeftConfig.from_pretrained(self.peft_model_name)
190
  self.model = AutoModelForCausalLM.from_pretrained(
191
+ self.peft_config.base_model_name_or_path,
192
+ return_dict = True,
193
+ quantization_config = self.bnb_config,
194
+ device_map= "auto",
195
+ trust_remote_code = True
196
  )
197
+ self.model = PeftModel.from_pretrained(self.model, self.peft_model_name)
198
 
199
  # Defining the tokenizers
200
+ self.tokenizer = AutoTokenizer.from_pretrained(self.peft_config.base_model_name_or_path)
201
  self.tokenizer.pad_token = self.tokenizer.eos_token
202
 
203
+ self.model_loaded = True
204
+ print("Model Loaded successfully")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
205
 
206
  def inference(self, input_text: str, use_cached=True, cache_generation=True) -> str | None:
207
  if not self.model_loaded: