Moonfanz commited on
Commit
baecb56
·
verified ·
1 Parent(s): 94f54ad

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -17
app.py CHANGED
@@ -56,10 +56,6 @@ safety_settings = [
56
  "threshold": "BLOCK_NONE"
57
  },
58
  ]
59
- class PromptBlockedException(Exception):
60
- def __init__(self, block_reason, safety_ratings=None):
61
- self.block_reason = block_reason
62
- self.safety_ratings = safety_ratings if safety_ratings else []
63
 
64
  class APIKeyManager:
65
  def __init__(self):
@@ -236,23 +232,27 @@ def handle_api_error(error, attempt):
236
  switch_api_key()
237
  return 0, None
238
 
239
- elif isinstance(error, PromptBlockedException):
240
- if error.block_reason == "SAFETY":
241
- logger.error(f"{current_api_key[:11]} 用户消息由于安全原因被阻止: {error.safety_ratings}")
242
- elif error.block_reason == "OTHER":
243
- logger.error(f"{current_api_key[:11]} → 用户消息由于未知原因被阻止")
244
- elif error.block_reason == "BLOCKLIST":
245
- logger.error(f"{current_api_key[:11]} → 用户消息由于包含黑名单词汇被阻止")
246
- elif error.block_reason == "PROHIBITED_CONTENT":
247
- logger.error(f"{current_api_key[:11]} 用户消息由于包含禁止内容被阻止")
 
 
 
 
 
 
248
  else:
249
- logger.error(f"{current_api_key[:11]} → 用户消息由于未知原因被阻止: {error.block_reason}")
 
250
 
251
- switch_api_key()
252
- return 0, None
253
  else:
254
  logger.error(f"其他错误↙\n {error}")
255
- switch_api_key()
256
  return 2, None
257
 
258
  @app.route('/hf/v1/chat/completions', methods=['POST'])
 
56
  "threshold": "BLOCK_NONE"
57
  },
58
  ]
 
 
 
 
59
 
60
  class APIKeyManager:
61
  def __init__(self):
 
232
  switch_api_key()
233
  return 0, None
234
 
235
+ elif hasattr(error, 'prompt_feedback') and error.prompt_feedback.block_reason:
236
+ block_reason = error.prompt_feedback.block_reason
237
+ safety_ratings = error.prompt_feedback.safety_ratings
238
+ if block_reason == generation_types.BlockReason.SAFETY:
239
+ logger.warning(f"用户输入被阻挡,原因:SAFETY. 详细信息:{safety_ratings}")
240
+ return 0, None
241
+ elif block_reason == generation_types.BlockReason.OTHER:
242
+ logger.warning(f"用户输入被阻挡,原因:OTHER")
243
+ return 0, None
244
+ elif block_reason == generation_types.BlockReason.BLOCKLIST:
245
+ logger.warning(f"用户输入被阻挡,原因:BLOCKLIST")
246
+ return 0, None
247
+ elif block_reason == generation_types.BlockReason.PROHIBITED_CONTENT:
248
+ logger.warning(f"用户输入被阻挡,原因:PROHIBITED_CONTENT")
249
+ return 0, None
250
  else:
251
+ logger.warning(f"用户输入被阻挡,未知阻挡原因:{block_reason}")
252
+ return 0, None
253
 
 
 
254
  else:
255
  logger.error(f"其他错误↙\n {error}")
 
256
  return 2, None
257
 
258
  @app.route('/hf/v1/chat/completions', methods=['POST'])