图文|Akon
一、一个刑事律师的日常困境
上周跟一个做刑事辩护的朋友聊天,他说了句让我印象很深的话:“我做刑辩十年了,最怕的不是案子难,是怕自己想漏了。”
他说的“想漏了”,指的是在做案件定性分析时,脑子里同时要考虑多个可能的罪名方向。比如一个经济犯罪案件,到底是合同诈骗还是诈骗?是职务侵占还是贪污?是非法吸收公众存款还是集资诈骗?每个方向对应不同的构成要件、量刑标准和辩护策略。漏掉一个可能性,可能就错过了一个有效的辩护角度。
这不是他一个人的困境。刑法452条,司法解释数以千计,任何律师都不可能把所有罪名和构成要件时刻装在脑子里。这就是为什么类案检索和法律数据库对刑事律师格外重要。
但问题来了:传统的类案检索和法律数据库是“被动”工具 - 你得知道自己想查什么,才能搜到结果。而很多时候,刑事律师面对一个案情复杂的案子,恰恰是“不太确定到底该往哪个方向查”。
这就是liuhuanyong/CrimeKgAssitant这个项目试图解决的问题:让机器帮你做案件定性的初步判断。
二、这个工具的三个核心能力
CrimeKgAssitant由中国科学院软件研究所的刘焕勇开发,在GitHub上获得了1581个Star。它不是那种“看起来很厉害但不知道能干嘛”的学术Demo - 它有完整的训练数据、可运行的代码、以及在实际案例上验证过的准确率。
能力一:罪名预测 - 输入案情,输出最可能的罪名
这是最核心的功能。把一段案情描述输入系统,它预测最可能适用的罪名。
技术实现:基于288万条标注了罪名的裁判文书训练数据,用SVM(支持向量机)模型做文本分类。202种常见罪名的预测准确率达到92.03%。
怎么理解这个准确率?意思是:系统每做100次罪名预测,大约92次预测结果中包含了正确的罪名(Top-N预测)。剩下8次可能是案情描述不够规范、或者涉及的罪名比较罕见、或者案件跨越多个罪名类别。
举个实际例子:一份案情描述是“被告人利用职务便利,将本单位财物非法占为己有,数额较大”。系统会给出预测结果:职务侵占罪(第271条)排在第一位,贪污罪(第382条)排在第二位。对于律师来说,这个结果意味着 - 先按职务侵占的方向查,同时留意是否涉及国家工作人员身份(这会导向贪污罪)。
能力二:法律知识图谱 - 856项罪名的结构化解构
项目构建了一个以罪名节点为核心的知识图谱,覆盖856项罪名。每个罪名节点关联了:
-
构成要件要素(主体、客体、主观方面、客观方面) -
法定刑幅度 -
相关联罪名(容易混淆的罪名) -
典型裁判规则
知识图谱的价值在于结构化。传统方式查一个罪名,你得翻法条、查司法解释、看典型案例 - 信息分散在不同来源。知识图谱把这些信息整合到一个结构化的网络里,你可以快速看到:这个罪名涉及哪些构成要素、容易跟哪些罪名混淆、量刑大致在什么区间。
对于刑事律师来说,这相当于一个“罪名关系导航图”。尤其在处理金融犯罪、网络犯罪等涉及多项罪名的复杂案件时,能帮你快速厘清各罪名之间的关系和界限。
能力三:法务问题分类 - 自动归类13类法律咨询
系统能自动将法律咨询问题分类为13个类别:婚姻家庭、劳动纠纷、交通事故、债权债务、刑事辩护、合同纠纷、房产纠纷、侵权、公司法、医疗纠纷、拆迁安置、行政诉讼、建设工程。
分类准确率95.9%(测试集上)。这个功能对法律援助机构、法律咨询平台、律所的前端收案特别实用 - 自动把当事人的问题归到正确类别,减少人工分拣的时间。
系统还有一个基于20万条法务问答的FAQ问答功能,但对于专业律师来说,这个功能的深度有限 - 更适合做初步的法律信息查询,而不是复杂的法律分析。
三、罪名预测到底有多准 - 一个诚实的评估
92.03%这个数字看起来很漂亮,但有几个重要的限定要说明:
限定一:准确率不等于“每次都给出唯一正确答案”。 实际使用中,系统输出的是Top-N(排名前几的候选罪名),而不是一个确定答案。这意味着你拿到的是一个“最可能的几个选项”,而不是“就是这个罪名”。
限定二:准确率受案情描述质量影响很大。 训练数据来自裁判文书的事实认定部分,这些文本结构规范、要素完整。但实际办案中,你拿到的可能是当事人零散的口头陈述、不完整的证据材料片段。输入质量差,预测结果就差。
限定三:罕见罪名的预测效果不如常见罪名。 288万条训练数据分布不均匀 - 盗窃、诈骗、交通肇事等高频罪名的训练样本多,预测效果好;而罕见罪名的样本少,预测效果就没那么可靠。
限定四:这个模型是2018年训练的。 用的是CAIL2018数据集。此后刑法有过修订(比如2020年刑法修正案十一新增了若干罪名),模型覆盖的罪名范围需要更新。
所以正确的心态是:把这个工具当作一个“方向提示器”,而不是“最终判断者”。 它帮你在面对一个复杂案情时快速缩小可能的罪名范围,但最终的罪名认定仍然需要律师的专业判断。
四、技术揭秘:它怎么做到的(用律师能懂的话说)
法律人不需要懂SVM和CNN的具体原理,但了解一下这套系统的工作方式,能帮你更好地判断它的输出是否可信。
训练阶段:系统“读”了288万份标注好罪名的裁判文书。每读一份,它就建立一条“案情描述→罪名”的对应关系。读得多了,它就学会了某些关键词组合与特定罪名之间的统计关联。比如出现“利用职务便利”+“本单位财物”+“非法占为己有”,跟“职务侵占罪”的统计关联就很强。
预测阶段:你输入一段案情描述,系统把它转换成一个数学向量(一串数字,代表这段文本的语义特征),然后跟训练阶段学到的288万条“文本→罪名”模式做匹配,找出最相似的几个。
知识图谱构建:系统从法条、司法解释、裁判文书中提取罪名的结构信息,构建了一个以罪名节点为核心的知识网络。这个网络不是靠人工标注的 - 是用NLP(自然语言处理)技术从大量法律文本中自动提取的。
这个过程听起来复杂,但运行起来很简单 - 在命令行里输入python crime_classify.py,输入案情描述,就能拿到预测结果。
五、实务场景:这个工具适合谁、怎么用
场景一:刑事辩护律师 - 案件定性辅助
最直接的适用场景。拿到一个复杂案件,先跑一遍罪名预测,看系统给出的Top-N候选罪名是否覆盖了你想到的所有可能性。如果系统提到了一个你没想过的罪名方向,就去查一下这个罪名的构成要件,判断是否构成有效辩护角度。
建议用法:不要只用最终结果,也看一下Top-N中排名靠后但依然相关的罪名。有时候“第四名”恰好是你没想到的方向。
场景二:公司法务 - 内部调查案件定性
公司内部调查中(比如员工涉嫌职务侵占、商业贿赂),法务需要快速判断行为性质,决定是按内部纪律处理还是移送司法机关。可以用罪名预测辅助定性分析:把调查发现的事实整理成规范文本输入系统,看预测结果是否符合内部调查的初步判断。
注意:内部调查的事实往往不完整,预测结果只能作参考。移送司法机关的决定应基于完整证据和律师正式法律意见。
场景三:法律援助/法律咨询平台 - 智能分流
13类问题分类功能很适合法律援助机构或在线法律咨询平台。当事人提交的咨询自动归类到正确领域(劳动、婚姻、刑事、合同等),分配给对应专业的律师。95.9%的分类准确率意味着只有约4%的问题会被错误归类 - 这在人工分拣场景下也是可以接受的误差。
场景四:法学教育 - 案例教学辅助
法学院案例教学中,可以让学生先用工具预测罪名,再对照实际判决结果,讨论预测为什么准或不准、构成要件的边界在哪里。这是一个很有教学价值的过程 - 学生对罪名构成要件的理解会因此更扎实。
六、安装与使用:极简三步
CrimeKgAssitant的安装比其他法律AI项目简单很多 - 它不需要GPU、不需要大模型、不需要Docker。
系统会提示你输入案情描述,回车后输出预测结果。就这么简单。
数据文件说明:
- data/kg_crime.json - 856个罪名的知识库
- data/qa_corpus.json - 20万条法务问答数据
-
训练好的模型文件在 model/目录下
如果只是想体验罪名预测功能,不需要额外下载数据 - 项目自带了预训练模型。
七、这个项目的更大意义
CrimeKgAssitant发布于2018年,距今已经8年了。以今天的标准看,它的模型架构(SVM+CNN)略显陈旧 - 现在的法律大模型动辄几十亿参数,SVM这种传统机器学习方法看起来有点“古早”。
但这个项目的价值不在技术前沿性,在可解释性和确定性。
SVM模型虽然简单,但它预测的结果是可追溯的 - 你知道系统是基于哪些关键词和统计规律做出的判断。而大模型输出一个罪名预测,你很难知道它到底是因为真正理解了构成要件,还是因为训练数据里的统计巧合。
对法律场景来说,可解释性有时候比准确率更重要。
另外,这个项目证明了:即使没有大模型和海量GPU,仅靠传统的NLP技术也能在法律领域做出有价值的应用。 856项罪名的知识图谱、288万条训练数据、92%的预测准确率 - 这些都不是靠堆算力堆出来的,而是靠对法律文本特征的深入理解和精心的特征工程。
如果你是一个对法律AI感兴趣但没有深度学习背景的法律人,CrimeKgAssitant是一个很好的入门项目 - 代码量不大、逻辑清晰、运行门槛低,你可以从中学到法律NLP的基本思路。
📚 参考文献
-
liuhuanyong/CrimeKgAssitant — 罪名预测+法律知识图谱+法务问答(1581 Stars) -
CAIL2018 中国司法人工智能挑战赛数据集 -
刘焕勇 - 基于法律罪行知识图谱的智能预判与客服问答
⚠️ 免责声明:本文内容仅为提供信息之目的,不构成法律建议。文中提及的罪名预测工具的准确率数据来源于项目公开的技术文档,不代表在任何具体案件中能达到同样的准确率。罪名预测结果仅供参考,不能替代律师的专业法律判断。本文作者及平台不对因依赖本文内容而导致的任何损失承担责任。
📚 往期回顾
🌐 平台合规
向下滑动查看所有内容
🤖 AI / 直播 / 短视频
向下滑动查看所有内容
📢 广告营销
向下滑动查看所有内容
🔐 数据合规
向下滑动查看所有内容
⚖️ 民商事纠纷
向下滑动查看所有内容
📝 律师实务
向下滑动查看所有内容
📝 法律AI工具
向下滑动查看所有内容

