当前位置:   article > 正文

【番外03】夫子明察法律大模型:阿里云部署法律大模型_阿里法律大模型

阿里法律大模型

一、夫子明察法律大模型

夫子•明察司法大模型是由山东大学、浪潮云、中国政法大学联合研发,基于海量中文无监督司法语料(包括各类判决文书、法律法规等)与有监督司法微调数据(包括法律问答、类案检索)训练的中文司法大模型。该模型支持法条检索、案例分析、三段论推理判决以及司法对话等功能,旨在为用户提供全方位、高精准的法律咨询与解答服务。

项目地址:https://github.com/irlab-sdu/fuzi.mingcha

(1) 基于法条检索回复

夫子•明察大模型能够结合相关法条进行回复生成。对于用户的咨询,夫子•明察大模型基于生成式检索范式先初步引用相关法条,再检索外部知识库对所引法条进行校验与确认,最终结合这些法条进行问题分析与回复生成。这保证生成的回复能够基于与问题相关的法律依据,并根据这些依据提供深入的分析和建议,使回复具有高权威性、高可靠性与高可信性。

(2)基于案例检索回复

夫子•明察大模型能够基于历史相似案例对输入案情进行分析。大模型能够生成与用户提供的案情相似的案情描述及判决结果,通过检索外部数据库得到真实的历史案例,并将这些相似的历史案例的信息用于辅助生成判决。生成的判决参考相关案例的法律依据,从而更加合理。用户可以对照相似案例,从而更好地理解潜在的法律风险。

(3)三段论推理判决

司法三段论,是把三段论的逻辑推理应用于司法实践的一种思维方式和方法。类比于三段论的结构特征,司法三段论就是法官在司法过程中将法律规范作为大前提,以案件事实为小前提,最终得出判决结果的一种推导方法。针对具体案件,夫子•明察大模型系统能够自动分析案情,识别关键的事实和法律法规,生成一个逻辑严谨的三段论式判决预测。这个功能不仅提供了对案件可能结果的有力洞察,还有助于帮助用户更好地理解案件的法律依据和潜在风险。

二、阿里云交互式建模(DSW)

可参考本专栏的第一篇文章:【01】ChatGLM3-6B部署:利用阿里云部署ChatGLM3-6B模型 中的阿里云注册与创建实例。

【01】ChatGLM3-6B部署:利用阿里云部署ChatGLM3-6B模型-CSDN博客

本文创建的实例名称为:Fuzi_law_model;GPU规格为:ecs.gn6v-c8g1.2xlarge;选择的镜像为:modelscope:1.11.0-pytorch2.1.2tensorflow2.14.0-gpu-py310-cu121-ubuntu22.04;

三、源码克隆与依赖更新

(1) Singularity 环境镜像

本项目的数据库检索部分使用 PyLucene 实现,但 Pylucene 安装过程较为繁琐,该项目提供了 Pylucene 的 Singularity 环境镜像,所以首先安装Singularity 环境镜像。

(a)由于singularity是用GO写的,所以需要先安装GO语言(阿里云可直接通过apt-get安装)

  1. sudo apt update
  2. sudo apt install golang
  3. go version

检查go是否安装成功:

(b)安装 Singularity 3.8.0版本

首先选定版本,而后下载相应的依赖和安装包,并解压缩。

  1. export VERSION=3.8.0
  2. wget https://github.com/hpcng/singularity/releases/download/v${VERSION}/singularity-${VERSION}.tar.gz

而后进入 Singularity 3.8.0文件,对其进行编译。

  1. sudo ./mconfig --prefix=/mnt/workspace/singularity-3.8.0 && \
  2. sudo make -C ./builddir && \
  3. sudo make -C ./builddir install
  4. #等待一小会儿后,编译完毕
  5. #将装好的singularity添加到PATH中(~/.bashrc)
  6. export PATH=/mnt/workspace/singularity-3.8.0/bin:$PATH
  7. source ~/.bashrc
  8. singularity --version

 !!!注意,在编译过程中可能会有如下的报错:(真的是比较坑)

  1. GEN GO DEP /singularity/builddir/starter.d
  2. go: github.com/AdamKorcz/go-fuzz-headers@v0.0.0-20210319161527-f761c2329661: Get "https://proxy.golang.org/github.com/%21adam%21korcz/go-fuzz-headers/@v/v0.0.0-20210319161527-f761c2329661.mod": dial tcp 216.58.200.241:443: i/o timeout

 这里是proxy.golang.org被墙了,需要把mlocal/frags/go_common_opts.mk文件里的GOPROXY这条设置进行修改,改成GOPROXY := https://goproxy.io,direct。如果还不行再把shell环境变量也改下export GOPROXY=https://goproxy.io,direct。最后,如果输入singularity,可以得到如下信息,说明singularity3.8.0安装成功了。此处可参考这篇博客,感谢Docker镜像转Singularity镜像的全过程_docker转singularity-CSDN博客文章浏览阅读4.1k次,点赞3次,收藏7次。原本Docker镜像挺好用的,但是最近做项目需要用到超算的集群,Docker无法在上面用,需要将Docker镜像转为singularity镜像这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流._docker转singularityhttps://blog.csdn.net/weixin_39505820/article/details/122582164

(c)夫子明察模型singularity的下载

夫子明察模型singularity可通过百度网盘获取与下载:pylucene_singularity.sif_免费高速下载|百度网盘-分享无限制 (baidu.com) 提取码:jhhl;

下载之后通过Notebook进行文件上传。

(2)夫子明察模型源码克隆

git clone https://github.com/irlab-sdu/fuzi.mingcha.git

(3)模型依赖的获取与安装

  1. cd fuzi.mingcha/src
  2. pip install -r requirements.txt

在阿里云下载与安装依赖想较于本地服务器更加快捷、稳定。

安装依赖成功后,便基本完成了模型的环境配置。

(4)预训练模型上传与安装

夫子明察的预训练模型文件可通过百度网盘进行下载(提取码为:ygm1)。

fuzi-mingcha_免费高速下载|百度网盘-分享无限制 (baidu.com)icon-default.png?t=N7T8https://pan.baidu.com/s/1kEDpBKTj9jX7k1NNhOtEIQ#list/path=%2F下载之后通过Notebook进行文件上传。文件较大,需耐心等待上传完成。

四、检索模块部署

该项目的检索模块使用 pylucene 进行构建,分为task1 的数据库 (法律法规数据集) 与task2 的数据库 (案例判决数据集) 。二者的部署方式如下:

  1. singularity exec -B "/mnt/workspace/fuzi.mingcha/src/pylucene_task1":/mnt "/mnt/workspace/pylucene_singularity.sif" python /mnt/api.py --port "1000"
  2. singularity exec -B "/mnt/workspace/fuzi.mingcha/src/pylucene_task2":/mnt "/mnt/workspace/pylucene_singularity.sif" python /mnt/api.py --port "1001"

五、命令行 Demo启动大模型

运行src下的 cli_demo.py文件来启动命令行demo。使用第四部分项目设置中的,法条检索对应部署的 pylucene 地址与类案检索对应部署的 pylucene 地址替换对应位置的地址。

python cli_demo.py --url_lucene_task1 "法条检索对应部署的 pylucene 地址"  --url_lucene_task2 "类案检索对应部署的 pylucene 地址"

  六、小结

使用阿里云来部署基于ChatGLM3-6B的夫子•明察司法大模型,相比于本机部署或线下服务器部署,在Python 环境配置、依赖安装等方面具有较大优势。如果文章对你有帮助,欢迎一键三连 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/783287
推荐阅读
相关标签