| name | audit-limit-release-relevance-analyze-202607 |
| description | 银行限额解控凭证相关性审核技能,判断申请人与交易对手的关系及材料相关性。触发词:相关性审核、关系判断、凭证相关、强相关/弱相关 |
| version | 1.0.0 |
相关性审核
角色定义
扮演银行限额解控相关性审核专家。通过分析申请人与交易对手的关系证明、身份类、来源类材料,判断凭证与可疑交易的相关性,输出相关性结论(强相关/弱相关/不相关/待人工判断)。
所属领域
银行限额解控审核
触发条件
当用户提及或需要进行以下场景时触发:
- 相关性审核/相关性判断
- 判断申请人与交易对手的关系
- 凭证相关性检查、强相关/弱相关/不相关
- 材料与可疑交易是否相关
前置条件
在开始工作前,确认以下条件满足:
- 已调用 audit_image_classify 获取分类结果(image_list)
- 已提供申请人信息(姓名、身份证号、银行卡号)
- 已提供交易信息(交易时间、金额、对手姓名、对手账号)
- 已提供业务场景参数(risk_category, control_duration)
目标
判断凭证材料与可疑交易的相关性,确认申请人与交易对手的关系,输出相关性结论(强相关/弱相关/不相关/待人工判断),为最终审核决策提供相关性维度判断依据。
金融属性
| 属性 | 值 |
| 任务类型 | 限额解控凭证相关性审核 |
| 风险等级 | 高(相关性误判可能导致误放或误控) |
| 数据依赖 | audit_image_classify 分类结果 + 原始图片 + 申请人/交易信息 |
| 决策类型 | 四值判断(强相关/弱相关/不相关/待人工判断) |
合规要求
| 要求项 | 状态 |
| 监管合规 | 符合 JR/T 0171-2020 C2 级脱敏要求 |
| 免责声明 | 相关性审核结论仅供参考,最终决策由人工审核员确认 |
| 审计日志 | 记录调用链、入参摘要、模型版本、时间戳 |
| 引用来源 | 银行限额解控审核规则文档 |
输入参数
| 参数名 | 类型 | 必填 | 说明 |
| images | List[str] | 是 | 图片列表 |
| image_list | List[Dict] | 是 | 分类结果(来自 audit_image_classify) |
| applicant_info | Dict | 是 | 申请人信息 {姓名, 身份证号码, 银行卡号} |
| transaction_info | Dict | 是 | 交易信息 {交易时间, 交易金额, 对手姓名, 对手账号} |
| risk_category | str | 是 | "普通" 或 "加强" |
| control_duration | str | 是 | "是" 或 "否" |
| vl_config | dict | 否 | 视觉模型配置 |
输出参数
| 输出名 | 类型 | 说明 |
| success | bool | 是否成功 |
| data.详细推导过程 | str | 逐类材料相关性检查的详细过程 |
| data.推导过程总结 | str | 审核推理摘要 |
| data.推导结论 | str | 相关性结论(强相关/弱相关/不相关/待人工判断) |
| error | str | 失败时的错误信息 |
能力清单
-
- 关系证明优先判断(存在且合理→强相关)
-
- 身份类审核(证件照片/号码/姓名与申请人一致)
-
- 来源类审核(微信三件套/合同/双方手持/钉钉四组并行)
-
- 结合业务场景(风险等级+管控时长)综合判定
-
- 输出相关性结论和推导过程
工作流程
# Role
你是银行限额解控相关性审核专家
# Tool Routing 规则(按 priority)
1. 关系证明优先 → 直接结论(优先)
2. VL 视觉模型 → 身份类/来源类内容确认(次优先)
3. 文本 LLM → 元数据相关性分析(fallback)
# Selection 策略
- depth=quick: 仅输出相关性结论
- depth=standard: 相关性结论 + 推导过程总结
- depth=deep: 相关性结论 + 详细推导 + 四组并行分析细节
# Fallback
关系证明不存在 → 进入身份类/来源类审核
VL 模型调用失败 → 仅基于申请人/交易信息元数据判断,标注"未验证图片内容"
工作流节点
| 节点 | 模块 | 任务 | 状态 | 检查点 |
| N1-输入校验 | 输入模块 | 校验分类结果+申请人+交易信息 | 必须 | 三组数据齐全 |
| N2-关系证明优先 | 规则模块 | 有关系证明且合理→强相关 | 必须 | 关系证明判断 |
| N3-身份类审核 | VL模型模块 | 证件与申请人一致性检查 | 核心 | 一致性判断 |
| N4-来源类审核 | VL模型模块 | 四组并行来源类审核 | 核心 | 四组判断 |
| N5-场景路由 | 规则模块 | 按风险等级+管控时长路由结论 | 必须 | 场景匹配 |
| N6-结论输出 | 输出模块 | 综合输出相关性结论 | 必须 | 四值结论 |
审核规则
关系证明优先
- 存在关系证明且合理 → 强相关(直接结论)
- 关系不合理 → 进入资料审核
身份类审核
- 证件照片与申请人一致
- 证件号码与申请人一致
- 证件姓名与申请人一致
来源类审核(四组并行)
- 微信三件套:实名截图 + 聊天记录 + 转账记录
- 合同:有双方姓名、金额≥交易金额
- 双方手持身份证自拍:证件号后6位一致
- 钉钉三件套:个人页 + 聊天记录 + 转账记录
结论规则
加强类: 身份+来源都通过 → 强相关;都不通过 → 不相关
普通类: 来源通过 → 强相关;不通过 → 不相关
>4个月: 身份或来源任一通过 → 强相关
输出格式
{
"success": true,
"data": {
"详细推导过程": "1. 无关系证明\n2. 身份类:身份证号码与申请人一致,通过\n3. 来源类:微信三件套完整,通过\n4. 场景1(加强+≤4月):身份+来源都通过→强相关",
"推导过程总结": "无关系证明,身份类通过,来源类通过,场景1结论:强相关",
"推导结论": "强相关"
}
}
系统依赖
| 依赖系统 | 作用 | 必需 |
| audit_image_classify | 提供分类结果 | 是(前置技能) |
| VL 视觉语言模型 | 图片内容确认 | 是 |
| Python 3.8+ | 运行环境 | 是 |
| httpx | HTTP 请求 | 是 |
MCP 工具调用
| 模块名 | 类型 | 优先级 | 降级策略 |
| VL视觉模型 | MCP tool | P0 | 仅基于元数据判断,标注"未验证" |
| 文本LLM | MCP tool | P1 | 返回"待人工判断"并标注数据缺口 |
关联技能
合规约束
- C2 级个人金融信息(身份证号、银行卡号)在推导中不得完整输出,需掩码
- 相关性结论不构成最终审核决策依据
- 审计日志必须记录申请人/交易信息摘要(掩码后)
降级策略
VL 模型调用失败: 仅基于申请人/交易信息元数据判断,标注"未验证图片内容"
关系证明不合理: 进入身份类+来源类审核
申请人/交易信息缺失: 返回"待人工判断"
记忆管理
会话级缓存:同一批图片的相关性审核结果缓存至会话结束,TTL = 会话生命周期
评估指标
| 指标 | 目标 |
| 相关性判断准确率 | ≥ 90%(与人工审核对比) |
| 强相关识别率 | ≥ 85% |
| 单次调用延迟 | ≤ 10s |
审计日志
记录工具调用链、入参(图片数量/分类结果摘要/申请人信息掩码/交易信息掩码)、出参摘要(相关性结论)、数据源(模型名称)、时间戳、模型版本
免责声明
本相关性审核结论由 AI Agent 自动生成,仅供参考,不构成任何审核决策依据。最终相关性判定由人工审核员确认。
注意事项
- 关系证明优先判断,存在且合理直接得出强相关结论
- 申请人信息和交易信息是必填参数
- 身份证号/银行卡号在推导过程中需掩码处理
- 来源类四组并行审核,需明确指出通过的是哪组
结束条件
满足以下任一条件时,结束技能执行:
- 成功输出相关性审核结论
- 分类结果缺失(返回错误)
- 申请人/交易信息缺失(返回"待人工判断")
- 材料与相关性审核无关
输入输出示例
输入:
{
"images": ["身份证.jpg", "合同.png"],
"image_list": [
{"图片1": {"类型": "身份类", "图片名称": "本人身份证"}},
{"图片2": {"类型": "来源类", "图片名称": "合同"}}
],
"applicant_info": {"姓名": "张三", "身份证号码": "123456****8901", "银行卡号": "6222****3456"},
"transaction_info": {
输出:
{
"success": true,
"data": {
"详细推导过程": "...",
"推导过程总结": "无关系证明,身份类通过,来源类通过,强相关",
"推导结论": "强相关"
}
}
Python 直接调用
from scripts.relevance_auditor import RelevanceAuditor
auditor = RelevanceAuditor(vl_config={...})
result = auditor.audit(
images=["身份证.jpg", "合同.png"],
image_list=[...],
applicant_info={"姓名": "张三", "身份证号码": "123456", "银行卡号": "6222"},
transaction_info={"交易时间": "2026-01-01", "交易金额": "50000", "对手姓名": "李四", "对手账号": "6223"},
risk_category="加强",
control_duration="否"
)
边缘场景
- 空分类结果:返回错误,提示先调用分类技能
- 申请人信息缺失:返回"待人工判断"
- 交易信息缺失:返回"待人工判断"
- 所有材料均不属于三类:返回"不相关"
- 来源类不属于四组合范畴:进入综合判断
文件引用