|
@@ -1,10 +1,10 @@
|
|
|
# @Author : Rocky
|
|
|
# @File : ContentSecurityObject.py
|
|
|
# @Time : 2023/8/18 11:02
|
|
|
-from alibabacloud_green20220302.client import Client as Green20220302Client
|
|
|
-from alibabacloud_tea_openapi import models as open_api_models
|
|
|
-from alibabacloud_green20220302 import models as green_20220302_models
|
|
|
-from alibabacloud_tea_util import models as util_models
|
|
|
+# from alibabacloud_green20220302.client import Client as Green20220302Client
|
|
|
+# from alibabacloud_tea_openapi import models as open_api_models
|
|
|
+# from alibabacloud_green20220302 import models as green_20220302_models
|
|
|
+# from alibabacloud_tea_util import models as util_models
|
|
|
from Ansjer.config import ALI_ACCESS_KEY_ID, ALI_ACCESS_KEY_SECRET, LOGGER
|
|
|
|
|
|
TEXT_ILLEGAL_LABEL_LIST = ['political_content', 'profanity', 'contraband', 'sexual_content', 'violence',
|
|
@@ -20,67 +20,67 @@ class ContentSecurity:
|
|
|
def __init__(self):
|
|
|
pass
|
|
|
|
|
|
- @staticmethod
|
|
|
- def create_client() -> Green20220302Client:
|
|
|
- """
|
|
|
- 使用AK&SK初始化账号Client
|
|
|
- @return: Client
|
|
|
- @throws Exception
|
|
|
- """
|
|
|
- config = open_api_models.Config(
|
|
|
- # 必填,您的 AccessKey ID,
|
|
|
- access_key_id=ALI_ACCESS_KEY_ID,
|
|
|
- # 必填,您的 AccessKey Secret,
|
|
|
- access_key_secret=ALI_ACCESS_KEY_SECRET
|
|
|
- )
|
|
|
- # Endpoint 请参考 https://api.aliyun.com/product/Green
|
|
|
- config.endpoint = f'green-cip.cn-shanghai.aliyuncs.com'
|
|
|
- return Green20220302Client(config)
|
|
|
-
|
|
|
- def text_review(self, service, service_parameters):
|
|
|
- """
|
|
|
- 文本审核
|
|
|
- @param service: 审核服务类型
|
|
|
- @param service_parameters: 审核服务参数集
|
|
|
- @return: bool, True: 审核通过, False: 审核不通过
|
|
|
- """
|
|
|
- client = self.create_client()
|
|
|
- text_moderation_request = green_20220302_models.TextModerationRequest(service, service_parameters)
|
|
|
- runtime = util_models.RuntimeOptions()
|
|
|
- res = client.text_moderation_with_options(text_moderation_request, runtime)
|
|
|
- print(res)
|
|
|
- if res.status_code != 200:
|
|
|
- return False
|
|
|
- labels = res.body.data.labels
|
|
|
- labels_list = labels.split(',')
|
|
|
- for label in labels_list:
|
|
|
- if label in TEXT_ILLEGAL_LABEL_LIST:
|
|
|
- return False
|
|
|
- return True
|
|
|
-
|
|
|
- def image_review(self, service, service_parameters):
|
|
|
- """
|
|
|
- 图片审核
|
|
|
- @param service: 审核服务类型
|
|
|
- @param service_parameters: 审核服务参数集
|
|
|
- @return: bool, True: 审核通过, False: 审核不通过
|
|
|
- """
|
|
|
- client = self.create_client()
|
|
|
- image_moderation_request = green_20220302_models.ImageModerationRequest(service, service_parameters)
|
|
|
- runtime = util_models.RuntimeOptions()
|
|
|
- res = client.image_moderation_with_options(image_moderation_request, runtime)
|
|
|
- print(res)
|
|
|
- LOGGER.info('图片审核响应内容:{}'.format(res))
|
|
|
- if res.status_code != 200:
|
|
|
- return False
|
|
|
- # 获取审核结果
|
|
|
- result = res.body
|
|
|
- if result.code != 200:
|
|
|
- return False
|
|
|
- result_list = result.data.result
|
|
|
- # 配到风险标签且置信分高于80时返回False
|
|
|
- for result in result_list:
|
|
|
- if result.label in IMAGE_ILLEGAL_LABEL_LIST:
|
|
|
- if result.confidence >= 80:
|
|
|
- return False
|
|
|
- return True
|
|
|
+ # @staticmethod
|
|
|
+ # def create_client() -> Green20220302Client:
|
|
|
+ # """
|
|
|
+ # 使用AK&SK初始化账号Client
|
|
|
+ # @return: Client
|
|
|
+ # @throws Exception
|
|
|
+ # """
|
|
|
+ # config = open_api_models.Config(
|
|
|
+ # # 必填,您的 AccessKey ID,
|
|
|
+ # access_key_id=ALI_ACCESS_KEY_ID,
|
|
|
+ # # 必填,您的 AccessKey Secret,
|
|
|
+ # access_key_secret=ALI_ACCESS_KEY_SECRET
|
|
|
+ # )
|
|
|
+ # # Endpoint 请参考 https://api.aliyun.com/product/Green
|
|
|
+ # config.endpoint = f'green-cip.cn-shanghai.aliyuncs.com'
|
|
|
+ # return Green20220302Client(config)
|
|
|
+ #
|
|
|
+ # def text_review(self, service, service_parameters):
|
|
|
+ # """
|
|
|
+ # 文本审核
|
|
|
+ # @param service: 审核服务类型
|
|
|
+ # @param service_parameters: 审核服务参数集
|
|
|
+ # @return: bool, True: 审核通过, False: 审核不通过
|
|
|
+ # """
|
|
|
+ # client = self.create_client()
|
|
|
+ # text_moderation_request = green_20220302_models.TextModerationRequest(service, service_parameters)
|
|
|
+ # runtime = util_models.RuntimeOptions()
|
|
|
+ # res = client.text_moderation_with_options(text_moderation_request, runtime)
|
|
|
+ # print(res)
|
|
|
+ # if res.status_code != 200:
|
|
|
+ # return False
|
|
|
+ # labels = res.body.data.labels
|
|
|
+ # labels_list = labels.split(',')
|
|
|
+ # for label in labels_list:
|
|
|
+ # if label in TEXT_ILLEGAL_LABEL_LIST:
|
|
|
+ # return False
|
|
|
+ # return True
|
|
|
+ #
|
|
|
+ # def image_review(self, service, service_parameters):
|
|
|
+ # """
|
|
|
+ # 图片审核
|
|
|
+ # @param service: 审核服务类型
|
|
|
+ # @param service_parameters: 审核服务参数集
|
|
|
+ # @return: bool, True: 审核通过, False: 审核不通过
|
|
|
+ # """
|
|
|
+ # client = self.create_client()
|
|
|
+ # image_moderation_request = green_20220302_models.ImageModerationRequest(service, service_parameters)
|
|
|
+ # runtime = util_models.RuntimeOptions()
|
|
|
+ # res = client.image_moderation_with_options(image_moderation_request, runtime)
|
|
|
+ # print(res)
|
|
|
+ # LOGGER.info('图片审核响应内容:{}'.format(res))
|
|
|
+ # if res.status_code != 200:
|
|
|
+ # return False
|
|
|
+ # # 获取审核结果
|
|
|
+ # result = res.body
|
|
|
+ # if result.code != 200:
|
|
|
+ # return False
|
|
|
+ # result_list = result.data.result
|
|
|
+ # # 配到风险标签且置信分高于80时返回False
|
|
|
+ # for result in result_list:
|
|
|
+ # if result.label in IMAGE_ILLEGAL_LABEL_LIST:
|
|
|
+ # if result.confidence >= 80:
|
|
|
+ # return False
|
|
|
+ # return True
|