iimran commited on
Commit
caf28b3
·
verified ·
1 Parent(s): 1294687

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -20
app.py CHANGED
@@ -37,9 +37,8 @@ class ONNXInferencePipeline:
37
  self.session.set_providers(self.providers)
38
 
39
  def load_banned_keywords(self):
40
- # Define a list of banned keywords
41
- # This can be loaded from a file or defined directly here
42
- # For this example, I'm using a shortened list from your document
43
  return [
44
  # Original banned keywords
45
  "fuck", "shit", "bitch", "cunt", "asshole", "faggot", "nigger", "bastard", "damn", "crap",
@@ -837,9 +836,7 @@ class ONNXInferencePipeline:
837
  if self.contains_banned_keyword(text):
838
  return {
839
  'label': 'Inappropriate Content',
840
- 'confidence': 1.0,
841
- 'probabilities': [1.0, 0.0], # Assuming [inappropriate, appropriate]
842
- 'keyword_matched': True # Flag to indicate keyword match
843
  }
844
 
845
  # If no banned keywords, proceed with model prediction
@@ -861,9 +858,7 @@ class ONNXInferencePipeline:
861
  class_labels = ['Inappropriate Content', 'Appropriate']
862
  return {
863
  'label': class_labels[predicted_class],
864
- 'confidence': float(probabilities[0][predicted_class]),
865
- 'probabilities': probabilities[0].tolist(),
866
- 'keyword_matched': False # Flag to indicate model prediction
867
  }
868
 
869
  # Example usage
@@ -873,27 +868,23 @@ if __name__ == "__main__":
873
 
874
  # Example texts for testing
875
  example_texts = [
876
- "You're a worthless piece of garbage who should die",
877
- "Hello, how are you doing today?"
878
  ]
879
 
880
  for text in example_texts:
881
  result = pipeline.predict(text)
882
  print(f"Input: {text}")
883
- print(f"Prediction: {result['label']}")
884
- if result['keyword_matched']:
885
- print("(Detected by keyword filter)")
886
- else:
887
- print(f"Confidence: {result['confidence']:.2%}")
888
  print("-" * 80)
889
 
890
  # Define a function for Gradio to use
891
  def gradio_predict(text):
892
  result = pipeline.predict(text)
893
- if result['keyword_matched']:
894
- return f"Prediction: {result['label']} (Detected by keyword filter)"
895
- else:
896
- return f"Prediction: {result['label']} (Confidence: {result['confidence']:.2%})"
897
 
898
  # Create a Gradio interface
899
  iface = gr.Interface(
 
37
  self.session.set_providers(self.providers)
38
 
39
  def load_banned_keywords(self):
40
+ # Load your comprehensive list of banned keywords
41
+ # In a production environment, this would be your full list of 500+ keywords
 
42
  return [
43
  # Original banned keywords
44
  "fuck", "shit", "bitch", "cunt", "asshole", "faggot", "nigger", "bastard", "damn", "crap",
 
836
  if self.contains_banned_keyword(text):
837
  return {
838
  'label': 'Inappropriate Content',
839
+ 'probabilities': [1.0, 0.0] # Assuming [inappropriate, appropriate]
 
 
840
  }
841
 
842
  # If no banned keywords, proceed with model prediction
 
858
  class_labels = ['Inappropriate Content', 'Appropriate']
859
  return {
860
  'label': class_labels[predicted_class],
861
+ 'probabilities': probabilities[0].tolist()
 
 
862
  }
863
 
864
  # Example usage
 
868
 
869
  # Example texts for testing
870
  example_texts = [
871
+ "You're a worthless piece of garbage who should die"
 
872
  ]
873
 
874
  for text in example_texts:
875
  result = pipeline.predict(text)
876
  print(f"Input: {text}")
877
+ print(f"Prediction: {result['label']} ")
878
+ #print(f"Probabilities: Inappropriate={result['probabilities'][0]:.2%}, Not Inappropriate={result['probabilities'][1]:.2%}")
 
 
 
879
  print("-" * 80)
880
 
881
  # Define a function for Gradio to use
882
  def gradio_predict(text):
883
  result = pipeline.predict(text)
884
+ return (
885
+ f"Prediction: {result['label']} \n"
886
+ #f"Probabilities: Inappropriate={result['probabilities'][0]:.2%}, Not Inappropriate={result['probabilities'][1]:.2%}"
887
+ )
888
 
889
  # Create a Gradio interface
890
  iface = gr.Interface(