imnim commited on
Commit
66ffe4f
·
verified ·
1 Parent(s): 881b63b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -12
app.py CHANGED
@@ -4,35 +4,30 @@ from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
4
  from peft import PeftModel, PeftConfig
5
  from fastapi.middleware.cors import CORSMiddleware
6
  import torch
7
- from huggingface_hub import login
8
  from dotenv import load_dotenv
9
  import os
10
 
11
- load_dotenv()
12
 
 
13
  hf_token = os.getenv("HF_TOKEN")
14
 
15
- login(token=hf_token)
16
 
17
  app = FastAPI()
18
 
19
- # Allow frontend communication
20
  app.add_middleware(
21
  CORSMiddleware,
22
- allow_origins=["http://localhost:3000"],
23
  allow_credentials=True,
24
  allow_methods=["*"],
25
  allow_headers=["*"],
26
  )
27
 
28
- # === Load Base + Adapter ===
29
- adapter_path = "C:/Users/nimes/Desktop/NLP Projects/Multi-label Email Classifier/checkpoint-711"
30
 
31
  try:
32
- # Load PEFT config to get base model path
33
  peft_config = PeftConfig.from_pretrained(adapter_path)
34
-
35
- # Load base model and tokenizer (CPU-safe)
36
  base_model = AutoModelForCausalLM.from_pretrained(
37
  peft_config.base_model_name_or_path,
38
  torch_dtype=torch.float32,
@@ -40,10 +35,9 @@ try:
40
  )
41
  tokenizer = AutoTokenizer.from_pretrained(peft_config.base_model_name_or_path)
42
 
43
- # Load LoRA adapter
44
  model = PeftModel.from_pretrained(base_model, adapter_path, device_map={"": "cpu"})
45
 
46
- # Build inference pipeline
47
  pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
48
 
49
  except Exception as e:
 
4
  from peft import PeftModel, PeftConfig
5
  from fastapi.middleware.cors import CORSMiddleware
6
  import torch
 
7
  from dotenv import load_dotenv
8
  import os
9
 
 
10
 
11
+ load_dotenv()
12
  hf_token = os.getenv("HF_TOKEN")
13
 
 
14
 
15
  app = FastAPI()
16
 
 
17
  app.add_middleware(
18
  CORSMiddleware,
19
+ allow_origins=["*"],
20
  allow_credentials=True,
21
  allow_methods=["*"],
22
  allow_headers=["*"],
23
  )
24
 
25
+ adapter_path = "./checkpoint-711"
 
26
 
27
  try:
 
28
  peft_config = PeftConfig.from_pretrained(adapter_path)
29
+
30
+
31
  base_model = AutoModelForCausalLM.from_pretrained(
32
  peft_config.base_model_name_or_path,
33
  torch_dtype=torch.float32,
 
35
  )
36
  tokenizer = AutoTokenizer.from_pretrained(peft_config.base_model_name_or_path)
37
 
38
+
39
  model = PeftModel.from_pretrained(base_model, adapter_path, device_map={"": "cpu"})
40
 
 
41
  pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
42
 
43
  except Exception as e: