合规与人机协同
HITL、审计追踪与行业合规
[Standard] HITL(Human-in-the-Loop,人在回路)是指在 AI / 自动化流程中引入人工审核环节,确保关键决策由人确认或可被人干预。
[Requirement] 根据决策影响和风险等级,将自动化流程分为三档:
| 等级 | 名称 | 人工介入时机 | 适用场景 |
|---|---|---|---|
| L1 | 全自动 | 无需人工 | 低风险、高频、可逆操作(如自动分类、推荐) |
| L2 | 人在回路 | 执行前需人工确认 | 中风险操作(如内容审核通过、批量通知发送) |
| L3 | 人在回路 + 审批 | 需多人审批 | 高风险操作(如资金划转、合同生成、用户封禁) |
[Requirement] 以下场景必须引入 HITL,禁止全自动执行:
- 涉及资金的操作(支付、退款、转账)
- 涉及用户权益的操作(封号、解绑、删除数据)
- 对外发布内容(公告、营销信息、合同)
- 不可逆操作(数据删除、账号注销)
- 法律合规相关操作(隐私政策变更、用户协议修订)
模式一:人工确认(Pre-approval)
class HumanApprovalWorkflow:
"""需要人工审批后才执行的工作流"""
async def create_approval(self, action: str, payload: dict, requester: User) -> Approval:
approval = Approval(
action=action,
payload=payload,
requester_id=requester.id,
status="pending",
)
approval.save()
# 通知审批人
notify_approvers(approval)
return approval
async def execute(self, approval_id: str, approver: User):
approval = Approval.get(approval_id)
if approval.status != "pending":
raise BusinessError("审批已处理")
# 记录审批人、审批意见
approval.approver_id = approver.id
approval.status = "approved"
approval.save()
# 执行实际操作
await self._do_execute(approval)模式二:人工复核(Post-review)
[Default] 对已自动执行的操作,AI 打标 + 人工抽样复核,用于持续优化模型和发现误判。
# 自动审核 + 人工抽样复核
def auto_moderate(content: str) -> ModerationResult:
result = ai_classify(content) # AI 判定
if result.confidence < 0.9: # 低置信度必须人工复核
result.needs_human_review = True
return result[Caution] AI 生成的内容(代码、文案、报告)在对外发布或上线前,必须经过人工校验,禁止直接发布 AI 原始输出。
[Requirement] 以下操作必须记录完整审计日志,且日志不可篡改、不可删除:
- 用户登录 / 登出 / 登录失败
- 权限变更(角色、权限分配)
- 敏感数据访问(L3 及以上)
- 关键业务操作(支付、退款、审批)
- 配置变更(系统配置、密钥轮换)
- AI 决策与人工干预记录
| 字段 | 说明 |
|---|---|
| event_id | 事件唯一 ID |
| event_type | 事件类型(login / data_access / permission_change / …) |
| actor_id | 操作者 ID(人或系统) |
| actor_type | 操作者类型(user / system / ai) |
| target | 操作对象(资源 ID、数据范围) |
| action | 具体动作(read / create / approve / reject) |
| before | 变更前状态(JSON) |
| after | 变更后状态(JSON) |
| ip | 来源 IP |
| user_agent | 客户端信息 |
| timestamp | 操作时间(精确到毫秒) |
| result | 操作结果(success / fail / pending) |
[Requirement] 审计日志存储于**只追加(Append-Only)**的存储系统,禁止修改和删除;日志写入使用服务端时间,禁止客户端传入。
[Standard] 审计日志与业务日志分离存储,访问审计日志需单独授权。
[Standard] AI 辅助决策系统必须记录:输入数据、模型版本、模型输出、置信度、人工复核结果,形成完整决策链,支持事后追溯。
{
"event_id": "evt_abc123",
"event_type": "ai_decision",
"actor_type": "ai",
"model_version": "fraud-detector:v2.3.1",
"input_hash": "sha256:...",
"output": {"risk_score": 0.87, "decision": "block"},
"confidence": 0.91,
"human_review": {"reviewer": "u_1001", "result": "confirm", "comment": "确认为欺诈"},
"timestamp": "2024-01-01T00:00:00.000Z"
}[Default] 提供审计日志查询界面,支持按时间、操作者、事件类型、对象检索,日志保留期限 ≥ 1 年(金融行业 ≥ 5 年)。
| 法规 / 标准 | 适用范围 | 核心要求 |
|---|---|---|
| 《网络安全法》 | 中国境内网络运营者 | 网络安全等级保护、数据安全 |
| 《数据安全法》 | 数据处理活动 | 数据分类分级、重要数据保护 |
| 《个人信息保护法》(PIPL) | 个人信息处理 | 知情同意、最小必要、用户权利 |
| 《生成式人工智能服务管理暂行办法》 | 生成式 AI 服务 | 内容安全、训练数据合规、标识 |
| GDPR | 欧盟个人数据 | 数据主体权利、数据出境 |
| SOC 2 | 云服务商 | 安全、可用性、保密性审计 |
| ISO 27001 | 信息安全管理 | 信息安全管理体系 |
[Requirement] 提供生成式 AI 服务必须遵守《生成式人工智能服务管理暂行办法》:
- 训练数据来源合法,不侵犯知识产权
- 生成内容符合社会主义核心价值观,不生成违法内容
- 对生成内容进行标识(AI 生成内容标注)
- 建立投诉举报机制
- 保存输入输出日志不少于 6 个月
[Caution] 面向公众的生成式 AI 服务需进行算法备案和安全评估。
[Standard] 金融行业额外要求:
- 交易日志保存 ≥ 5 年
- 关键操作双人复核(四眼原则)
- 客户身份识别(KYC)
- 反洗钱(AML)筛查
- 业务连续性管理(BCP)
[Standard] 医疗数据处理需遵守《健康医疗数据安全指南》:
- 健康医疗数据分类分级
- 知情同意与脱敏
- 科研使用需伦理审查
[Default] 对用户有重大影响的算法决策(如信贷审批、招聘筛选),应提供算法说明和申诉渠道,避免算法歧视。
[Requirement] 按数据类型和法规要求设定留存期限,超期必须删除或匿名化。
| 数据类型 | 留存期限 | 依据 |
|---|---|---|
| 账号日志 | ≥ 6 个月 | 《网络安全法》第二十一条 |
| 交易记录 | ≥ 5 年 | 金融行业监管要求 |
| 审计日志 | ≥ 1 年(金融 ≥ 5 年) | 行业合规 |
| AI 输入输出日志 | ≥ 6 个月 | 《生成式 AI 管理办法》 |
| 用户个人信息 | 业务必要期限 | PIPL 最小必要原则 |
| 监控视频 | ≥ 30 天 | 安防标准 |
[Standard] 采用冷热分层 + 自动清理策略:
- 热数据(近 3 个月):高性能存储,可实时查询
- 温数据(3 个月~1 年):归档存储,按需查询
- 冷数据(超 1 年):对象存储低频访问
- 超期数据:自动删除或匿名化
# 数据留存自动清理任务
from datetime import datetime, timedelta
@app.scheduled_job("cron", hour=2) # 每天凌晨 2 点
def cleanup_expired_data():
# 清理超过留存期限的日志
cutoff = datetime.now() - timedelta(days=180)
deleted = AccessLog.filter(created_at < cutoff).delete()
logger.info("清理过期访问日志: %d 条", deleted)
# 超期用户数据匿名化而非删除(保留统计价值)
anonymize_old_users(before=cutoff)[Requirement] 用户申请注销账号或删除数据时,必须在15 个工作日内完成删除(或匿名化),并通知关联第三方删除。
[Caution] 法律法规要求留存的数据(如交易记录)在法定期限内不得删除,期限届满后立即删除。
[Requirement] 建立清晰的责任体系,明确 AI 系统各环节的责任人:
| 环节 | 责任人 | 职责 |
|---|---|---|
| 数据采集 | 数据负责人 | 确保数据来源合法、合规 |
| 模型训练 | 算法负责人 | 确保模型公平、无歧视 |
| 模型部署 | 工程负责人 | 确保系统安全、稳定 |
| 内容输出 | 业务负责人 | 确保输出内容合法合规 |
| 人工复核 | 审核人员 | 对 AI 输出做最终把关 |
[Standard] AI 系统出错时,按”谁使用谁负责、谁审核谁负责”原则问责:
- AI 输出经人工确认后发布 → 审核人负责
- AI 全自动执行(L1)出错 → 系统负责人 + 业务负责人共同负责
- 训练数据问题导致 → 数据负责人负责
- 模型本身缺陷 → 算法负责人负责
[Requirement] 提供用户申诉渠道,对 AI 决策有异议的用户可申请人工复核,复核结果需在规定时限内反馈。
[Default] 定期复盘 AI 系统的误判和投诉,优化模型和流程:
- 每月统计 AI 决策准确率和人工复核率
- 每季度评估 AI 系统的合规性和风险
- 重大问题立即启动专项整改
[Requirement] AI 系统出现大规模误判、生成违法内容、数据泄露等事件时,立即启动应急响应:
- 暂停相关功能 / 降级为纯人工
- 评估影响范围
- 通知受影响用户
- 向监管部门报告(如涉及)
- 修复并复盘,更新防护措施