迄今为止,以ChatGPT为首的一系列大型语言模型给人们带来了极大的便利,例如:编辑可以借助大型语言模型的能力进行文案润色,程序员可以借助大型语言模型能力进行代码辅助生成;而在GPT-4等多模态模型出现后,很多人都变成了绘画大师,只需要输入一些文本描述,大型语言模型就可以生成对应的图片。
但是,大型语言模型距离真正落地还有一段艰难的路要走。目前大型语言模型在通用领域的效果还不错,但在一些特殊或垂直领域效果不是很理想。因此有不少研究者在领域数据上对通用大型语言模型采用继续预训练、指令微调、人类偏好对齐等手段,将通用大型语言模型领域化、垂直化、行业化,以在不丧失原有大型语言模型能力的基础上,进一步提高模型在特定领域的效果。我们往往将在某个领域具有较为优异效果的大型语言模型称为领域大型语言模型。例如:在医疗数据上进行进一步训练得到的大型语言模型,被称为医疗大型语言模型。目前,在很多领域都涌现出了领域大型语言模型,但主要集中在法律、医疗、金融、教育4个领域,因为这4个领域在自然语言处理发展的过程中受关注较多且具有较多的开源数据。
本节主要介绍这4个领域的中文大型语言模型,并从底座模型的选择、数据构造、训练方法等几个方面进行深入剖析。
法律是社会秩序的基石,是用来维护公平、保护权益、解决纠纷的重要手段。随着社会的发展,人们对法律的需求日益增长,如何更快速、精确和可靠地处理法律信息变得十分急迫。虽然大型语言模型的能力已经被广大群众认可,但是由于大型语言模型在预训练阶段是在广泛数据上进行训练的,需要记忆的知识内容也比较广泛,在法律领域虽然可以回答一定的问题,但效果不是十分理想,因此很多学者为了让大型语言模型在法律领域具有较好的交互,会在法律领域数据上进行预训练或微调,来进一步提高模型效果。我们通常称在法律领域进行特殊训练过的大型语言模型为法律大型语言模型。
法律大型语言模型可以成为律师、法官、法律研究者或普通人的工具,可以快速检索和分析大量的法律文件,以协助专业人员在法律咨询、决策制定方面更高效;也可以为个人提供广泛的法律知识和意识,让人们通过法律大型语言模型来了解更多的法律概念、权力和责任,以及如何在法律系统中行使自己的权力;还可以让那些无法负担高额法律费用的人降低法律研究和咨询的成本,保证了司法公平。
目前,中文开源法律大型语言模型主要包括LaWGPT模型、ChatLaw模型、LexiLaw模型、Lawyer LLaMA模型、智海-录问模型、HanFei模型、DISC-LawLLM模型等。
LaWGPT模型 是由Pengxiao Song等人研发的,模型基座采用LLaMA模型架构,并使用中文裁判文书网公开法律文书数据、司法考试数据等数据来对模型进行词表扩张和增量预训练工作,同时利用Self-Instruct等方法构建法律领域对话数据集并利用ChatGPT进行数据清洗,进一步获取高质量数据集对模型进行指令微调工作。LaWGPT系列模型共涉及4个模型,详细如表1-8所示。
表1-8 LaWGPT系列模型介绍
ChatLaw模型 是由北京大学提出的,主要由大型语言模型、关键词生成模型和向量匹配模型三个部分组成,如图1-12所示。而大型语言模型的基座采用LLaMA模型架构,并采用大量法律新闻、法律论坛、法条、司法解释、法律咨询、法考题、判决文书等原始文本构造对话数据集进行模型的指令微调。ChatLaw系统模型共涉及2个模型,详细如表1-9所示。
图1-12 ChatLaw模型流程图
表1-9 ChatLaw系列模型介绍
其中,ChatLaw-13B模型在中文各项评测集上表现较好,但是对于逻辑复杂的法律问答效果不佳。ChatLaw-33B模型由于参数量更大,逻辑推理能力有大幅提升,但底座模型缺少中文数据集训练,因此对于中文提问,模型可能生成英文内容。
Lawyer LLaMA模型 是由北京大学提出的,模型基座采用LLaMA模型架构,并在大规模法律语料上进行模型继续预训练,再利用ChatGPT收集的法考题目分析数据及法律咨询对话数据进行模型指令微调。其中法考解题数据共7000条、法律咨询数据共1.45万条。目前开源的lawyer-llama-13b-beta1.0模型是以Chinese-LLaMA-13B模型为底座,未经过法律语料继续预训练,使用通用和法律指令数据进行指令微调得来。
LexiLaw模型 是由Haitao Li等人研发的,模型基座采用ChatGLM-6B模型架构,在模型指令微调过程中不仅采用了法律领域数据,还采用了通用领域数据。其中,通用领域数据主要来自于BELLE项目,法律领域数据包括:LawGPT_zh模型中5.2万条单轮问答数据和9.2万条带有法律依据的情景问答、Lawyer LLaMA模型中法考数据和法律指令微调数据、2万条高质量华律网问答数据、3.6万条百度知道中的法律问答数据。此外,为了增加模型对法律条款的解释与理解能力,根据法律法规和法律参考书籍构造了对应的指令数据;为了增加模型对法律案例和文书的了解,对5万条法律文书采用正则匹配方法提取事实和裁判分析过程部分内容构造了对应的指令数据。LexiLaw模型共涉及3种指令微调方法,包括参数冻结方法、LoRA方法和P-Tuning v2方法。
智海-录问模型 是由浙江大学、阿里巴巴达摩院及华院计算等提出的,模型基座采用Baichuan-7B模型,采用法律文书、司法案例及法律问答等40GB数据进行模型继续预训练工作,再采用10万条指令数据集进行模型的指令微调。在10万条指令数据中,70%的数据为通用数据,30%的数据为法律领域数据。通用数据主要来自LIMA、OpenOrca、ShareGPT、BELLE、MOSS等;法律领域数据主要通过ChatGPT进行构造,数据种类包含法律咨询、情景问答、罪名预测、触犯法律预测、刑期预测、法考选择题、案件摘要提取、司法判断题、法律多轮对话、法院意见、法律阅读理解等。智海-录问模型的增量预训练和指令微调均采用全量参数训练的方式。
为了进一步增强智海-录问模型的最终问答效果,还收集了6种类型的知识库用于知识增强,包括法条类、案例类、模板类、书籍类、法律考试类、法律日常问答类。
HanFei模型 是由中科院深圳先进院、深圳市大数据研究院等提出的,模型基座采用Bloomz-7B模型,采用法律案例、法律法规、法律起诉状、法律新闻等60GB数据进行模型继续预训练,采用11.8万通用数据和14.7万法律数据进行指令微调,并且HanFei模型的增量预训练和指令微调均采用全量参数训练的方式。
DISC-LawLLM模型 由复旦大学提出,模型基座采用Baichuan-13B模型,采用29.5万条的法律领域指令数据和10.8万条通用指令数据进行模型指令微调,其中法律领域指令数据主要由法律信息提取、判决预测、文档摘要和法律问题解答等数据组成,涉及直接问答数据和借助检索内容的问答数据两种。DISC-LawLLM模型在指令微调过程中采用全量参数进行模型训练。
为了进一步增强模型的最终问答效果,还构建了包含800多部国家地方法律、条例和规定的法律库和2.4万道法律相关的考试题库。同时,还开源了一个法律大模型的评估框架DISC-Law-Eval Benchmark,从客观和主观两个角度对来对法律大型语言模型的性能进行评估,以考察模型在中国法律领域的性能。
医疗在社会中具有极其重要的位置,不仅关系到个体的健康,还关系到整个社会的稳定和发展。随着世界人口的增多及生活质量的提高,人们对医疗系统的需求量和质量也在不断提高,为了保证每个人都能享受到高质量的医疗服务,促进社会的进步和繁荣,建设高效、公平和可持续的医疗系统是必不可少的。那么如何在健康维护、疾病治疗、研究创新、防疫等方面提高效率、降低成本、提升质量成为重要的研究课题。尽管大型语言模型的能力已经被广大群众认可,但是由于医疗领域低容错率等特点,导致通用大型语言模型在医疗领域的效果并不尽如人意。因此很多学者为了让大型语言模型在医疗领域具有更好的效果,会在医疗领域数据上进行预训练或微调来进一步提高模型效果。我们通常称在医疗领域进行特殊训练过的大型语言模型为医疗大型语言模型。
医疗大型语言模型可以作用于医疗诊断的全流程,可以在诊断前可以帮助患者填写预问诊表格,以为医生提供初步信息等;在诊断中可以帮助医生快速检索查询医学相关知识,辅助制订医疗决策、治疗计划,协助生成医学报告,进行临床指标预警等;在诊断后可以为患者提供健康管理建议,协助患者进行健康评估,为患者提供一些生活方式建议等。
目前,中文开源医疗大型语言模型主要包括MING模型、BenTsao模型、ChatMed模型、BianQue模型、HuaTuoGPT模型、QiZhenGPT模型、DISC-MedLLM模型、Taiyi模型等。
MING模型 是由上海交通大学和上海人工智能实验室提出的,模型基座采用Bloom-7B模型,根据112万条指令数据进行模型指令微调,包括医疗知识问答数据(基于临床指南和医疗共识的知识问答数据、基于医师资格考试题的知识问答数据、真实医患问答数据、基于结构化医疗图谱的知识问答数据)、多轮情景诊断与案例分析数据(基于HealthCare-Magic构造的多轮情景问答与诊断数据、基于USMLE案例分析题的格式化多轮问诊数据、多轮病人信息推理与诊断数据)、任务指令数据(医疗指令数据、通用指令数据)和安全性数据(敏感性问题数据、医疗反事实数据)。而对于MING模型的训练方式暂不明确。目前,MING模型可以对医疗问题进行解答,对案例进行分析;并且通过多轮问诊后,给出诊断结果和建议。
BenTsao模型 是由哈尔滨工业大学提出的,模型底座采用LLaMA、Bloom、活字模型等多个底座模型,通过GPT-3.5接口,根据医学知识库、知识图谱构建8千多条中文医学指令数据集,根据医学文献的结论内容构建1千条中文医学多轮问答数据数据集进行模型指令微调。BenTsao系列模型共涉及4个模型,详细如表1-10所示。其中以活字模型为底座训练得到的BenTsao-Huozi模型效果最佳。
表1-10 BenTsao系列模型介绍
ChatMed模型 是由Wei Zhu等人提出的,模型底座采用LLaMA模型架构,从互联网上爬取50多万个不同用户或患者的医疗问诊需求,通过GPT-3.5接口生成对应回复内容构建了中文医疗在线问诊数据集,并利用中医药知识图谱采用以中医药实体为中心的Self-Instruct方法,调用ChatGPT生成11多万的围绕中医药的指令数据。ChatMed系列模型共涉及2个模型,详细如表1-11所示。
表1-11 ChatMed系列模型介绍
BianQue模型 是由华南理工大学提出的,模型底座采用T5和ChatGLM模型等多个底座模型。通过分析真实场景中医生与患者的对话特性(医生与用户在交谈过程中,会根据用户当前的描述进行持续多轮的询问,最后再根据用户提供的信息综合给出建议。因此,模型需要判断当前状态是继续询问还是给出最终答案),对目前多个开源中文医疗问答数据集以及实验室长期自建的生活空间健康对话数据集进行整合,构建千万级别规模的扁鹊健康大数据用于模型的指令微调。BianQue系列模型共涉及2个模型,详细如表1-12所示。
表1-12 BianQue系列模型介绍
HuaTuoGPT模型 是由香港中文大学深圳数据科学学院和深圳大数据研究院提出的,模型底座采用Baichuan和LLaMA等多个底座模型,通过Self-Instruct方法构建61 400条指令数据,并采用两个ChatGPT分别作为患者和医生构建68 888条多轮对话数据集,还采集真实场景中医疗单轮69 768条数据和多轮25 986条对话数据进行模型指令微调。HuaT-uoGPT系列模型共涉及2个模型,详细如表1-13所示。
表1-13 HuaTuoGPT系列模型介绍
QiZhenGPT模型 是由浙江大学提出的,模型底座采用ChatGLM、LLaMA模型等多个底座模型,通过对知识库中药品和疾病的半结构化数据设置特定的问题模板并利用ChatGPT构造指令数据集,分别为18万条和29.8万条指令数据;真实医患知识问答数据涉及疾病、药品、检查检验、手术、预后、食物等多个维度,共56万条指令数据。QiZhenGPT系列模型共涉及3个模型,详细如表1-14所示。
表1-14 QiZhenGPT系列模型介绍
DISC-MedLLM模型 是由复旦大学提出的,底座模型采用Baichuan-13B模型,通过重构AI医患对话和知识图谱问答对数据构建47万条训练数据进行模型指令微调。DISC-MedLLM模型在微调过程中采用全量参数微调的方法。
Taiyi模型 是由大连理工大学提出的,底座模型采用Qwen-7B模型,通过收集140个任务数据(包含命名实体识别、关系抽取、事件抽取、文本分类、文本对任务、机器翻译、单轮问答、多轮对话等)并设计了多种指令模板进行指令数据转换,为了保证通用领域对话能力和推理能力还增加了通用对话数据和思维链数据共同进行模型指令微调工作。Taiyi模型在约100万条指令数据上采用QLoRA方法进行模型训练。
金融是社会经济中至关重要的组成部分,金融市场的健康运行对于经济的稳定和增长至关重要,而金融领域的创新和发展也推动了技术和就业的增长。虽然大型语言模型在金融领域有不错的表现,但在实际应用大型语言模型时还面临挑战,例如用户需求的复杂性、结果的精准可控性、数据的安全性等。为了让大型语言模型可以更好地覆盖金融咨询、金融分析、金融计算、金融问答等多个金融应用场景,会在金融领域数据上进行预训练或者微调,来进一步提高模型效果。我们通常称在金融领域进行过特殊训练的大型语言模型为金融大型语言模型。
金融大型语言模型可以处理大规模金融数据进行趋势分析;可以监测新闻和社交媒体上的情感和舆情,帮助投资者了解市场情绪和社会因素对市场的影响;也可以为普通投资者提供更多金融知识和投资建议。
目前,中文开源金融大型语言模型主要包括XuanYuan模型、Cornucopia模型、DISC-FinLLM模型等。
XuanYuan模型 是由度小满提出的,模型底座采用LLaMA、Bloom模型等多个模型,构建约60GB的金融数据集(包括上市公司公告、金融资讯或新闻、金融试题等),对模型进行词表扩充以及增量预训练工作。XuanYuan系列模型目前共涉及2个模型,详细如表1-15所示。
表1-15 XuanYuan系列模型介绍
其中XuanYuan-70B模型在增量预训练过程中,中文数据与英文数据的比例为3∶1,中文数据中的通用数据和金融领域数据的比例为9∶1,在模型训练的前期主要以知识类数据为主,并且随着训练时间的增加,金融领域数据的比例也逐步提升,从一开始的1∶9到最终阶段达到1∶4左右。
Cornucopia模型 是由中科院成都计算机应用研究所提出的,模型底座采用LLaMA模型,通过中文金融公开问答数据与爬取的金融问答数据利用GPT-3.5/4.0接口构建高质量的指令数据集进行模型的指令微调。Cornucopia系列模型目前共涉及2个模型,详细如表1-16所示。
表1-16 Cornucopia系列模型介绍
DISC-FinLLM模型 是由复旦大学提出的,模型底座采用Baichuan-13B-Chat模型,对现有开源数据采用Self-Instruct、Chain-of-Retrieval prompting等方法利用ChatGPT生成约25万条指令数据(包括金融咨询任务、金融分析任、金融计算任务和金融检索增强任务)进行模型指令微调。DISC-FinLLM模型主要采用LoRA方法进行模型训练。
教育是有意识地传授知识、技能、价值观和文化的过程,是社会发展的关键,有助于培养具有知识和技能的人才,促进民族文化、价值观、道德原则的传承。但随着人口的增多、地区经济的差异,教育资源会出现不平等分配或资源匮乏的现象。如何利用人工智能方法提高教育的水平,针对不同地区、不同学生进行不同教育,成为研究的重点。为了让大型语言模型可以更好地因材施教,通常会在教育领域数据上进行预训练或者微调,来进一步提高模型效果。我们通常称在教育领域进行过特殊训练的大型语言模型为教育大型语言模型。
教育大型语言模型可以根据每个学生的需求和能力,提供个性化的学习材料和建议,从而增加学习的效果;可以充当虚拟教师或辅导员,回答学生的问题和解释难点,并提供额外的练习;可以自动评估学生的作业和考试,提供及时的反馈,并帮助学生改进;可以在全球范围内分享教育资源,促进教育的全球化和无缝连接。
目前中文开源教育大型语言模型主要包括Taoli模型、QiaoBan模型、EduChat模型等。
Taoli模型 是由北京语言大学、清华大学、东北大学、北京交通大学提出的,模型底座采用LLaMA模型,通过通用和国际中文教育指令数据进行模型的指令微调,其中国际中文教育数据主要由语法改错数据、释义生成数据、文本简化数据、可控文本生成以及高质量问答数据组成。Taoli模型是在Chinese-LLaMA-7B模型上继续训练的,具体微调方法暂不明确。
QiaoBan模型 是由哈尔滨工业大学提出的,模型底座采用Baichuan-7B模型,通过人工构建了1千条高质量中文儿童情感教育对话数据,并且通过GPT-3.5接口在儿童情绪辅导理论指导下构建5千条对话数据进行模型的指令微调。QiaoBan模型采用全量参数微调方式进行模型训练。
EduChat模型 是由华东师范大学等提出的,模型底座采用LLaMA、Baichuan模型等多个模型,混合多个开源中英指令、对话数据构建约400万的指令微调数据集,并构建教育领域多技能数据分别进行模型的指令微调。EduChat系列模型目前共开源6个模型,详细如表1-17所示。
表1-17 EduChat系列模型介绍