Back to skills
extension
Category: Development & EngineeringNo API key required

中国裁判文书检索

案例检索 Skill — 面向法律从业者及普通用户的裁判文书智能检索工具。当用户需要检索裁判案例、查找类案裁判规则、按案由/法院/时间筛选案例、或上传文件进行案例匹配时使用。触发词包括:"查一下XX的案例"、"找关于XX的判决"、"XX法院的判例"、"类案检索"、"有没有类似的案例"、"XX案由的裁判规则"等。

personAuthor: ZhoujianpinghubModelScope

案例检索 Skill

一、核心能力

  1. 关键词检索:支持通过 keyword 传入明确案由、法院、案号、文书类型、时间等检索短语。
  2. 语义检索:支持通过 --semantic 传入案件事实、争议事实、自然语言法律场景或案件材料摘要,与关键词检索二选一,用于查找相似案例。
  3. 结果格式化:基于接口返回的案号、案由、法院、审理程序、文书类型、裁判日期、公布类型、正文等字段生成可读结果
  4. 结果后处理:在检索结果基础上进行摘要提炼、关键信息提取、裁判要点归纳和类案对比

二、强制执行约束

  1. 必须调用脚本检索:只使用 scripts/search_cases.py 发起检索,不得自行编写 python -curllibrequestscurl 或其他 HTTP 请求直接访问 API。
  2. 不得读取脚本后绕过脚本:脚本已经处理鉴权、请求头、分页和完整正文输出;即使需要确认字段,也不得改用内联代码请求 API。
  3. 单次检索只传一个查询语义keyword--semantic 二选一;不得把多个案由、法院、法规、主体关系和争议焦点堆在同一个参数里。
  4. 默认小结果集:首次检索使用 --size 3,必要时最多使用 --size 5;只有用户明确要求批量结果时才提高条数,脚本会把 --size 限制在 10 以内。
  5. 默认返回完整原文:脚本优先输出接口 content 字段的完整文本,不做字符数截断;不得添加抑制正文输出的参数。
  6. 筛选信息写入 query:当前脚本只支持 keyword--semantic、分页和排序,不支持 --court--case-no--cause--from 等结构化筛选参数。

三、触发条件

主动触发

  • 关键词检索:"查一下借款合同纠纷的案例"
  • 案由检索:"找民间借贷纠纷的判决书"
  • 法院检索:"深圳中级法院关于小产权房的判决"
  • 类案检索:"有没有和这个案子类似的案例"
  • 时间筛选:"2023年以后的劳动争议判决"
  • 文书类型:"房屋买卖合同纠纷的判决书"
  • 法官检索:"某法官的判决案例"
  • 长文本匹配:用户提供了案件材料,要求检索类似案例

不触发场景

  • 法规条文查询(应使用 legal-retrieval 技能)
  • 法律意见书、合同审查等深度分析任务
  • 寒暄或无关内容

四、API 配置

本技能通过得理(法律)开放平台 API 进行案例检索。

API 端点https://platform.delilegal.com/api/v1/generice/case/list 鉴权方式Authorization: Bearer YOUR_API_KEY 响应结构{success, code, msg, body: {data:[...], totalCount, totalPage, queryId}}

配置步骤

  1. 前往 https://open.delilegal.com/personal/keys 注册/登录
  2. 创建应用并获取 API Key
  3. 将 API Key 填入技能目录下的 config.json 文件:
    {
      "apikey": "你的API Key"
    }
    

⚠️ 未配置 API Key 时,不得执行检索,必须先提示用户: "config.json 中的 apikey 尚未配置。请前往 https://open.delilegal.com/personal/keys 创建 API Key,并填入技能目录下的 config.json 文件中。"

五、工作流程

Step 1:意图识别与要素抽取

| 意图类型 | 判定标准 | 需抽取要素 | |---------|---------|-----------| | 关键词检索 | 用户明确指定案由、案号、法院、时间或文书类型 | 案由、案号、法院、年份、文书类型 | | 案由检索 | 明确指定案由 | 案由名称(如"民间借贷纠纷") | | 法院检索 | 指定法院名称或层级 | 法院名称、法院层级 | | 语义检索/类案匹配 | 提供案件材料、事实经过或自然语言法律场景要求找相似案例 | 案件事实要素(当事人、法律关系、争议焦点等) | | 组合筛选 | 多个维度同时限定 | 关键词+时间+法院+案由+文书类型等 |

处理规则

  • 明确案号、案由、法院、年份、文书类型时使用 keyword
  • 用户描述事实经过、业务场景、争议事实或“不知道查什么案由”时使用 --semantic
  • 识别时间限定(如"近三年"、"2023年以后")
  • 识别法院限定(如"深圳中院"、"最高法院")
  • 识别文书类型限定(如"只要判决书"、"不要裁定书")
  • 识别案由限定(如"劳动争议"、"买卖合同纠纷")
  • 多个独立检索意图必须拆成多次检索;不要将多个案由、法院或事实标签拼成一条长 query
  • 信息不足时进入澄清模式

