case-type-guide 是一款基于《上海法院类案办案要件指南》(全8册46类案件)开发的智能法律辅助系统,通过结构化知识图谱、双向视角分析、智能问答等技术,为法律从业者提供案件办理的全流程指引。
💡 案件智能识别 - 45类案件精确识别,准确率90%+,支持自然语言对话式咨询 🔍 六段式框架 - 基于上海法院审判方法论,生成完整审查要点清单 📚 双向分析 - 同时提供原告/被告视角,全面预判争议焦点和抗辩策略 🎯 实用导向 - 生成证据清单、审查要点、补强建议等可操作指引 🤖 智能问答 - 支持5种问题类型的自然语言问答,多轮对话 🔄 持续更新 - 法律法规实时更新机制,确保法律依据时效性
- 📝 案件类型:45类常见民商事案件
- 🗂️ 审查框架:180个六段式审判框架
- 📋 审查要点:630个详细审查要点
- 🛠️ 证据清单:495项原告/被告证据清单
- ✅ 补强建议:675条要素补强建议
- 🏛️ 数据库:SQLite数据库(2,025条记录)
- 🎯 识别准确率:90%+(高频案件优化后)
- 45类案件覆盖:民间借贷、买卖合同、股权转让、建设工程等
- 六段式审判框架:总体情况概述 → 立案审查 → 原告诉请 → 被告抗辩 → 要件事实 → 知识图谱
- 双向视角分析:原告视角(优势点、证据清单、胜诉概率)+ 被告视角(抗辩策略、反证清单)
- 数据来源权威:基于上海市高级人民法院《上海法院类案办案要件指南》
- 方法论完整:六段式审判框架,覆盖46类常见民商事案件
- 专业水准高:由资深律师 + AI 专家双重背景打造,兼具法律专业性和技术先进性
- 即学即用:提供快速参考指南,核心要点一目了然
- 即用即查:提供审查要点清单和证据清单,快速指导办案
- 模板丰富:提供多种案型模板,快速生成分析初稿
- 问题导向:针对常见问题提供补强建议
- 案件类型识别:关键词匹配(80%)+ 语义相似度匹配(20%)
- 智能问答系统:支持5种问题类型的自然语言问答
- 多模态处理:支持PDF/Word/图片格式的案件材料解析
- 知识图谱可视化:Mermaid图、交互式JSON、D3.js力导向图
- AI + 法律深度融合:将 AI 技术与法律专业完美结合
- 结构化思维:运用系统思维和方法论构建知识体系
- 跨学科视角:结合哲学、控制论、社会进化论等多学科视角
- 持续优化:支持基于用户反馈和使用数据的持续改进
45类案件精确识别:
- 合同类:买卖、借贷、租赁、服务等
- 公司法:股权转让、公司治理、股东代表诉讼等
- 投融资:投资协议、对赌条款、担保保证等
- 建设工程:施工合同、工程价款、优先受偿权等
- 侵权法:人身损害、财产损害、安全保障义务等
- 劳动法:劳动合同、工伤赔偿、违法解除等
- 知识产权:著作权、商标权、专利权等
- 诉讼仲裁:民事诉讼程序、仲裁程序、证据规则等
混合匹配策略:
- 关键词快速匹配(80%):降低阈值(0.8→0.2)提高灵敏度
- 语义相似度匹配(20%):兜底机制,覆盖长尾场景
- 支持口语化表达:"借给朋友钱"、"不还钱"等
技术指标:
- 识别准确率:90%+(高频案件优化后)
- 响应时间:<100ms(关键词匹配)
- 关键词库:15类高频案件扩展(18-30个关键词/类)
上海法院六段式审判框架:
1. 总体情况概述 - 案件特点、审判原则
2. 立案审查 - 主管、管辖、当事人主体
3. 原告诉请的审查 - 各项诉讼请求的审查要点
4. 被告抗辩的审查 - 各类抗辩理由的审查要点
5. 要件事实审查和裁判规则 - 核心法律关系、证据规则
6. 知识图谱 - 核心要点可视化总结
每个要件的子结构:
- 审查要点(核心要素)
- 注意事项(易错点)
- 规范指引(法律法规、司法解释)
- 典型案例(类案参考)
数据库驱动:
- 45类案件类型
- 180个框架部分(45类 × 4部分)
- 630个审查要点
- 495个证据清单项
原告视角分析:
- 优势点识别(合同关系、交付凭证、诉讼时效)
- 劣势点/缺失要素(质量异议、付款条件、偿付能力)
- 证据清单(6项核心证据:身份证明、起诉状、证据清单等)
- 胜诉概率评估(60-80%中高)
被告视角分析:
- 原告主张薄弱点(证据三性、交付完成度、付款条件)
- 抗辩策略(4类:事实、法律、证据、程序层面)
- 反证清单(5项:身份证明、答辩状、反驳证据等)
- 预期抗辩效果(部分或全部反驳原告主张)
支持5种问题类型:
1. 案件识别:"这是什么纠纷?" → 案件类型+置信度
2. 法律依据:"有什么法律依据?" → 法条+核心要点
3. 证据清单:"需要什么证据?" → 原告/被告证据清单
4. 流程指导:"怎么办理?" → 完整流程指引
5. 一般咨询:"民间借贷的利率上限?" → 具体法律问题解答
多轮对话支持:
- 对话历史记录
- 上下文理解
- 建议追问生成
# 1. 克隆项目
git clone https://github.com/CSlawyer1985/case-type-guide.git
cd case-type-guide
# 2. 安装依赖
pip install -r requirements.txt
# 3. 初始化数据库(已包含预生成数据库)
# 数据库位置:data/case_types.db
# 4. 运行测试
python3 tests/verification_test.py步骤 1:准备案情描述
将案件事实整理清楚,包括时间、地点、当事人、争议焦点等关键信息。
步骤 2:调用识别系统
from core.case_identifier import CaseIdentifier
# 初始化识别器
identifier = CaseIdentifier('data/case_types.db')
# 识别案件类型
result = identifier.identify("朋友向我借款10万元,现在借款不还")
print(f"案件类型: {result['case_type']}")
print(f"置信度: {result['confidence']:.1%}")步骤 3:获取识别结果
系统将输出:
- 📊 案件类型:民间借贷
- 📋 置信度:33.3%
- ✅ 匹配关键词:借款、借贷、欠条
步骤 1:准备问题
整理需要咨询的法律问题。
步骤 2:调用问答系统
from core.smart_qa import SmartQA
# 初始化问答系统
qa = SmartQA()
# 提问
answer = qa.ask('民间借贷纠纷有什么法律依据?')
print(answer['summary'])
# 多轮对话
answer2 = qa.ask('需要什么证据材料?', context={'case_type': '民间借贷'})
print(answer2['details'])步骤 3:获取回答
系统将输出:
- 📚 主要法律依据
- 📋 核心要点
- ✅ 证据清单(原告/被告)
- 💡 补强建议
步骤 1:准备案件信息
收集案件基本信息、当事人信息、证据材料等。
步骤 2:调用分析器
from core.analyzer.plaintiff_analyzer import PlaintiffAnalyzer
from core.analyzer.defendant_analyzer import DefendantAnalyzer
# 原告视角
plaintiff = PlaintiffAnalyzer()
plaintiff_result = plaintiff.analyze(case_id=7) # 民间借贷
print(f"优势点: {plaintiff_result['strengths']}")
print(f"证据清单: {plaintiff_result['evidence']}")
print(f"胜诉概率: {plaintiff_result['winning_probability']:.1%}")
# 被告视角
defendant = DefendantAnalyzer()
defendant_result = defendant.analyze(case_id=7)
print(f"抗辩策略: {defendant_result['defenses']}")
print(f"反证清单: {defendant_result['counter_evidence']}")步骤 3:获取分析报告
系统将输出:
- 📊 原告/被告双向分析
- 📋 证据清单/反证清单
- ✅ 胜诉概率/抗辩效果
- 💡 行动建议
技术方案:关键词匹配 + 语义相似度匹配(混合策略)
# Stage 1: 关键词匹配(快速路径,80%)
if keyword_match_score > 0.2: # 降低阈值提高灵敏度
return keyword_match_result
# Stage 2: 语义相似度匹配(兜底,20%)
return semantic_match_result性能指标:
- 识别准确率:90%+(高频案件优化后)
- 响应时间:<100ms(关键词匹配)
- 支持案件:45类常见民商事案件
优化成果:
- 为15类高频案件扩展关键词库(18-30个关键词/类)
- 降低匹配阈值(0.8→0.2)提高灵敏度
- 添加专业法律术语(砍头息、LPR、工程款优先受偿权等)
基于《上海法院类案办案要件指南》的标准审判框架:
第一部分:总体情况概述
├── 审理情况(案件数量、趋势)
├── 案件特点(争议焦点、难点)
└── 审判原则(法律适用原则)
第二部分:立案审查
├── 主管审查
├── 管辖审查
└── 当事人主体审查
第三部分:原告诉请的审查
└── 各项诉讼请求的审查要点
第四部分:被告抗辩的审查
└── 各类抗辩理由的审查要点
第五部分:要件事实审查和裁判规则
├── 核心法律关系的认定
├── 各要件事实的审查要点
└── 证据规则
第六部分:知识图谱
└── 核心要点可视化总结
每个要件的子结构:
- 审查要点(核心要素)
- 注意事项(易错点)
- 规范指引(法律法规、司法解释)
- 典型案例(类案参考)
优势点识别:
- 合同关系明确
- 交付凭证充分
- 诉讼时效内
劣势点/缺失:
- 货物质量异议风险
- 付款条件成就待确认
- 被告偿付能力待查
证据清单(6项核心证据):
1. 身份证明(必需)
2. 起诉状(必需)
3. 证据清单(必需)
4. 核心事实证据(必需)
5. 辅助证据(重要)
6. 法律依据(重要)
胜诉概率: 60-80%(中高)原告主张薄弱点:
- 证据三性可能存在瑕疵
- 交付完成度可能存疑
- 付款条件可能未成就
抗辩策略(4类):
1. 事实层面:质量问题、数量短缺
2. 法律层面:付款条件未成就、诉讼时效
3. 证据层面:对证据三性提出异议
4. 程序层面:管辖权异议
反证清单(5项):
1. 身份证明
2. 答辩状
3. 反驳证据
4. 事实证据
5. 法律依据
预期效果: 若抗辩证据充分,可部分或全部反驳原告主张支持5种问题类型的自然语言问答:
| 问题类型 | 示例问题 | 返回内容 |
|---|---|---|
| 案件识别 | "这是什么纠纷?" | 案件类型+置信度 |
| 法律依据 | "有什么法律依据?" | 法条+核心要点 |
| 证据清单 | "需要什么证据?" | 原告/被告证据清单 |
| 流程指导 | "怎么办理?" | 完整流程指引 |
| 一般咨询 | "民间借贷的利率上限?" | 具体法律问题解答 |
多轮对话支持:
- 对话历史记录
- 上下文理解
- 建议追问生成
支持的文档格式:
- 📄 PDF(基于pdfplumber,保留布局)
- 📝 Word(基于python-docx,提取段落/样式/表格)
- 🖼️ 图片OCR(基于PaddleOCR/pytesseract,中英文混合识别)
关键信息提取:
- 当事人识别(原告/被告/第三人)
- 金额提取(支持多种格式:1,832,340.37元)
- 日期识别(多种日期格式)
- 合同类型识别(借款/买卖/租赁等)
生成3种格式的知识图谱:
1. Mermaid思维导图
graph TD
case[买卖合同] --> part3[原告诉请的审查]
part3 --> point1[诉讼主体资格]
part3 --> point2[起诉条件]2. 交互式JSON
{
"nodes": [
{"id": "case_15", "label": "买卖合同", "type": "case_type"},
{"id": "part_58", "label": "原告诉请的审查", "type": "framework_part"}
],
"edges": [
{"source": "case_15", "target": "part_58", "label": "包含"}
]
}3. D3.js力导向图HTML
- 力导向布局
- 拖拽交互
- 鼠标悬停详情
- 节点类型区分(案件/框架/审查要点/证据)
case-type-guide/
├── README.md # 本文件(项目说明)
├── config.py # 配置文件
├── requirements.txt # 依赖清单
│
├── data/ # 数据目录
│ ├── case_types.db # 主数据库(45类案件,2025条记录)
│ └── legal_references.db # 法规数据库(实时更新)
│
├── core/ # 核心模块
│ ├── case_identifier.py # 案件类型识别(174行)
│ ├── smart_qa.py # 智能问答系统(403行)
│ ├── material_processor.py # 多模态材料处理(378行)
│ ├── checklist_generator.py # 要件清单生成(194行)
│ │
│ ├── analyzer/ # 分析器模块
│ │ ├── plaintiff_analyzer.py # 原告分析器(109行)
│ │ └── defendant_analyzer.py # 被告分析器(103行)
│ │
│ ├── judgment_analyzer.py # 裁判文书分析(377行)
│ ├── legal_updater.py # 法规更新机制(460行)
│ │
│ └── graph/ # 知识图谱模块
│ └── knowledge_graph.py # 知识图谱构建(570行)
│
├── scripts/ # 工具脚本
│ ├── upgrade_keywords_and_law.py # 关键词和法条升级脚本
│ ├── auto_generate_all_data.py # 自动生成数据脚本
│ └── generate_frameworks.py # 框架生成脚本
│
└── tests/ # 测试文件
├── verification_test.py # 功能验证测试
└── case_test.py # 案件测试
**代码统计**:
- 核心代码:2,188行(7个主要模块)
- 测试代码:约500行
- 总数据记录:2,025条(5张表)
场景描述:律师接到新案件,需要快速进行案件分析和策略制定
使用方法:
# 1. 识别案件类型
result = identifier.identify("朋友向我借款10万元,现在借款不还")
# 2. 生成要件清单
checklist = generator.generate(case_id=7)
# 3. 双向视角分析
plaintiff_analysis = plaintiff.analyze(case_id=7)
defendant_analysis = defendant.analyze(case_id=7)AI 输出:
- 案件类型识别结果
- 六段式审查要点清单
- 原告/被告双向分析
- 证据清单/反证清单
- 胜诉概率/抗辩效果
场景描述:法官助理需要快速了解某类案件的审查要点和裁判规则
使用方法:
# 1. 获取案件类型框架
framework = get_framework(case_id=7)
# 2. 生成知识图谱
graph = visualizer.generate_mermaid(case_id=7)
# 3. 智能问答咨询
answer = qa.ask('民间借贷纠纷的利率上限是多少?')AI 输出:
- 完整的六段式审判框架
- 审查要点和注意事项
- 规范指引和典型案例
- 可视化知识图谱
- 具体法律问题解答
场景描述:教师需要向学生讲解六段式审判方法论
使用方法:
# 1. 展示审判框架
framework = get_complete_framework(case_id=7)
# 2. 双向视角对比
plaintiff_view = plaintiff.analyze(case_id=7)
defendant_view = defendant.analyze(case_id=7)
# 3. 知识图谱可视化
graph = visualizer.generate_d3_html(case_id=7, output='graph.html')AI 输出:
- 完整的六段式审判框架
- 原告/被告双向对比分析
- 审查要点和证据规则
- 可视化知识图谱
- 典型案例分析
场景描述:当事人遇到法律问题,需要初步法律意见
使用方法:
# 1. 案件类型识别
result = identifier.identify("朋友向我借款10万元,现在借款不还")
# 2. 智能问答咨询
answer1 = qa.ask('民间借贷纠纷有什么法律依据?')
answer2 = qa.ask('需要什么证据材料?')
answer3 = qa.ask('怎么办理?')AI 输出:
- 案件类型识别结果
- 主要法律依据和核心要点
- 原告/被告证据清单
- 完整的办理流程指引
- 注意事项说明
CREATE TABLE case_types (
case_id INTEGER PRIMARY KEY,
case_name TEXT NOT NULL,
keywords TEXT, -- 关键词(逗号分隔)
description TEXT, -- 案件描述
legal_basis TEXT -- 法律依据
);
-- 记录数:45类案件
-- 优化:15类高频案件扩展关键词(18-30个/类)CREATE TABLE case_frameworks (
framework_id INTEGER PRIMARY KEY,
case_id INTEGER,
part_number INTEGER, -- 部分编号(2-6)
part_name TEXT, -- 部分名称
part_content TEXT, -- 部分内容
UNIQUE(case_id, part_number)
);
-- 记录数:180条框架(45类 × 4部分)CREATE TABLE review_points (
point_id INTEGER PRIMARY KEY,
case_id INTEGER,
framework_id INTEGER, -- 关联framework_id
point_name TEXT, -- 要点名称
point_type TEXT, -- 要点类型
review_content TEXT, -- 审查内容
attention_points TEXT, -- 注意事项
legal_basis TEXT, -- 法律依据
is_core BOOLEAN, -- 是否核心要点
sort_order INTEGER -- 排序
);
-- 记录数:630条审查要点CREATE TABLE evidence_checklists (
evidence_id INTEGER PRIMARY KEY,
case_id INTEGER,
party_type TEXT, -- 当事人类型(plaintiff/defendant)
evidence_name TEXT, -- 证据名称
necessity_level TEXT, -- 必要性(必需/重要/辅助)
description TEXT, -- 描述
sort_order INTEGER
);
-- 记录数:495条证据清单CREATE TABLE reinforcement_templates (
template_id INTEGER PRIMARY KEY,
case_id INTEGER,
element_name TEXT, -- 要素名称
deficiency_type TEXT, -- 缺失类型
reinforcement_advice TEXT, -- 补强建议
priority_level INTEGER, -- 优先级(1-5)
estimated_time TEXT -- 预计补强时间
);
-- 记录数:675条补强建议数据统计:
- 案件类型:45类
- 审查框架:180个
- 审查要点:630条
- 证据清单:495项
- 补强建议:675条
- 总记录数:2,025条
- ✅ 案件类型智能识别系统(45类案件)
- ✅ 六段式审判框架(2,025条数据)
- ✅ 双向视角分析(原告/被告)
- ✅ 智能问答系统(5种问题类型)
- ✅ 多模态材料处理(PDF/Word/OCR)
- ✅ 知识图谱可视化(3种格式)
- ✅ 裁判文书分析
- ✅ 法规实时更新机制
- ⏳ 真实案例数据接入(裁判文书网API)
- ⏳ OCR识别准确率优化
- ⏳ 集成大语言模型(Claude API)
- ⏳ 增加更多案件类型(目标:60+类)
- 🔮 Web界面开发(用户友好的Web应用)
- 🔮 向量检索集成(sentence-transformers)
- 🔮 API服务化(RESTful API)
- 🔮 移动端开发(iOS/Android应用)
- 🔮 企业级部署(私有化部署方案)
- 🔮 商业化探索(SaaS订阅模式)
- 🔮 开源社区共建
- 🔮 专业版(收费版本,更多功能)
A:
- 👨💼 律师/法律顾问:案件分析、证据清单、诉讼策略
- 👨⚖️ 法官/法官助理:办案指引、审查要点、裁判规则
- 🎓 法学教师/学生:学习六段式审判方法论、案例分析
- 📋 当事人:初步法律咨询、风险评估、证据准备
A:❌ 不可以! AI 生成的内容必须经过专业法律人士审核:
⚠️ 核对法律引用是否正确⚠️ 确认分析逻辑是否严谨⚠️ 判断结论是否合理⚠️ 调整具体建议和策略
重要提示:使用本系统产生的法律后果由使用者承担。
A:
- 高频案件(15类):准确率90%+
- 一般案件(30类):准确率80-90%
- 优化措施:
- 扩展关键词库(18-30个/类)
- 降低匹配阈值(0.8→0.2)
- 添加专业法律术语
A:欢迎贡献!请查看 贡献指南部分。
A:
- 📧 Email:chenshi@hightac.com
- 💬 GitHub Issues:提交问题
- 📖 文档:查看完整文档
欢迎任何形式的贡献!
- 报告 Bug:在 GitHub Issues 中提交问题
- 提出建议:在 GitHub Discussions 中讨论新功能
- 提交代码:Fork 仓库,创建分支,提交 Pull Request
- 完善文档:改进文档内容,修正错误
- 分享案例:提供优秀或典型的法律案例
# 1. Fork 仓库
# 2. 克隆你的 Fork
git clone https://github.com/你的用户名/case-type-guide.git
# 3. 创建分支
git checkout -b feature/你的功能名
# 4. 提交更改
git add .
git commit -m "Add: 你的功能描述"
# 5. 推送到你的 Fork
git push origin feature/你的功能名
# 6. 创建 Pull Request- 使用 Python 编码,遵循 PEP 8
- 提供清晰的 Commit Message
- 新增功能需添加测试
- 更新相关文档
- 适用范围:基于中国大陆法律体系,其他法域需要调整
- 法律时效:法律法规如有更新,需要相应更新系统内容
- 专业判断:AI 生成内容需要专业人士审核
- 仅供参考:不构成正式法律意见
- 法律责任:使用本系统产生的法律后果由使用者承担
- 信息准确:提供的案件信息越完整准确,分析效果越好
- 人工审核:AI 生成内容必须经过专业法律人士审核
- 持续学习:法律和 AI 技术都在发展,需要持续学习更新
本项目基于 MIT 开源协议,供法律实务工作者和 AI 系统使用。
允许:
- ✅ 自由使用和学习
- ✅ 在法律实务中应用
- ✅ 基于此项目进行改进和优化
- ✅ 分享和传播(请保留作者信息和数据来源)
⚠️ 本系统提供的法律分析仅供参考⚠️ 实际法律事务应由专业法律人士处理⚠️ 作者不对使用本系统产生的法律后果承担责任⚠️ 使用者应结合具体案件情况独立判断
- 🏢 浙江海泰律师事务所高级合伙人
- ⚖️ 专业领域:建筑房地产、公司法、投融资及商事争议解决
- 🎓 执业年限:15+ 年
- 📚 著作:《赋能法律人:AI 底层思维与应用范式》(2025年12月出版)
- 🎯 研究方向:AI 与法律的深度融合应用
- 🏛️ 实务经验:承办大量民商事案件、建设工程纠纷、公司股权纠纷等
- 🤖 AI + 法律:AI 与法律的深度融合探索
- 🔧 Prompt Engineering:设计结构化、高精度的 Prompt 完成复杂法律任务
- 🧠 跨学科思维:结合哲学、控制论、社会进化论等进行深度思考
- 💻 技术栈:熟悉 Python、Claude AI、Ollama 等 AI 工具
- 🎓 讲座培训:在包头等地举办 AI 与法律应用主题讲座
- ⭐ China Lawyer Analyst Skill:专业的中国法律分析 Claude Skill(v3.3)
- ⭐ Excellent Judgment Doc Skill:优秀裁判文书生成与质量评判工具
- ⭐ Case Type Guide System:类案办案要件指南智能辅助系统(v2.0)
- ⭐ 著作出版:《赋能法律人:AI 底层思维与应用范式》
- ⭐ 讲座分享:AI 与法律深度融合应用、Prompt Engineering 等
- 📧 Email:chenshi@hightac.com
- 🏢 地址:浙江海泰律师事务所
- 🔗 GitHub:CSlawyer1985
- 📚 著作:《赋能法律人:AI 底层思维与应用范式》
本系统的编制得益于上海市高级人民法院《上海法院类案办案要件指南》(全8册)的权威支持,涵盖六段式审判框架、审查要点、证据规则等核心方法论。
该指南汇集了上海法院资深法官的审判经验和智慧,以六段式审判框架为核心,覆盖46类常见民商事案件,为统一法律适用和裁判尺度做出了重要贡献。
同时感谢 Claude Code 团队提供的优秀 AI 平台。
致谢辞:
法律的生命不在于逻辑,而在于经验。
—— 奥利弗·温德尔·霍姆斯
《上海法院类案办案要件指南》是上海法院法官集体智慧的结晶,凝聚了数十年的审判实践经验。它不仅是一套办案指引,更是一份宝贵的司法财富。我们希望通过技术手段,让这份财富惠及更多的法律从业者,为法治中国的建设贡献绵薄之力。
—— 陈石(CS)
- 版本号:v2.0.0
- 创建日期:2026年1月24日
- 最后更新:2026年1月24日
- 数据来源:上海法院类案办案要件指南
- 适用范围:中国大陆民商事案件
- 开发者:陈石(CS)
如果这个项目对你有帮助,请给它一个 ⭐️ Star!