scene-digit-human/common/security_check.py
2024-12-09 08:51:09 +08:00

41 lines
1.2 KiB
Python

import requests
def security_check(SECURITY_URL: str, auth_code: str, question: str, isRejection: bool, isRefusal: bool):
'''
SECURITY_URL: 拒识拒答url
auth_code: token
question: 被检测的字符串
isRejection: 是否进行拒识检测
isRefusal: 是否进行拒答检测
threshold: 知识库检索最低阈值
'''
headers = {
'content-type': "application/json",
'authorization': auth_code,
}
security_json = {
"query": question,
"isRejection": isRejection,
"isRefusal": isRefusal,
}
try:
security_res = requests.post(SECURITY_URL, json=security_json, headers=headers)
# {'code': 2, 'message': '拒识检测未通过!', 'result': False}
security_res_json = security_res.json()
if not security_res_json['result']:
return {
"result": False,
"msg": security_res_json["message"]
}
elif security_res_json['result']:
return {
"result": True,
"msg": security_res_json["message"]
}
except Exception as e:
return {
"result": False,
"msg": f"error: {e}"
}