目录
目录README.md

基于 ModelScope 的大语言模型的轻量级智慧法律系统

项目介绍

本项目利用 ModelScope 平台上的大语言模型,开发了一个轻量级的智慧法律系统。该系统旨在提供专业、高效的法律咨询服务,通过自然语言处理技术,使法律服务更加普及和便捷。

团队信息

  • 参赛队名:open大模型队
  • 队长:刘云
  • 联系方式:17303434408
  • 组员:张友晖、巫文良
  • 指导老师:刘寿强
  • 参赛单位:华南师范大学人工智能学院
  • 项目链接点击查看
  • ModelScope创空间链接点击查看
  • 创空间Demo演示链接点击查看

项目目标

  • 准备好法律文书、裁判条文等数据集
  • 使用数据集训练模型,并进行人工评估
  • 使用 web-ui 完成上述流程

技术亮点

  • 模型选择:Qwen-2 大模型(通义千问2.0)
  • 微调技术:LoRA(低秩自适应)微调
  • 法律语言处理:专门针对法律语言的复杂性和专业性进行优化
  • 界面化操作:通过 web-ui 实现模型训练、部署和调用的全流程操作

环境要求

安装指南

本次模型训练使用魔搭notebook环境。提供A10(24G)算力,作为本项目的训练环境。

# 进入环境后安装
git clone https://oauth2:nU7ByL4oN5zbDqo4Uy2h@www.modelscope.cn/wwl4420/ModelscopeLawLLM.git

数据

这里我们使用的数据集是(Skepsun/lawyer_llama_data)。 数据集包含两个子集: 其一是为引入法律推理能力让模型具备像法律专业人员一样推理和分析复杂法律问题的能力。侧重于训练模型进行法律分析,理解法律条文的内在逻辑,能够根据不同的情境进行推理,给出具有法律依据的解释或结论。 其二增强了模型利用外部法律知识的能力可以帮助模型更好地访问和应用大量的外部法律知识,包括法律条文、案例、法规等。这有助于模型在回答问题时基于更广泛的背景信息,提高其对复杂问题的回答准确性和全面性。数据集的输入输出如下:

{
"id": “judgement_predit-1”,
"input":“基于下列案件,推测可能的判决结果。  
经审理查明,2015年6月21日15时许,被告人白某某在大东区小河沿公交车站乘坐被害人张某某驾驶的133路公交车,当车辆行驶至沈阳市大东区东陵西路26号附近时,被告人白某某因未能下车而与司机张某某发生争执,并在该公交车行驶中用手拉拽档杆,被证人韩某某拉开后,被告人白某某又用手拉拽司机张某某的右胳膊,导致该车失控撞向右侧马路边停放的轿车和一个路灯杆,路灯杆折断后将福锅记炖品店的牌匾砸坏。后经被害人张某某报警,公安人员赶至现场将被告人白某某传唤到案。经鉴定,公交车受损价值人民币5,189.9元,轿车受损价值人民币1,449.57元,路灯杆受损价值人民币2,927.15元,福锅记饭店牌匾受损价值人民币9,776元,本案损失价值共计人民币19,342.6元。上述事实,被告人白某某在庭审中亦无异议,被害人张某某、朱某某、詹某某陈述,证人韩某某的证言,现场勘察笔录,视听资料,鉴定结论书,被告人白某某的供述与辩解等证据证实,足以认定。”,
"output": "根据《刑法》第一百一十四条的规定,被告人白某某以危险方法危害公共安全,尚未造成严重后果。根据案件事实,被告人白某某在公交车上与司机发生争执,并用手拉拽档杆和司机的胳膊,导致公交车失控撞向停放的轿车和路灯杆,最终造成公交车、轿车、路灯杆以及福锅记饭店牌匾的损坏。根据鉴定结果,本案损失共计人民币19,342.6元。  
综上所述,根据《刑法》第一百一十四条的规定,被告人白某某的行为构成以危险方法危害公共安全罪。根据该罪的刑罚幅度,可判处三年以上十年以下有期徒刑。  
需要注意的是,以上仅为根据提供的案件事实和相关法律条文进行的推理,最终的判决结果还需根据法庭审理的具体情况和法官的判断做出。"
}

训练

为了节省显存,我们选用了LoRA而非全参训练。我们直接给出可用于训练的脚本:


CUDA_VISIBLE_DEVICES=0 \
swift sft \
  --model_type qwen2-7b-instruct \
  --sft_type lora \
  --output_dir output \
  --dataset lawyer_llama_zh \
  --num_train_epochs 1 \
  --max_length 1024 \
  --lora_rank 8 \
  --lora_alpha 32 \
  --lora_dropout_p 0.05 \
  --lora_target_modules ALL \
  --gradient_checkpointing true \
  --batch_size 1 \
  --learning_rate 5e-5 \
  --weight_decay 0.1 \
  --gradient_accumulation_steps 16 \
  --max_grad_norm 1.0 \
  --warmup_ratio 0.03 \
  --eval_steps 100 \
  --save_steps 100 \
  --save_total_limit 2 \
  --logging_steps 10

