shuvo100 commited on
Commit
1d86225
·
verified ·
1 Parent(s): e12782e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -4
app.py CHANGED
@@ -25,7 +25,7 @@ humanized_map = {
25
  "LABEL_5": "😲 বিস্ময় (Surprise)",
26
  "LABEL_6": "😐 নিরপেক্ষ (Neutral)",
27
 
28
- # Just in case model returns plain text instead of label_*
29
  "Anger": "😠 রাগ (Anger)",
30
  "Sadness": "😢 দুঃখ (Sadness)",
31
  "Joy": "😊 আনন্দিত (Joy)",
@@ -35,6 +35,23 @@ humanized_map = {
35
  "Neutral": "😐 নিরপেক্ষ (Neutral)"
36
  }
37
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
  # Emotion detect function
39
  def detect_emotion(text):
40
  if not text.strip():
@@ -44,10 +61,15 @@ def detect_emotion(text):
44
  label = result["label"]
45
  score = round(result["score"] * 100, 2)
46
  emotion = humanized_map.get(label)
47
- if emotion:
48
- return f"{emotion} (score: {score}%)"
49
- else:
 
 
 
50
  return f"🤔 অজানা (Unknown) — মডেল লেবেল: {label} (score: {score}%)"
 
 
51
  except Exception as e:
52
  return f"❌ সমস্যা হয়েছে: {str(e)}"
53
 
 
25
  "LABEL_5": "😲 বিস্ময় (Surprise)",
26
  "LABEL_6": "😐 নিরপেক্ষ (Neutral)",
27
 
28
+ # Extra fallback for plain text labels
29
  "Anger": "😠 রাগ (Anger)",
30
  "Sadness": "😢 দুঃখ (Sadness)",
31
  "Joy": "😊 আনন্দিত (Joy)",
 
35
  "Neutral": "😐 নিরপেক্ষ (Neutral)"
36
  }
37
 
38
+ # Extra keyword-based fallback mapping
39
+ keyword_map = {
40
+ "happy": "😊 আনন্দিত (Joy)",
41
+ "খুশি": "😊 আনন্দিত (Joy)",
42
+ "sad": "😢 দুঃখ (Sadness)",
43
+ "দুঃখ": "😢 দুঃখ (Sadness)",
44
+ "love": "❤️ ভালোবাসা (Love)",
45
+ "ভালবাসা": "❤️ ভালোবাসা (Love)",
46
+ "ভালোবাসা": "❤️ ভালোবাসা (Love)",
47
+ "fear": "😨 ভয় (Fear)",
48
+ "ভয়": "😨 ভয় (Fear)",
49
+ "angry": "😠 রাগ (Anger)",
50
+ "রাগ": "😠 রাগ (Anger)",
51
+ "surprise": "😲 বিস্ময় (Surprise)",
52
+ "বিস্ময়": "😲 বিস্ময় (Surprise)"
53
+ }
54
+
55
  # Emotion detect function
56
  def detect_emotion(text):
57
  if not text.strip():
 
61
  label = result["label"]
62
  score = round(result["score"] * 100, 2)
63
  emotion = humanized_map.get(label)
64
+
65
+ if not emotion:
66
+ # Keyword fallback
67
+ for word in keyword_map:
68
+ if word in text.lower():
69
+ return f"{keyword_map[word]} (keyword match)"
70
  return f"🤔 অজানা (Unknown) — মডেল লেবেল: {label} (score: {score}%)"
71
+
72
+ return f"{emotion} (score: {score}%)"
73
  except Exception as e:
74
  return f"❌ সমস্যা হয়েছে: {str(e)}"
75