Files
leaudit-platform-backend/leaudit-oss-yaml-files/contract.loan.general/1.0/rules.yaml
T

554 lines
16 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
metadata:
type_id: contract.loan.general
name: 借款合同
version: '1.0'
last_updated: '2026-04-11'
parent: contract
inherits_from:
- base.common
- base.party_info
classification_keywords:
- 借款
- 借贷
- 民间借贷
tags:
- compliance
- high_priority
- prc_civil_code
- usury_check
applies_to_jurisdictions:
- prc
references_laws:
- 《民法典》第 667-680 条(借款合同章)
- 《最高人民法院关于审理民间借贷案件适用法律若干问题的规定》(2020 修正)
- 《民法典》第 387-462 条(担保物权)
description: '适用于民间借贷 / 企业间借款 / 自然人借款等场景。
覆盖民法典第 667-680 条(借款合同章)和最高法民间借贷司法解释。
评查重点:利率合法性、担保完备性、禁止利滚利。
'
confidence_profile:
allow_weight_override: false
field_confidence_defaults:
借款本金: 0.95
年利率: 0.95
extract:
- group: 当事人
fields:
- name: 借款人姓名
type: verbatim
required_from: draft
deep_retry: false
- name: 借款人身份证
type: chinese-id
required_from: executed
deep_retry: false
- name: 借款人地址
type: verbatim
required_from: draft
deep_retry: false
- name: 出借人姓名
type: verbatim
required_from: draft
deep_retry: false
- name: 出借人身份证
type: chinese-id
required_from: executed
deep_retry: false
- group: 合同信息
fields:
- name: 合同编号
type: verbatim
required_from: draft
deep_retry: false
- name: 签订日期
type: date
required_from: executed
deep_retry: false
- name: 借款日期
type: date
required_from: executed
deep_retry: false
- name: 还款日期
type: date
required_from: executed
deep_retry: false
- group: 借款条款
fields:
- name: 借款本金
type: money
required_from: draft
deep_retry: false
- name: 借款本金大写
type: verbatim
required_from: executed
deep_retry: false
- name: 借款用途
type: string
required_from: draft
deep_retry: false
- name: 年利率
type: money
required_from: draft
deep_retry: false
- name: 还款方式
type: enum
required_from: draft
allowed:
- 一次性还本付息
- 分期还款
- 先息后本
deep_retry: false
- name: 违约金金额
type: money
required_from: draft
deep_retry: false
- name: 违约责任
type: string
required_from: draft
deep_retry: false
- name: 争议解决
type: string
required_from: draft
deep_retry: false
- group: 'Multi-entity: 担保人(核心特性展示)'
fields:
- name: 担保人
type: multi_entity
required_from: draft
fields:
- name: 姓名
type: verbatim
required_from: draft
deep_retry: false
- name: 身份证号
type: chinese-id
required_from: executed
deep_retry: false
- name: 地址
type: verbatim
required_from: draft
deep_retry: false
- name: 担保金额
type: money
required_from: draft
deep_retry: false
- name: 担保方式
type: enum
required_from: draft
allowed:
- 一般保证
- 连带责任保证
deep_retry: false
- name: 担保期限
type: date
required_from: draft
deep_retry: false
deep_retry: false
derived_fields:
- name: 借款总天数
type: integer
compute: (还款日期 - 借款日期).days
depends_on:
- 借款日期
- 还款日期
- name: 违约金比例
type: money
compute: 违约金金额 / 借款本金
depends_on:
- 违约金金额
- 借款本金
- name: 担保总额
type: money
compute: sum(担保人[*].担保金额)
depends_on:
- 担保人
- name: 担保人数量
type: integer
compute: count(担保人)
depends_on:
- 担保人
- name: LPR_4x
type: money
compute: external.lpr_lookup(tenor='1y') * 4
depends_on: []
visual_elements:
seals:
- id: 借款人签章
name: 借款人签章
required: true
required_from: executed
expected_text_match:
field: 借款人姓名
- id: 出借人签章
name: 出借人签章
required: true
required_from: executed
expected_text_match:
field: 出借人姓名
signatures:
- id: 借款人签名
name: 借款人手写签名
required: true
required_from: executed
expected_text_match:
field: 借款人姓名
- id: 出借人签名
name: 出借人手写签名
required: true
required_from: executed
expected_text_match:
field: 出借人姓名
rules:
- group: 合同主体
rules:
- rule_id: JK-001
name: 借款主体合法性
risk: high
score: 10
stages:
- id: '1'
check: required
fields:
- 借款人姓名
- 出借人姓名
logic: and
- id: '2'
check: format
field: 借款人身份证
format: chinese_id
- id: '3'
check: format
field: 出借人身份证
format: chinese_id
logic: 1 AND 2 AND 3
messages:
pass: 借贷双方身份合法
fail: 借贷双方身份信息不完整或身份证校验失败
references_laws:
- 《民法典》第 667 条
type: deterministic
- group: 利率合规
rules:
- rule_id: JK-002
name: 利率不超过法定上限(LPR × 4 倍)
risk: high
score: 20
activate_if: derived.LPR_4x != null
stages:
- id: '1'
check: required
field: 年利率
- id: '2'
check: compare
left: 年利率
op: <
right_field: derived.LPR_4x
logic: 1 AND 2
messages:
pass: 年利率 {{年利率}} 未超过 LPR 4 倍({{derived.LPR_4x}}
fail: 年利率 {{年利率}} 超过法定上限 LPR 4 倍({{derived.LPR_4x}}
references_laws:
- 《最高人民法院关于审理民间借贷案件适用法律若干问题的规定》(2020 修正)第 25 条
- 《民法典》第 680 条(禁止高利放贷)
remediation:
suggestions:
- 本合同年利率 {{年利率}},超过当前 LPR 4 倍上限 {{derived.LPR_4x}}
- 按 2020 修正司法解释,超出部分法院不予保护
- 请降低利率至 LPR 4 倍以内
actions:
- type: edit_field
label: 降低年利率
field: 年利率
prompt: 请输入合法年利率(不超过 {{derived.LPR_4x}}
- type: escalate
label: 疑似高利贷,上报合规组
role: 合规专员
type: deterministic
- rule_id: JK-GROUP-INTEREST
name: 利率合规总判定
risk: high
score: 30
logic: JK-002 AND JK-005 AND JK-006
messages:
pass: 利率与违约条款全部合规
fail: 利率或违约条款有瑕疵,存在合规风险
type: rule_group
rules:
- JK-002
- JK-005
- JK-006
- group: 担保条款
rules:
- rule_id: JK-003
name: 担保人身份合法性
risk: high
score: 15
activate_if: derived.担保人数量 > 0
stages:
- id: '1'
type: multi_entity.count_ge
field: 担保人
value: 1
- id: '2'
check: format
field: 担保人[*].身份证号
format: chinese_id
- id: '3'
check: required
field: 担保人[*].姓名
logic: 1 AND 2 AND 3
messages:
pass: 所有 {{derived.担保人数量}} 位担保人身份合法
fail: 至少一位担保人身份信息缺失或身份证校验失败
remediation:
suggestions:
- 共 {{derived.担保人数量}} 位担保人,至少一位的身份证校验失败
- 请逐个核对每位担保人的身份证号
actions:
- type: recheck_field
label: 重新核对所有担保人身份证
field: 担保人[*].身份证号
type: deterministic
- rule_id: JK-004
name: 担保总额覆盖借款本金
risk: high
score: 15
activate_if: derived.担保人数量 > 0
stages:
- id: '1'
check: compare
left: derived.担保总额
op: '>='
right_field: 借款本金
logic: '1'
messages:
pass: 担保总额 {{derived.担保总额}} 覆盖借款本金 {{借款本金}}
fail: 担保总额 {{derived.担保总额}} 不足以覆盖借款本金 {{借款本金}}
remediation:
suggestions:
- 当前 {{derived.担保人数量}} 位担保人担保总额 {{derived.担保总额}}
- 借款本金 {{借款本金}},担保不足
- 建议:(1) 增加担保人 (2) 提高现有担保金额 (3) 补充物的担保
actions:
- type: edit_field
label: 调整担保金额
field: 担保人[*].担保金额
- type: escalate
label: 担保不足,上报风控
role: 风控经理
type: deterministic
- group: 条款合规
rules:
- rule_id: JK-005
name: 禁止利滚利与高利贷条款
risk: high
score: 15
stages:
- id: '1'
type: string.must_not_contain
field: 违约责任
forbidden_keywords:
- 利滚利
- 复利
- 利息计入本金
- 砍头息
- 预扣利息
- id: '2'
type: string.must_not_contain
field: 借款用途
forbidden_keywords:
- 非法经营
- 赌博
- 洗钱
logic: 1 AND 2
messages:
pass: 未发现利滚利或非法用途条款
fail: 发现违法条款,建议删除或修改
references_laws:
- 《民法典》第 680 条
- 《民法典》第 670 条(禁止预扣利息)
remediation:
suggestions:
- 检出禁止性条款,本合同可能被法院认定为无效或部分无效
- 请删除违法条款或整体重新起草
actions:
- type: edit_field
label: 修改违约责任条款
field: 违约责任
- type: escalate
label: 涉嫌违法条款,上报法务
role: 法务经理
type: deterministic
- group: 违约条款
rules:
- rule_id: JK-006
name: 违约金不超过借款本金 30%
risk: medium
score: 10
stages:
- id: '1'
check: required
fields:
- 违约金金额
- 借款本金
logic: and
- id: '2'
type: money.ratio_within
numerator: 违约金金额
denominator: 借款本金
min: 0.0
max: 0.3
logic: 1 AND 2
messages:
pass: 违约金比例 {{derived.违约金比例}} 合规
fail: 违约金 {{违约金金额}} 占借款本金 {{借款本金}} 的比例超过 30%
references_laws:
- 《民法典》第 585 条(违约金不得过分高于损失)
type: deterministic
- group: 金额条款
rules:
- rule_id: JK-007
name: 借款本金大小写一致性
risk: high
score: 10
stages:
- id: '1'
check: required
fields:
- 借款本金
- 借款本金大写
logic: and
- id: '2'
check: amount_match
number: 借款本金
chinese: 借款本金大写
logic: 1 AND 2
messages:
pass: 借款本金大小写一致
fail: 借款本金大小写不一致,涉嫌篡改
type: deterministic
- group: 期限条款
rules:
- rule_id: JK-008
name: 借款期限合理性
risk: medium
score: 5
depends_on:
- when: JK-001.passed
stages:
- id: '1'
check: required
fields:
- 借款日期
- 还款日期
logic: and
- id: '2'
type: date.after
field: 还款日期
ref_field: 借款日期
- id: '3'
check: assert
expr: parse_date(签订日期) != None and (today() - parse_date(签订日期)).days >= 0 and (today() - parse_date(签订日期)).days <= 1825
logic: 1 AND 2 AND 3
messages:
pass: 借款期限合规
fail: 借款日期颠倒 或 合同签订过旧
type: deterministic
- group: 印章合规
rules:
- rule_id: JK-SEAL-001
name: 借贷双方签章齐全
risk: high
score: 10
stages:
- id: '1'
type: seal.present
seal_id: 借款人签章
- id: '2'
type: seal.present
seal_id: 出借人签章
logic: 1 AND 2
messages:
pass: 双方签章齐全
fail: 缺少借款人或出借人签章
remediation:
by_phase:
draft:
suggestions:
- 草稿阶段无需盖章
actions:
- type: noop
executed:
suggestions:
- 民间借贷纠纷中,无签章的合同证据效力较弱
- 请补盖双方印章或提供签名
actions:
- type: upload_file
label: 补扫签章页
file_type: 签章页
type: deterministic
- group: 我方权益保护
rules:
- rule_id: JK-OUR-001
name: 我方缔约地位及不利条款审查
risk: high
score: 10
stages:
- id: '1'
check: ai
field: ctx
prompt: |-
请基于合同全文判断我方(中国烟草相关公司/专卖局)在本合同中的缔约地位,并审查是否存在强势条款或不利于我方的条款。
合同全文字段来源:ctx。该字段由后端负责注入和匹配。
合同全文:{{ctx}}
评查步骤:
1. 识别合同中是否存在中国烟草相关主体,包括但不限于“中国烟草”“烟草公司”“烟草专卖局”“中烟”“卷烟厂”“烟草工业”“烟草商业”等名称或其分支机构。
2. 判断该主体是我方,并识别我方在合同中的地位:甲方、乙方、发包人、承包人、委托方、受托方、出租方、承租方、出借人、借款人、赠与方、受赠方或其他。
3. 从合同全文审查是否存在明显偏向对方、加重我方责任、限制我方权利、降低对方责任、增加我方付款/赔偿/解除限制/验收风险/知识产权风险/保密风险/争议解决不利风险的条款。
4. 若无法识别我方主体或我方地位,应返回无法判断,并说明原因,不得臆测。
强势或不利条款示例:
- 对方可单方变更、解除、延期履行,而我方缺少对应权利。
- 我方承担高额违约金、无限责任、连带责任或无上限赔偿,对方责任明显较轻。
- 付款条件、验收、交付、质量、质保、知识产权、保密、争议解决、管辖地等安排明显不利于我方。
- 排除或限制我方依法解除、抗辩、追偿、索赔、验收异议或审计监督权利。
请以JSON格式回答:{"passed": true/false, "our_party": "我方主体名称或无法判断", "our_position": "甲方/乙方/发包人/承包人/委托方/受托方/出租方/承租方/出借人/借款人/赠与方/受赠方/其他/无法判断", "has_strong_terms": true/false, "has_unfavorable_terms": true/false, "risk_terms": ["风险条款摘要"], "reason": "判断理由", "suggestion": "修改建议"}
schema:
type: object
required:
- passed
- our_party
- our_position
- has_strong_terms
- has_unfavorable_terms
- reason
properties:
passed:
type: boolean
our_party:
type: string
our_position:
type: string
has_strong_terms:
type: boolean
has_unfavorable_terms:
type: boolean
risk_terms:
type: array
reason:
type: string
suggestion:
type: string
pass_when: passed == True
logic: '1'
messages:
pass: 未发现明显强势条款或不利于我方的条款
fail: 存在强势条款、不利于我方的条款或无法判断我方缔约地位
type: ai_rule