代码拉取完成,页面将自动刷新
同步操作将从 openEuler/infrastructure 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import json
import logging
import requests
import redis
from pilot.configs.model_config import config_parser
logger = logging.getLogger("model_worker")
class Moderation:
def __init__(self) -> None:
self.configs = config_parser
self.token_url = self.configs.get('moderation', 'token_url')
self.moderation_url = self.configs.get('moderation', 'moderation_url')
self.redis_host = self.configs.get('redis', 'redis_host')
self.redis_port = self.configs.getint('redis', 'redis_port')
self.redis_db = self.configs.getint('redis', 'redis_db')
self.redis_password = self.configs.get('redis', 'redis_password')
self.redis = redis.Redis(host=self.redis_host, port=self.redis_host, db=self.redis_db, password=self.redis_password)
def get_token(self, token_data):
token = self.redis.get('moderation_token')
if token:
return token
headers = {
"Content-Type": "application/json;charset=utf-8",
}
response = requests.post(url=self.token_url, data=json.dumps(token_data), headers=headers)
token = response.headers.get("X-Subject-Token")
created_at = '2023-13-01'
self.redis.set('moderation_token', token, 36000)
logger.info('...refresh token succeed...')
return token
def check_text(self, text):
token = self.get_token(self.username, self.password, self.domain, self.project_id)
body = {
"categories": ["terrorism"],
"items": [{
"text": text,
"type": "content"
}
]
}
_header = {
"Content-Type": 'application/json',
'X-Auth-Token': token
}
reslut = requests.post(url=self.moderation_url, data=json.dumps(body), headers=_header)
if reslut.json().get('result').get('suggestion') == 'pass':
return True
return False
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。