Step 2:选择关键词检索或语义检索

精准案号、明确案由、法院限定、时间限定、文书类型限定时使用 keyword。用户用完整自然语言描述案件事实、争议经过、合同履行过程、侵权过程、劳动关系过程或上传材料时,使用 --semantic,不要拆成多条关键词组合反复检索。

| 场景 | 推荐调用 | 避免调用 | |------|---------|---------| | 案由/争议焦点 | python scripts/search_cases.py "民间借贷 利率上限" --size 3 | python scripts/search_cases.py "借款合同 民间借贷 利息 违约金 担保 抵押 保证" | | 法院限定 | python scripts/search_cases.py "深圳中院 小产权房 买卖合同 判决书" --size 3 | 使用不存在的 --court 参数 | | 时间限定 | python scripts/search_cases.py "2023 劳动争议 违法解除 判决书" --size 3 --sort-field time | 使用不存在的 --from--to 参数 | | 案号精准 | python scripts/search_cases.py "(2023)粤03民终12345号" --size 3 | 使用不存在的 --case-no 参数 | | 语义检索/类案匹配 | python scripts/search_cases.py --semantic "借款金额120万元,约定年利率10%,到期未还,争议焦点为利息保护上限..." --size 3 | 拆成 借款合同 民间借贷 利息 违约金 担保 抵押 保证 等多次关键词检索 |

keyword 建议控制在 2-8 个核心词,保留最能区分结果的法律关系、争议焦点、法院或年份。--semantic 建议传入 100-800 字事实摘要或自然语言法律场景,包含法律关系、关键行为、请求事项、争议焦点,不传无关附件全文。

如果首次无结果,优先保留用户语义并改写 --semantic;仍不足时再换成标准案由/法律概念或更泛化的关键词。

Step 3:调用 API 检索

使用技能目录下的检索脚本调用得理法律开放平台 API:

cd <skill_dir>
python scripts/search_cases.py "<检索关键词>" --size 3
# 或
python scripts/search_cases.py --semantic "<案件事实或自然语言法律场景>" --size 3

如果当前运行环境使用 python3,可将命令中的 python 替换为 python3。不得使用内联 Python 代码直接请求接口。

命令示例

python scripts/search_cases.py "民间借贷 利率上限" --size 3
python scripts/search_cases.py "深圳中院 小产权房 买卖合同 判决书" --size 3
python scripts/search_cases.py "(2023)粤03民终12345号" --size 3
python scripts/search_cases.py "劳动合同解除" --size 3 --sort-field time --sort-order desc
python scripts/search_cases.py --semantic "劳动者主张公司违法解除劳动合同,争议焦点为解除理由是否成立及赔偿金计算..." --size 3

基础参数

| 参数 | 默认值 | 说明 | |------|--------|------| | keyword | 不使用 | 检索关键词(自然语言),与 --semantic 二选一 | | --semantic | 不使用 | 语义检索文本,用于案件事实、争议事实、自然语言法律场景或材料摘要 | | --page | 1 | 页码,翻页时传入 | | --size | 3 | 每页返回条数,首次检索建议 3,最多 10 | | --sort-field | correlation | 排序字段:correlation(相关性)/ time(时间) | | --sort-order | desc | 排序方向:desc(降序)/ asc(升序) |

API 请求结构(扁平结构,无 condition 嵌套):

{
    "pageNo": 1,
    "pageSize": 5,
    "sortField": "correlation",
    "sortOrder": "desc",
    "query": "民间借贷利率上限"
}

长文本语义检索请求结构

{
    "pageNo": 1,
    "pageSize": 5,
    "sortField": "correlation",
    "sortOrder": "desc",
    "query": "借款金额120万元,约定年利率10%,到期未还,争议焦点为利息保护上限",
    "semantic": true
}

语义检索模式:当用户提供案件材料、事实经过、争议事实或自然语言法律场景并要求查找类似案例时,使用 --semantic 参数传入保留语义关系的事实摘要。脚本会将该文本放入 API 的 query 字段,并同时设置 semantic: true;不要把整份材料全文直接传入脚本,也不要先拆成多个关键词组合。

降级规则:首次检索结果不足时,优先保留用户语义并改写 --semantic;仍不足时再换用更泛化的关键词,或在关键词中补充法院名等定向词再搜一次。

Step 4:结果后处理

