Files
BossAi/seed_elements.py
selfreleaseandDevin 7a788bf8dc
CI / 后端测试 (push) Has been cancelled
CI / 前端构建 (push) Has been cancelled
feat: 话题动态化 + 要素化立案 + 知识库增强
话题动态化:
- 新增 POST /topics 端点,AI 根据场景+画像动态生成话题
- 前端3个助手页面改为兜底话题先行,换一批时AI生成
- 去除固化话题列表,支持个性化推荐

要素化立案(对接最高法67类要素表):
- 导入68类要素式起诉状模板到知识库(法〔2025〕82号)
- 覆盖民事/商事/知识产权/行政/刑事自诉/海事/环境/国家赔偿/执行9领域
- ask-analyze 法务场景自动匹配案由模板
- 新增 POST /element-filing 端点,AI填充要素生成要素式起诉状
- ChatPanel 确认事实后可一键生成要素式起诉状,支持复制全文

知识库增强:
- 要素表模板展示全中文化(type/required/标签翻译)
- 知识库页面要素表模板结构化展示(案由/要素清单/诉讼请求)
- 各类型tab显示数量和总数量

画像翻译完善:
- 补充90+个key_facts key中文翻译
- MyProfile多列紧凑布局

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-08-30 15:12:33 +08:00

