基于通用模型进行领域方面数据的持续预训练、微调

方案流程

领域优质回答经验_优质回答经验领域的问题_优质回答经验领域怎么写

根据上面流程要基于通用语言大模型训练一个行业模型步骤如下:

对通用大模型进行 PT 持续预训练,此部分预训练一般数据没有特殊格式,增加行业数据与通用数据。

在第一步基础上进行 SFT 监督微调,此部分一般效果比较好,能够立竿见影。

对大模型进行 RM 奖励模型,这个部分一般效果不明显,更多问题是数据出现了问题,奖励模型使用数据比较重要。

在SFT和RM基础上进行 RLHF 强化学习,根据奖励情况进行强化学习。

结合领域知识数据库,领域知识库加上通用大模型,针对通用大模型见过的知识比较少的问题,利用向量数据库、领域专用词语模型、意图识别等方式根据问题在领域知识库中找到相关内容,再利用通用大模型的能力生成回复。

通过构造领域行业的 prompt,根据不同大模型的特点构建提示工程。

数据内容/质量思考

优质回答经验领域的问题_领域优质回答经验_优质回答经验领域怎么写

优质回答经验领域的问题_优质回答经验领域怎么写_领域优质回答经验

项目实操(法律领域、单卡为例)数据准备

法律书籍

●法律论文

●法律考试●法律法规(5.5w+ rows)

涵盖11个大类,包含宪法、刑法、行政法、司法解释、民法商法、民法典、行政法规、社会法、部门规章、经济法、诉讼与非诉讼程序●现行有效法律(来源:法务中台)●法律案例●优质法律问答(21,124 rows)●文书模版训练参数

训练参数的详细说明如下:

●output_dir:训练输出目录,存储checkpoint、tokenizer、tensorboard等

●model_name_or_path:预训练模型的本地目录,或者在huggingface上的模型名称。

●train_file:训练数据集路径。可以使用data/dummy_data.jsonl进行debug,或者指定为本地的训练文件。

●num_train_epochs:训练的轮次。如果数据量足够大,一般建议只训一个epoch。

●per_device_train_batch_size:每张显卡的batch size。

●gradient_accumulation_steps:梯度累计步数。global batch=num_gpus * per_device_train_batch_size * gradient_accumulation_steps。

●gradient_checkpointing:如果显存捉襟见肘,可以开启。以时间换空间,模型不缓存激活状态,会进行两次forward计算,以节省显存,我们默认开启。

●learning_rate:学习率。全量参数微调的时候,建议小一些,1e-5或5e-6。qlora训练时,根据模型大小的不同,建议设置为2e-4或1e-4。

●max_seq_length:训练时的最大长度。按照自己的设备进行设置,越长需要占用越多显存。

●logging_steps:每隔多少步打印一次train loss,结果会打印到日志中,也会保存在tensorboard中。

●save_steps:每隔多少步保存一次模型。

●save_total_limit:output_dir目录中最多保存多少个checkpoint,超出则会将最旧的删除。

●lr_scheduler_type:学习率变化策略。

●warmup_steps:warm up步数。学习率经过多少步,增长到指定的数值。

●optim:优化器。如果是全量参数微调,建议使用adamw_hf。如果是qlora微调,建议使用paged_adamw_32bit。

●seed:随机种子,用于复现实验结果。

●fp16:使用使用fp16混合精度。V100建议开启。

●bf16:使用使用fp16混合精度。A100建议开启。

●lora_rank:qlora矩阵的秩。一般设置为8、16、32、64等,在qlora论文中作者设为64。越大则参与训练的参数量越大,一般来说效果会更好,但需要更多显存,。

●lora_alpha: qlora中的缩放参数。一般设为16、32即可。

●lora_dropout: lora权重的dropout rate。

PT

SFT

RW

RLHF(PPO)

Langchain

领域优质回答经验_优质回答经验领域的问题_优质回答经验领域怎么写

Prompt Engineering(激发潜力)

●指令明确,由浅入深、正向引导

●思维链提示

○Let's think it step by step

○Explicit(在对话时考虑用户的状态,如 personality、empathy、psychological)

○主动提示,修正不确定性比较大的思维链

○思维树,Tree of Thoughts

○头脑风暴提示,通过多个 prompt 提供多样化思路再用模型打分采用最高分

○多模态思维链

○一致性提示,核心思想少数服从多数

○Progressive-Hint Prompting(PHP)类似于一致性提示的进阶,试图模拟人类推理的过程,通过反复检查和修正答案来提高推理的准确性。

○Plan-and-Solve 提示的设计理念是让模型制定一个解决问题的计划,然后按照这个计划来执行子任务,以此达到明确生成推理步骤的效果。强化模型在推理过程中的计算能力(pay attention to calculation、extract relevant variables and their corresponding numerals)

●结合知识库