| 处理项 | 处理规则 | |-------|---------| | 智能摘要 | 提取案件核心事实、争议焦点、裁判要点,不超过100字 | | 裁判规则归纳 | 从多个案例中归纳共性裁判规则 | | 关键词高亮 | 原文片段中加粗标记检索关键词 | | 关联推荐 | 基于案由关联,推荐2-3条相似案例 |

Step 5:格式化输出

脚本已内置格式化输出。根据检索场景,可参考/references/search-examples.md 中的模板做进一步加工呈现。

完整原文输出:默认直接复用脚本输出,不要展开 API 原始 JSON。若结果仍过长,优先降低 --size 或请用户缩小检索范围;不要再使用字符数截断参数处理正文。

翻页:用户说"下一页"/"再看一些"时,将 --page 递增并重新执行脚本。

注意:如果脚本执行报错提示 apikey 未配置,则直接告知用户:"config.json 中的 apikey 尚未配置。请前往 https://open.delilegal.com/personal/keys 创建 API Key,并填入技能目录下的 config.json 文件中。",不再执行后续检索任务。

六、输出模板

模板A:案例列表(基础检索)

共检索到 {结果数量} 条相关案例:

| 序号 | 案号 | 案由 | 审理法院 | 审理程序 | 文书类型 | 判决日期 |
|:---:|:---|:---|:---|:---|:---|:---|
| 1 | {案号} | {案由} | {法院} | {程序} | {类型} | {日期} |
| 2 | {案号} | {案由} | {法院} | {程序} | {类型} | {日期} |

💡 **提示**:点击序号可查看案例详情。

模板B:案例详情

📋 **{案号}**  【{案由}】

- **审理法院:** {法院名称}
- **审理程序:** {一审/二审/再审}
- **文书类型:** {判决书/裁定书/调解书}
- **判决日期:** {YYYY-MM-DD}
- **法官:** {法官姓名}

**当事人:**
- 原告:{原告信息}
- 被告:{被告信息}

**争议焦点:**
> {争议焦点概述}

**裁判要点:**
> {裁判要点归纳,关键词加粗}

**法院认为:**
> {法院裁判理由摘要}

模板C:类案对比(多个相似案例)

**类案对比主题**:{对比主题}

| 对比项 | 案例1: {案号A} | 案例2: {案号B} |
|:---|:---|:---|
| **审理法院** | {法院A} | {法院B} |
| **案由** | {案由A} | {案由B} |
| **核心事实** | {事实A} | {事实B} |
| **争议焦点** | {焦点A} | {焦点B} |
| **裁判结果** | {结果A} | {结果B} |
| **裁判规则** | {规则A} | {规则B} |

📌 **裁判规则总结**:{共性规则归纳}

模板D:裁判规则归纳(批量案例)

基于 {N} 条案例的裁判规则归纳:

**主题**:{检索主题}

**裁判规则:**

1. **{规则1标题}**
   - 规则内容:{具体裁判规则}
   - 代表案例:{案号1}({法院1})
   - 出现频率:{X}/{N} 案例支持此规则

2. **{规则2标题}**
   - 规则内容:{具体裁判规则}
   - 代表案例:{案号2}({法院2})
   - 出现频率:{X}/{N} 案例支持此规则

📌 **实务建议**:{基于裁判规则总结的实务操作建议}

模板E:无结果(No Result)

未找到符合"{用户原始Query}"的案例结果。

建议您尝试以下方式:
1. 🔍 更换检索关键词(如使用更通用的法律概念)
2. 📅 放宽判决日期范围
3. 🏛️ 扩大法院层级范围
4. 📝 简化案由描述
5. 📄 使用 `--semantic` 模式传入案件材料进行语义匹配

七、注意事项

数据来源限制

  • 裁判文书的公开性受法院公示范围限制,部分案件可能未公开
  • 检索结果仅涵盖已公开的裁判文书,不包括未公开或内部文书
  • 不同法院的文书公开标准和及时性存在差异

引用规范

  • 引用案例时必须标注完整案号、审理法院、判决日期
  • 不得仅凭案例检索结果即作出法律判断,需结合具体案情分析
  • 裁判文书存在被更正、撤销等可能,重要案件请核实最新状态

检索范围限制

  • 本 Skill 仅提供检索与呈现服务,不提供法律意见、个案分析
  • 对于涉及国家秘密、个人隐私、未成年人等依法不公开的案件,检索结果可能不完整

数据更新声明

  • 所有结果须附带提示语:"检索结果基于得理法律开放平台数据,裁判文书的公开性受法院公示范围限制,重要案件请以法院官方文书为准。"

与法规检索的分工

  • 法规条文查询 → 使用 legal-retrieval 技能
  • 裁判案例检索 → 使用本 case-retrieval 技能
  • 如用户需求同时涉及法规和案例,可先检索相关法规作为法律依据,再检索相关案例作为裁判参考