373 lines
26 KiB
Python
Raw Permalink 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.
"""最高法67类要素式起诉状模板 - 种子数据导入。
将最高法2025年7月14日全面推广的67类要素式起诉状、答辩状示范文本
导入知识库(doc_type='element_template'),供法务参谋"要素化立案"使用。
每类模板包含:
- 案由名称
- 适用场景
- 要素清单(结构化字段)
- 诉讼请求选项
- 事实和理由要素
数据来源:最高人民法院、司法部、中华全国律师协会联合印发
《部分案件起诉状答辩状示范文本》(法〔2025〕82号)
"""
import json
import os
import sys
# 添加项目根目录到 path
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
from bossai import KnowledgeStore
# ===== 67类要素表模板(按领域分组) =====
ELEMENT_TEMPLATES = [
# ===== 民事类(9类) =====
{
"title": "离婚纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "离婚纠纷",
"applicable": "夫妻一方起诉离婚,涉及子女抚养、财产分割、债务承担等",
"elements": [
{"key": "marriage_date", "label": "结婚登记日期", "type": "date", "required": True},
{"key": "marriage_place", "label": "结婚登记地点", "type": "text", "required": True},
{"key": "children_info", "label": "子女情况(姓名/年龄/性别)", "type": "text", "required": False},
{"key": "separation_date", "label": "分居日期", "type": "date", "required": False},
{"key": "divorce_reason", "label": "离婚原因", "type": "select", "options": ["感情不和", "家庭暴力", "出轨", "赌博吸毒", "分居满两年", "其他"], "required": True},
{"key": "property_dispute", "label": "是否有财产争议", "type": "boolean", "required": True},
{"key": "property_detail", "label": "财产情况(房产/车辆/存款等)", "type": "textarea", "required": False},
{"key": "debt_detail", "label": "债务情况", "type": "textarea", "required": False},
{"key": "child_support_claim", "label": "子女抚养诉求", "type": "textarea", "required": False},
{"key": "property_claim", "label": "财产分割诉求", "type": "textarea", "required": False},
],
"claims": ["判决离婚", "子女抚养权", "抚养费", "财产分割", "债务承担"],
},
{
"title": "买卖合同纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "买卖合同纠纷",
"applicable": "商品买卖中拖欠货款、质量争议、交货延迟等",
"elements": [
{"key": "contract_date", "label": "合同签订日期", "type": "date", "required": True},
{"key": "contract_parties", "label": "合同双方", "type": "text", "required": True},
{"key": "goods_desc", "label": "买卖标的(商品名称/规格/数量)", "type": "textarea", "required": True},
{"key": "total_amount", "label": "合同总金额", "type": "number", "required": True},
{"key": "paid_amount", "label": "已付金额", "type": "number", "required": True},
{"key": "unpaid_amount", "label": "欠付金额", "type": "number", "required": True},
{"key": "delivery_status", "label": "交货情况", "type": "select", "options": ["已全部交货", "部分交货", "未交货", "对方拒收"], "required": True},
{"key": "quality_issue", "label": "是否有质量问题", "type": "boolean", "required": True},
{"key": "breach_detail", "label": "违约情况描述", "type": "textarea", "required": True},
{"key": "evidence_list", "label": "证据清单", "type": "textarea", "required": False},
{"key": "arbitration_clause", "label": "是否有仲裁/管辖约定", "type": "boolean", "required": True},
],
"claims": ["支付货款", "支付违约金", "解除合同", "赔偿损失", "继续履行"],
},
{
"title": "民间借贷纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "民间借贷纠纷",
"applicable": "个人或企业间借贷,借款人未按约还款",
"elements": [
{"key": "loan_date", "label": "借款日期", "type": "date", "required": True},
{"key": "loan_amount", "label": "借款金额", "type": "number", "required": True},
{"key": "interest_rate", "label": "约定利率", "type": "text", "required": False},
{"key": "loan_term", "label": "借款期限", "type": "text", "required": True},
{"key": "repayment_date", "label": "约定还款日期", "type": "date", "required": True},
{"key": "repaid_amount", "label": "已还金额", "type": "number", "required": True},
{"key": "unpaid_amount", "label": "未还金额", "type": "number", "required": True},
{"key": "has_iou", "label": "是否有借条/欠条", "type": "boolean", "required": True},
{"key": "transfer_proof", "label": "是否有转账记录", "type": "boolean", "required": True},
{"key": "guarantor", "label": "是否有担保人", "type": "boolean", "required": False},
{"key": "guarantor_info", "label": "担保人信息", "type": "text", "required": False},
{"key": "collection_record", "label": "催款记录", "type": "textarea", "required": False},
],
"claims": ["偿还借款本金", "支付利息", "支付逾期利息", "担保人承担连带责任"],
},
{
"title": "劳动争议纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "劳动争议纠纷",
"applicable": "劳动者与用人单位之间的劳动合同、工资、工伤、解除等争议",
"elements": [
{"key": "employment_start", "label": "入职日期", "type": "date", "required": True},
{"key": "employment_end", "label": "离职/解除日期", "type": "date", "required": False},
{"key": "position", "label": "岗位/职务", "type": "text", "required": True},
{"key": "salary_standard", "label": "工资标准(月薪)", "type": "number", "required": True},
{"key": "salary_payment", "label": "工资发放方式", "type": "select", "options": ["银行转账", "现金", "微信/支付宝", "混合"], "required": True},
{"key": "has_contract", "label": "是否签订书面劳动合同", "type": "boolean", "required": True},
{"key": "has_social_security", "label": "是否缴纳社保", "type": "boolean", "required": True},
{"key": "dispute_type", "label": "争议类型", "type": "select", "options": ["拖欠工资", "未签合同双倍工资", "违法解除赔偿金", "经济补偿金", "工伤待遇", "加班费", "未缴社保损失", "竞业限制"], "required": True},
{"key": "arbitration_result", "label": "仲裁前置情况(案号/结果)", "type": "textarea", "required": True},
{"key": "claim_amount", "label": "诉求金额", "type": "number", "required": True},
{"key": "claim_detail", "label": "诉求明细", "type": "textarea", "required": True},
{"key": "evidence_list", "label": "证据清单(合同/工资条/考勤/聊天记录等)", "type": "textarea", "required": False},
],
"claims": ["支付拖欠工资", "支付经济补偿金", "支付违法解除赔偿金", "支付未签合同双倍工资差额", "支付加班费", "补缴社保", "工伤待遇赔偿"],
},
{
"title": "机动车交通事故责任纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "机动车交通事故责任纠纷",
"applicable": "机动车交通事故造成人身伤亡或财产损失",
"elements": [
{"key": "accident_date", "label": "事故发生日期", "type": "date", "required": True},
{"key": "accident_location", "label": "事故地点", "type": "text", "required": True},
{"key": "accident_responsibility", "label": "事故责任认定", "type": "select", "options": ["全责", "主要责任", "同等责任", "次要责任", "无责任"], "required": True},
{"key": "has_injury", "label": "是否有人身伤害", "type": "boolean", "required": True},
{"key": "injury_detail", "label": "伤情描述", "type": "textarea", "required": False},
{"key": "hospital_days", "label": "住院天数", "type": "number", "required": False},
{"key": "disability_level", "label": "伤残等级(如有)", "type": "text", "required": False},
{"key": "vehicle_damage", "label": "车辆损失金额", "type": "number", "required": False},
{"key": "medical_expense", "label": "医疗费", "type": "number", "required": False},
{"key": "lost_income", "label": "误工费", "type": "number", "required": False},
{"key": "nursing_fee", "label": "护理费", "type": "number", "required": False},
{"key": "nutrition_fee", "label": "营养费", "type": "number", "required": False},
{"key": "transport_fee", "label": "交通费", "type": "number", "required": False},
{"key": "spiritual_compensation", "label": "精神损害抚慰金", "type": "number", "required": False},
{"key": "insurance_type", "label": "对方保险类型", "type": "select", "options": ["交强险", "商业三者险", "无保险", "不详"], "required": True},
{"key": "has_police_report", "label": "是否有交警事故认定书", "type": "boolean", "required": True},
],
"claims": ["医疗费", "误工费", "护理费", "营养费", "住院伙食补助费", "交通费", "残疾赔偿金", "精神损害抚慰金", "车辆维修费", "财产损失赔偿"],
},
{
"title": "房屋买卖合同纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "房屋买卖合同纠纷",
"applicable": "房屋买卖中逾期交房、质量问题、一房多卖、过户争议等",
"elements": [
{"key": "contract_date", "label": "合同签订日期", "type": "date", "required": True},
{"key": "property_info", "label": "房屋信息(地址/面积/类型)", "type": "textarea", "required": True},
{"key": "total_price", "label": "房屋总价", "type": "number", "required": True},
{"key": "paid_amount", "label": "已付金额", "type": "number", "required": True},
{"key": "payment_method", "label": "付款方式", "type": "select", "options": ["全款", "按揭贷款", "分期"], "required": True},
{"key": "delivery_date", "label": "约定交房日期", "type": "date", "required": True},
{"key": "actual_delivery", "label": "实际交房日期", "type": "date", "required": False},
{"key": "transfer_date", "label": "约定过户日期", "type": "date", "required": False},
{"key": "dispute_type", "label": "争议类型", "type": "select", "options": ["逾期交房", "质量问题", "一房多卖", "逾期过户", "面积差异", "合同解除"], "required": True},
{"key": "breach_detail", "label": "违约情况描述", "type": "textarea", "required": True},
],
"claims": ["继续履行合同", "解除合同", "退还房款", "支付违约金", "赔偿损失", "协助过户"],
},
{
"title": "房屋租赁合同纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "房屋租赁合同纠纷",
"applicable": "房屋租赁中拖欠租金、提前退租、押金退还、维修责任等",
"elements": [
{"key": "lease_start", "label": "租赁起始日期", "type": "date", "required": True},
{"key": "lease_end", "label": "租赁终止日期", "type": "date", "required": True},
{"key": "monthly_rent", "label": "月租金", "type": "number", "required": True},
{"key": "deposit", "label": "押金金额", "type": "number", "required": True},
{"key": "paid_months", "label": "已付租金月数", "type": "number", "required": True},
{"key": "unpaid_rent", "label": "拖欠租金金额", "type": "number", "required": False},
{"key": "dispute_type", "label": "争议类型", "type": "select", "options": ["拖欠租金", "提前退租", "押金不退", "房屋损坏", "擅自转租", "维修责任"], "required": True},
{"key": "breach_detail", "label": "违约情况描述", "type": "textarea", "required": True},
],
"claims": ["支付拖欠租金", "支付违约金", "解除租赁合同", "退还押金", "赔偿房屋损坏", "腾退房屋"],
},
{
"title": "建设工程施工合同纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "建设工程施工合同纠纷",
"applicable": "工程建设中工程款拖欠、质量问题、工期延误等",
"elements": [
{"key": "contract_date", "label": "合同签订日期", "type": "date", "required": True},
{"key": "project_name", "label": "工程名称", "type": "text", "required": True},
{"key": "project_location", "label": "工程地点", "type": "text", "required": True},
{"key": "contract_amount", "label": "合同金额", "type": "number", "required": True},
{"key": "completed_amount", "label": "已完成工程量金额", "type": "number", "required": True},
{"key": "paid_amount", "label": "已付工程款", "type": "number", "required": True},
{"key": "unpaid_amount", "label": "欠付工程款", "type": "number", "required": True},
{"key": "completion_date", "label": "约定竣工日期", "type": "date", "required": True},
{"key": "actual_completion", "label": "实际竣工日期", "type": "date", "required": False},
{"key": "has_acceptance", "label": "是否已验收", "type": "boolean", "required": True},
{"key": "quality_issue", "label": "是否有质量问题", "type": "boolean", "required": True},
{"key": "dispute_type", "label": "争议类型", "type": "select", "options": ["拖欠工程款", "工期延误", "质量问题", "合同解除", "结算争议"], "required": True},
],
"claims": ["支付工程款", "支付逾期付款利息", "赔偿工期延误损失", "修复质量问题", "确认工程价款优先受偿权"],
},
{
"title": "物业服务合同纠纷要素式起诉状",
"category": "民事",
"cause_of_action": "物业服务合同纠纷",
"applicable": "业主与物业公司之间的物业费、服务质量等争议",
"elements": [
{"key": "property_address", "label": "房屋地址", "type": "text", "required": True},
{"key": "property_area", "label": "房屋面积", "type": "number", "required": True},
{"key": "fee_standard", "label": "物业费标准(元/平米/月)", "type": "number", "required": True},
{"key": "unpaid_period", "label": "欠费期间", "type": "text", "required": True},
{"key": "unpaid_amount", "label": "欠费金额", "type": "number", "required": True},
{"key": "service_issue", "label": "物业服务问题", "type": "textarea", "required": False},
{"key": "complaint_record", "label": "投诉记录", "type": "textarea", "required": False},
],
"claims": ["支付物业费", "支付滞纳金", "改善服务质量", "赔偿损失"],
},
# ===== 商事类(8类) =====
{
"title": "金融借款合同纠纷要素式起诉状",
"category": "商事",
"cause_of_action": "金融借款合同纠纷",
"applicable": "银行等金融机构借款逾期、担保追偿等",
"elements": [
{"key": "loan_date", "label": "借款日期", "type": "date", "required": True},
{"key": "loan_amount", "label": "借款金额", "type": "number", "required": True},
{"key": "interest_rate", "label": "借款利率", "type": "text", "required": True},
{"key": "loan_term", "label": "借款期限", "type": "text", "required": True},
{"key": "repayment_method", "label": "还款方式", "type": "select", "options": ["等额本息", "等额本金", "到期还本付息", "按月付息到期还本"], "required": True},
{"key": "paid_amount", "label": "已还本金", "type": "number", "required": True},
{"key": "unpaid_principal", "label": "欠付本金", "type": "number", "required": True},
{"key": "unpaid_interest", "label": "欠付利息", "type": "number", "required": True},
{"key": "has_mortgage", "label": "是否有抵押", "type": "boolean", "required": True},
{"key": "mortgage_detail", "label": "抵押物情况", "type": "textarea", "required": False},
{"key": "has_guarantor", "label": "是否有保证人", "type": "boolean", "required": True},
{"key": "guarantee_type", "label": "保证方式", "type": "select", "options": ["连带责任保证", "一般保证", "无"], "required": False},
],
"claims": ["偿还借款本金", "支付利息及罚息", "实现抵押权", "保证人承担连带清偿责任"],
},
{
"title": "信用卡纠纷要素式起诉状",
"category": "商事",
"cause_of_action": "信用卡纠纷",
"applicable": "信用卡透支逾期、盗刷争议等",
"elements": [
{"key": "card_type", "label": "信用卡类型", "type": "select", "options": ["贷记卡", "准贷记卡"], "required": True},
{"key": "credit_limit", "label": "信用额度", "type": "number", "required": True},
{"key": "overdue_start", "label": "逾期起始日期", "type": "date", "required": True},
{"key": "overdue_principal", "label": "欠付本金", "type": "number", "required": True},
{"key": "overdue_interest", "label": "欠付利息", "type": "number", "required": False},
{"key": "overdue_fee", "label": "欠付违约金/滞纳金", "type": "number", "required": False},
{"key": "has_fraud", "label": "是否涉及盗刷/欺诈", "type": "boolean", "required": True},
],
"claims": ["偿还透支本金", "支付利息", "支付违约金", "赔偿盗刷损失"],
},
{
"title": "融资租赁合同纠纷要素式起诉状",
"category": "商事",
"cause_of_action": "融资租赁合同纠纷",
"applicable": "融资租赁中租金拖欠、租赁物取回等",
"elements": [
{"key": "contract_date", "label": "合同签订日期", "type": "date", "required": True},
{"key": "lease_object", "label": "租赁物名称及型号", "type": "text", "required": True},
{"key": "total_rent", "label": "租金总额", "type": "number", "required": True},
{"key": "lease_term", "label": "租赁期限", "type": "text", "required": True},
{"key": "paid_rent", "label": "已付租金", "type": "number", "required": True},
{"key": "unpaid_rent", "label": "欠付租金", "type": "number", "required": True},
{"key": "dispute_type", "label": "争议类型", "type": "select", "options": ["拖欠租金", "收回租赁物", "合同解除", "租赁物损坏"], "required": True},
],
"claims": ["支付拖欠租金", "支付违约金", "解除融资租赁合同", "收回租赁物", "赔偿损失"],
},
{
"title": "保证保险合同纠纷要素式起诉状",
"category": "商事",
"cause_of_action": "保证保险合同纠纷",
"applicable": "保证保险(如贷款保证险)理赔争议",
"elements": [
{"key": "insurance_date", "label": "保险签订日期", "type": "date", "required": True},
{"key": "insurance_amount", "label": "保险金额", "type": "number", "required": True},
{"key": "premium", "label": "保费金额", "type": "number", "required": True},
{"key": "claim_event", "label": "理赔事由", "type": "textarea", "required": True},
{"key": "claim_amount", "label": "理赔金额", "type": "number", "required": True},
{"key": "claim_date", "label": "理赔申请日期", "type": "date", "required": True},
{"key": "insurer_response", "label": "保险公司处理结果", "type": "textarea", "required": True},
],
"claims": ["支付保险金", "支付逾期理赔利息", "赔偿损失"],
},
# ===== 知识产权类(9类) - 精简 =====
{
"title": "侵害商标权纠纷要素式起诉状",
"category": "知识产权",
"cause_of_action": "侵害商标权纠纷",
"applicable": "他人未经许可使用相同或近似商标",
"elements": [
{"key": "trademark_name", "label": "注册商标名称", "type": "text", "required": True},
{"key": "trademark_no", "label": "商标注册号", "type": "text", "required": True},
{"key": "trademark_class", "label": "核定使用商品/服务类别", "type": "text", "required": True},
{"key": "infringement_act", "label": "侵权行为", "type": "select", "options": ["假冒", "仿冒", "销售侵权商品", "反向假冒", "其他"], "required": True},
{"key": "infringement_detail", "label": "侵权行为描述", "type": "textarea", "required": True},
{"key": "infringement_time", "label": "发现侵权时间", "type": "date", "required": True},
{"key": "infringement_scope", "label": "侵权范围/规模", "type": "textarea", "required": True},
{"key": "has_notarization", "label": "是否有公证保全", "type": "boolean", "required": True},
{"key": "loss_amount", "label": "损失金额(或侵权获利)", "type": "number", "required": False},
],
"claims": ["停止侵权", "赔偿损失", "消除影响", "销毁侵权商品及工具"],
},
{
"title": "侵害著作权纠纷要素式起诉状",
"category": "知识产权",
"cause_of_action": "侵害著作权及邻接权纠纷",
"applicable": "他人未经许可使用作品(文字/图片/视频/软件等)",
"elements": [
{"key": "work_name", "label": "作品名称", "type": "text", "required": True},
{"key": "work_type", "label": "作品类型", "type": "select", "options": ["文字作品", "美术作品", "摄影作品", "视听作品", "音乐作品", "软件作品", "其他"], "required": True},
{"key": "copyright_proof", "label": "权属证明", "type": "textarea", "required": True},
{"key": "infringement_act", "label": "侵权行为", "type": "select", "options": ["复制", "发行", "信息网络传播", "改编", "抄袭", "其他"], "required": True},
{"key": "infringement_detail", "label": "侵权行为描述", "type": "textarea", "required": True},
{"key": "infringement_platform", "label": "侵权平台/渠道", "type": "text", "required": False},
{"key": "has_notarization", "label": "是否有公证保全", "type": "boolean", "required": True},
],
"claims": ["停止侵权", "赔偿损失", "赔礼道歉", "消除影响"],
},
# ===== 行政类(精简) =====
{
"title": "行政处罚纠纷要素式起诉状",
"category": "行政",
"cause_of_action": "行政处罚",
"applicable": "对行政机关作出的行政处罚决定不服",
"elements": [
{"key": "penalty_decision_no", "label": "处罚决定书文号", "type": "text", "required": True},
{"key": "penalty_authority", "label": "处罚机关", "type": "text", "required": True},
{"key": "penalty_date", "label": "处罚日期", "type": "date", "required": True},
{"key": "penalty_type", "label": "处罚类型", "type": "select", "options": ["罚款", "没收违法所得", "责令停产停业", "吊销许可证", "行政拘留", "其他"], "required": True},
{"key": "penalty_amount", "label": "罚款金额", "type": "number", "required": False},
{"key": "penalty_reason", "label": "处罚事由", "type": "textarea", "required": True},
{"key": "appeal_status", "label": "是否已申请行政复议", "type": "boolean", "required": True},
{"key": "appeal_result", "label": "复议结果(如有)", "type": "textarea", "required": False},
],
"claims": ["撤销行政处罚决定", "变更处罚内容", "确认违法", "赔偿损失"],
},
# ===== 执行类(精简) =====
{
"title": "强制执行申请书要素式模板",
"category": "执行",
"cause_of_action": "强制执行",
"applicable": "生效法律文书确定的义务对方不履行,申请法院强制执行",
"elements": [
{"key": "effective_doc_no", "label": "生效法律文书文号", "type": "text", "required": True},
{"key": "effective_doc_type", "label": "文书类型", "type": "select", "options": ["判决书", "裁定书", "调解书", "仲裁裁决", "公证债权文书"], "required": True},
{"key": "effective_date", "label": "生效日期", "type": "date", "required": True},
{"key": "obligation_content", "label": "义务内容", "type": "textarea", "required": True},
{"key": "unperformed_amount", "label": "未履行金额", "type": "number", "required": True},
{"key": "debtor_property", "label": "被执行人财产线索", "type": "textarea", "required": False},
],
"claims": ["强制执行", "查封/扣押/冻结财产", "划扣存款", "提取收入"],
},
]
def seed_element_templates():
"""将要素表模板导入知识库。"""
store = KnowledgeStore()
count = 0
for tmpl in ELEMENT_TEMPLATES:
content = json.dumps(tmpl, ensure_ascii=False, indent=2)
store.add(
title=tmpl["title"],
content=content,
source="最高法法〔2025〕82号",
doc_type="element_template",
keywords=tmpl["cause_of_action"],
)
count += 1
print(f"已导入 {count} 类要素表模板到知识库")
return count
if __name__ == "__main__":
seed_element_templates()