pengxiao-song / LaWGPT
- воскресенье, 21 мая 2023 г. в 00:00:01
🎉 Repo for LaWGPT, Chinese-Llama tuned with Chinese Legal knowledge. 基于中文法律知识的大语言模型
LaWGPT 是一系列基于中文法律知识的开源大语言模型。
该系列模型在通用中文基座模型(如 Chinese-LLaMA、ChatGLM 等)的基础上扩充法律领域专有词表、大规模中文法律语料预训练,增强了大模型在法律领域的基础语义理解能力。在此基础上,构造法律领域对话问答数据集、中国司法考试数据集进行指令精调,提升了模型对法律内容的理解和执行能力。
详细内容请参考技术报告。
本项目持续开展,法律领域数据集及系列模型后续相继开源,敬请关注。
Legal-Base-7B:法律基座模型,使用 50w 中文裁判文书数据二次预训练
LaWGPT-7B-beta1.0:法律对话模型,构造 30w 高质量法律问答数据集基于 Legal-Base-7B 指令精调
准备代码,创建环境
git clone git@github.com:pengxiao-song/LaWGPT.git
cd LaWGPT
conda activate lawgpt
pip install -r requirements.txt
合并模型权重(可选)
如果您想使用 LaWGPT-7B-alpha 模型,可跳过改步,直接进入步骤3.
如果您想使用 LaWGPT-7B-beta1.0 模型:
由于 LLaMA 和 Chinese-LLaMA 均未开源模型权重。根据相应开源许可,本项目只能发布 LoRA 权重,无法发布完整的模型权重,请各位谅解。
本项目给出合并方式,请各位获取原版权重后自行重构模型。
启动示例
启动本地服务:
conda activate lawgpt
cd LaWGPT
sh src/scripts/generate.sh
接入服务:
LaWGPT
├── assets # 项目静态资源
├── data # 语料及精调数据
├── tools # 数据清洗等工具
├── README.md
├── requirements.txt
└── src # 源码
├── finetune.py
├── generate.py
├── models # 基座模型及 Lora 权重
│ ├── base_models
│ └── lora_weights
├── outputs
├── scripts # 脚本文件
│ ├── finetune.sh # 指令微调
│ └── generate.sh # 服务创建
├── templates
└── utils
本项目基于中文裁判文书网公开法律文书数据、司法考试数据等数据集展开,详情参考中文法律数据汇总
LawGPT 系列模型的训练过程分为两个阶段:
src/data/example_instruction_train.json
构造二次训练数据集src/scripts/train_lora.sh
src/data/example_instruction_tune.json
构造指令微调数据集src/scripts/finetune.sh
8 张 Tesla V100-SXM2-32GB :二次训练阶段耗时约 24h / epoch,微调阶段耗时约 12h / epoch
由于计算资源、数据规模等因素限制,当前阶段 LawGPT 存在诸多局限性:
请诸君在使用前了解上述问题,以免造成误解和不必要的麻烦。
如下各位合作开展(按字母序排列):@cainiao、@njuyxw、@pengxiao-song
请各位严格遵守如下约定:
如有问题,请在 GitHub Issue 中提交。
协作者科研之余推进项目进展,由于人力有限难以实时反馈,给诸君带来不便,敬请谅解!
本项目基于如下开源项目展开,在此对相关项目和开发人员表示诚挚的感谢:
此外,本项目基于开放数据资源,详见 Awesome Chinese Legal Resources,一并表示感谢。
如果您觉得我们的工作对您有所帮助,请考虑引用该项目