modelscope.cn

case-retrieval

案例检索 Skill — 面向法律从业?

Installation

$ npx skills add https://modelscope.cn

Also in this package

Other skills from modelscope.cn · top by installs.

npx skills add https://modelscope.cn

Browse all from modelscope.cn

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0.5
More metadata
version
1.0.5

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 14,409 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

案例检索 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 YOURAPIKEY 响应结构{success, code, msg, body: {data:[...], totalCount, totalPage, queryId}}

配置步骤

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

``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 技能
  • 如用户需求同时涉及法规和案例,可先检索相关法规作为法律依据,再检索相关案例作为裁判参考