○知识生成提示,先让 LLM 产生一些相关的知识或事实(比如 Generate some numerical facts about xxx),然后再利用这些辅助信息和原来的问题来提问,Knowledge 处放上 LLM 给出的一些事实信息。

○Clue And Reasoning 提示,先提示大型语言模型(LLMs)寻找表面线索,例如关键词、语调、语义关系、引用等,然后基于这些线索引导出一个诊断推理过程进行最终决策。

○知识反刍提示,利用模型中的潜在知识,作者们提出了一种名为"Knowledge Rumination"的方法,通过添加像"As far as I know"这样的提示,让模型回顾相关的潜在知识,并将其注入回模型以进行知识巩固。这种方法的灵感来自于动物的反刍过程,即动物会将食物从胃中带回口中再次咀嚼,以便更好地消化和吸收。文章提出了三种不同类型的提示:

■Background Prompt:这种提示旨在帮助模型思考背景知识。提示的形式是"As far as I know [MASK]"。这种提示鼓励模型回顾和思考其已经知道的一般信息或背景知识。

■Mention Prompt:这种提示用于引发模型对提及的记忆。形式是"About [Mention], I know [MASK]"。这种提示鼓励模型回顾和思考与特定主题或实体(即"[Mention]")相关的知识。

■Task Prompt:这种提示旨在帮助模型回忆任务的记忆。例如,对于情感分析,提示是"About sentiment analysis, I know [MASK]"。这种提示鼓励模型回顾和思考与特定任务(例如情感分析)相关的知识。

优质回答经验领域怎么写_优质回答经验领域的问题_领域优质回答经验

开源项目(法律领域为例)

LaWGPT:基于中文领域知识的大语言模型

方案二,该系列模型在通用中文基座模型(如 Chinese-LLaMA、ChatGLM 等)的基础上扩充领域领域专有词表、大规模中文领域语料预训练,增强了大模型在领域领域的基础语义理解能力。在此基础上,构造领域领域对话问答数据集、中国司法考试数据集进行指令精调,提升了模型对领域内容的理解和执行能力。

LexiLaw,中文领域大模型

简介:LexiLaw 是一个基于 ChatGLM-6B微调的中文领域大模型,通过在领域领域的数据集上进行微调。该模型旨在为领域从业者、学生和普通用户提供准确、可靠的领域咨询服务,包括具体领域问题的咨询,还是对领域条款、案例解析、法规解读等方面的查询。

ChatLaw

●简介:中文领域大模型

●数据:主要由论坛、新闻、法条、司法解释、领域咨询、法考题、判决文书组成,随后经过清洗、数据增强等来构造对话数据。

●训练方法:(1)ChatLaw-13B:基于姜子牙Ziya-LLaMA-13B-v1模型采用Lora方式训练而来。(2)ChatLaw-33B:基于Anima-33B采用Lora方式训练而来。

LAW-GPT

●简介:中文领域大模型(獬豸)

●数据:现有的领域问答数据集和基于法条和真实案例指导的self-Instruct构建的高质量领域文本问答数据。

●训练方法:基于ChatGLM-6B,采用Lora&16bit方法进行模型训练。

wisdomInterrogatory

●简介:智海-录问(wisdomInterrogatory)是由浙江大学、阿里巴巴达摩院以及华院计算三家单位共同设计研发的法律大模型。核心思想:以“普法共享和司法效能提升”为目标,从推动法律智能化体系入司法实践、数字化案例建设、虚拟法律咨询服务赋能等方面提供支持,形成数字化和智能化的司法基座能力。

●数据:法律领域数据占总体数据的30%,通用数据占总体数据的70%。通用数据中,英文数据和中文数据各占50%(用GPT-3.5泛化)

●训练方法:(1)二次预训练的数据包括法律文书、司法案例以及法律问答数据,共40G。目的是给通用的大模型注入法律领域的知识。(2)指令微调训练使用了100k的指微调训练,其目的是让大模型具备问答的能力,能够直接与用户进行交流。(3)外挂知识库

lawyer-llama

●简介:中文领域LLaMA

●数据:法考数据7k、领域咨询数据14k

●训练方法:以Chinese-LLaMA-13B为底座,未经过领域语料continual training,使用通用instruction和领域instruction进行SFT。

BaoLuo-LawAssistant

GitHub - xuanxuanzl/BaoLuo-LawAssistant

简介:宝锣领域助理BaoLuo LawAssistant是一个中文领域大模型应用,使用开源领域领域的数据进行精调,目前是6B版本,13B微调版本正在梳理中。能够提供领域法规检索、领域咨询、案情分析、罪名预测等服务。本项目模型版本 -宝锣领域大模型基于GLM基座模型做的P-Tuning微调,数据量约60万条。该模型目标旨在为领域从业者、学生和普通用户提供准确、可靠的领域咨询服务。我们将分享在大模型基础上微调的经验和最佳实践,以帮助社区开发更多优秀的中文领域大模型,推动中文领域智能化的发展。


本文由转载于互联网,如有侵权请联系删除!