论文链接:https://arxiv.org/abs/2306.16092
代码链接:https://github.com/PKU-YuanGroup/ChatLaw?tab=readme-ov-file
本次解读的论文是北京大学袁粒课题组发表的《Chatlaw: A Multi-Agent Collaborative Legal Assistant with Knowledge Graph Enhanced Mixture-of-Experts Large Language Model》
前言
袁粒老师博士毕业于新加坡南洋理工大学,指导老师有颜水成(前昆仑万维首席科学家)、冯佳时(现字节豆包大模型视觉基础研究团队负责人),大模型人脉、资源非常不错。不仅如此,也是开源项目opensora的发起者。
贡献
- 高质量数据,包括四百万问答、案件分类、法规预测、文书起草等任务数据,并且构建知识图谱。
- MoE结构的LLM,基于InternLM模型的MoE架构
- 基于多智能体的法律咨询标准操作流程(SOP),Legal Assistant不断地和用户交互,明确用户问题;Legal Researcher利用RAG技术,查询最相关的外部知识;Lawyer用于提供咨询建议;Legal Editor用于生成咨询文书。
高质量数据
首先从多个来源中采集数据;其次借助自动化工具对数据去重和去噪,构成QA对数据;再次请法律方向的学生进行案件分类、请法律专家进行实体关系抽取,构建法律知识图谱及多任务数据。
数据集具备如下特性:
-
量级约400万
-
数据包含10个大类,44个小类
-
数据集囊括问答、案件分类、法规预测、文书起草等任务数据
MoE结构的LLM
模型结构
chatlaw有v1和v2版本,v1基于llama微调,v2基于InternLM的MoE架构模型微调(本文是v2的工作)
效果
在两个数据集上进行评测,第一个是LawBench数据集,第二个是China’s Unified Qualification Exam for Legal Professionals数据集。
-
LawBench数据集综合指标
-
Lawbench数据集多维度指标
-
China’s Unified Qualification Exam for Legal Professionals数据集综合指标
整体看下来,确实取得了sota的效果,但领先幅度并不大。例如LawBench数据集上,Chatlaw综合评分60.08,GPT-4综合评分52.35,人家GPT-4还没有在法律数据下精调。
基于多智能体的法律咨询标准操作流程(SOP)
Chatlaw利用多智能体,来模拟真实法律咨询的标准操作流程(Standard Operation Procedure, SOP)。本工作将法律咨询分为四个子流程,分别是Legal Assistant, Legal Researcher, Lawyer, and Legal Editor。
Legal Assistant
该步骤比较有启发性。类似于真实的法律咨询场景,律师会不断和用户交流,以获得精确的信息。根本原因在于用户难以将问题完整、准确的提炼出来,问不准,自然也答不准。
Legal Assistant的完整流程是:
- 用户提出问题
- 在建好的知识图谱上,对用户问题进行实体链接,获得对应的实体集合
- 由于问题不够精确,需要基于已有的实体集合,向用户提问,一方面扩展实体范围,一方面过滤噪声实体。
- 最终得到完整的法律咨询子图
Legal Researcher
调用外部搜索工具,保证知识的实时性,流程有:
- 将法律咨询子图构建成关键词pair
- 基于关键词pair,调用搜索系统,获取相关的互联网和本地知识
- 采用大模型进行检索内容的相关性排序
- 利用critic模型进行数据的审核、过滤
- 得到chatlaw回答的补充知识
Lawyer
基于用户问题、补充知识,生成法律咨询建议。
Legal Editor
基于用户问题、补充知识、模板,生成法律咨询文书。
上述流程的案例如下:
最终主观评测
将最终系统和GPT-4, GPT-3.5, Baichuan2, ChatGLM2, InternLM2, Qwen, and Fuzi进行实际法律咨询主观评测,效果如下:
-
从Completeness、Correctness、Guidance、Authority四个维度来看,Chatlaw具备优势,但优势不明显。
-
从两两模型对战的胜负率来看,Chatlaw具备优势,但优势不明显。
总结
Chatlaw的整体流程非常复杂,需要构建图谱,多智能体协同。以图谱来说,知识图谱的构建成本很高,而且难以保证知识的实时性。然而,高成本却没有带来显著的性能提升,比较遗憾。但Chatlaw提出一种和用户交流、反馈的机制,非常具有启发性。在实际场景,用户很难准确地提出问题,而和用户不断地交互,就能有效地明确用户的意图,保证回答的准确性。