推理和评估

对训练之后的checkpoint(检查点文件)进行推理,需要使用下面的命令:

swift infer --ckpt_dir ModelscopeLawLLM

GPU 使用概况:

  • GPU 型号:NVIDIA A10
  • 驱动版本:470.103.01
  • CUDA 版本:12.1
  • 总显存:24,258 MiB(24GB)
  • 当前使用显存:16,804 MiB(大约 16.8GB)
  • 显存剩余量:24,258 MiB - 16,804 MiB = 7,454 MiB(大约 7.5GB)

enter image description here

为观察最终的测试效果我们看看训练的效果如何。我们将通过人工推理来观察模型面对不同方向法律问题时,模型的回答是否能够达到预期的效果。

  • 知识产权法问题咨询:

enter image description here

  • 合同法问题咨询:

enter image description here

  • 劳动法问题咨询:

enter image description here

创空间部署:

针对不同应用场景下微调多个不同功能的大模型在创空间中部署应用

成果演示:

  1. agent个性化设置
    • 用户:你好,我需要一些关于劳动法的咨询。
![87d2837e884c37515f5aeff3fbcfc55.png](https://s2.loli.net/2024/09/28/px38yroOVmdJGW5.png)

-   AI-Agent具有专业知识精准、用户导向明确、交互风格正式、功能全面、易于维护更新、辅助决策有效、隐私保护周密和便捷性高等优点,是一个高效可靠的法律咨询工具。
  1. 问题理解能力测试

    • 用户:我在公司工作了5年,现在被解雇了,我能得到什么补偿? e78e7feca65c2c3458c7c4b532bf64d.png
    • AI-Agent能够有效理解用户问题并提取关键信息,如工作年限和解雇情况,显示出良好的信息提取和处理能力。
  2. 知识检索能力测试

    • 用户:请告诉我关于无固定期限劳动合同的相关法律规定。 bc211747d8ee4fcf6b129c6da3b2a38.png
    • AI-Agent在检索并准确提供相关法律条文方面的表现良好,能够详细列举无固定期限劳动合同的签订条件、解除与终止规定、经济补偿以及权利义务,显示出其在法律信息检索和解释方面的能力。然而,为了全面评估,还需观察AI在实际交互中是否能够针对用户的具体查询快速定位并准确引用相关法律条文。
  3. 法律知识应用测试

    • 用户:如果公司没有正当理由解雇我,我有哪些法律途径可以维权? 660794f26edc4798b23410ccf2453e0.png
    • AI-Agent正确地描述了内部沟通、书面确认、劳动监察投诉、调解、劳动仲裁、提起诉讼、法律援助和赔偿请求等法律途径。提到了关键的法律概念,如“经济补偿金”、“赔偿金”以及“恢复劳动关系”,这些都是《劳动合同法》中的术语。
  4. 逻辑推理与论证测试

    • 用户:如果我在公司受到了不公平对待,我应该如何收集证据? d7f651666158700487ec1be31097b22.png
    • AI-Agent在建议中遵循了逻辑顺序,首先建议进行书面记录,然后是保存通信记录和文件证据,这些都是基础且必要的步骤。在建议收集证人证言和录音录像时,提到了需要考虑法律允许的范围,这显示了AI在提供建议时考虑到了法律限制,这是逻辑推理的一部分。在提到医疗证明和外部反馈时,AI的逻辑是围绕证明不公平待遇的实际影响和尝试通过正式渠道解决问题的过程。在最后强调了遵守法律的重要性,这是逻辑推理的一部分,因为它确保了整个建议的可行性和合法性。
  5. 用户交互体验测试

    • 用户:关于收集证据,我不太明白你刚才说的,你能举个例子吗? bb0fe566cfa4adc5d250872d0cdd187.png
    • AI-Agent在澄清信息并提供帮助方面做得很好,以用户友好的方式解释了不同情景下的证据收集方法,有效地指导了用户。
  6. 多样性与包容性测试

    • 用户:我是一名外籍员工,我在中国的工作权益如何得到保障? b28331dec2c3870884547186f74a187.png
    • AI-Agent在提供信息时考虑到了外籍员工在中国工作的特殊情况,并给出了相应的权益保障信息。AI的回答涵盖了劳动合同签订、社会保险参与、工作与居留许可以及工资与福利等关键方面,这些都是外籍员工在中国工作时需要特别注意的。AI的回答是全面和相关的,能够帮助外籍员工了解并维护自己的合法权益。因此,AI在这方面的表现是符合用户特殊情况的,能够提供有针对性的帮助和信息。
关于

基于ModelSpore大语言模型的轻量级法律智能对话

905.0 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号