hamxaameer commited on
Commit
6d0f21b
·
verified ·
1 Parent(s): 4ec1edc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -4
app.py CHANGED
@@ -11,9 +11,13 @@ print(f"Using device: {device}")
11
  # Load the pickled model and tokenizer
12
  def load_model():
13
  try:
14
- # Load from pickle files
 
15
  with open('summarization_model.pkl', 'rb') as f:
16
- model = pickle.load(f)
 
 
 
17
 
18
  with open('tokenizer.pkl', 'rb') as f:
19
  tokenizer = pickle.load(f)
@@ -25,7 +29,7 @@ def load_model():
25
  "summarization",
26
  model=model,
27
  tokenizer=tokenizer,
28
- device=0 if torch.cuda.is_available() else -1
29
  )
30
 
31
  return summarizer
@@ -37,13 +41,28 @@ def load_model():
37
  summarizer = pipeline(
38
  "summarization",
39
  model="./summarization_model",
40
- device=0 if torch.cuda.is_available() else -1
41
  )
42
  print("✓ Model loaded from directory")
43
  return summarizer
44
  except Exception as e:
45
  print(f"Error loading model: {e}")
46
  return None
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
 
48
  # Load model at startup
49
  summarizer = load_model()
 
11
  # Load the pickled model and tokenizer
12
  def load_model():
13
  try:
14
+ # Load from pickle files with CPU mapping
15
+ print("Loading model from pickle files...")
16
  with open('summarization_model.pkl', 'rb') as f:
17
+ # Use torch.load with map_location to handle CUDA->CPU conversion
18
+ import io
19
+ model_bytes = f.read()
20
+ model = torch.load(io.BytesIO(model_bytes), map_location='cpu')
21
 
22
  with open('tokenizer.pkl', 'rb') as f:
23
  tokenizer = pickle.load(f)
 
29
  "summarization",
30
  model=model,
31
  tokenizer=tokenizer,
32
+ device=-1 # Force CPU usage
33
  )
34
 
35
  return summarizer
 
41
  summarizer = pipeline(
42
  "summarization",
43
  model="./summarization_model",
44
+ device=-1 # Force CPU usage
45
  )
46
  print("✓ Model loaded from directory")
47
  return summarizer
48
  except Exception as e:
49
  print(f"Error loading model: {e}")
50
  return None
51
+ except Exception as e:
52
+ print(f"Error loading from pickle: {e}")
53
+ print("Trying fallback loading...")
54
+ try:
55
+ # Fallback: try loading from directory
56
+ summarizer = pipeline(
57
+ "summarization",
58
+ model="./summarization_model",
59
+ device=-1 # Force CPU usage
60
+ )
61
+ print("✓ Model loaded from directory (fallback)")
62
+ return summarizer
63
+ except Exception as e2:
64
+ print(f"Error loading model: {e2}")
65
+ return None
66
 
67
  # Load model at startup
68
  summarizer = load_model()