当前位置: 首页 > news >正文

58临沂网站建设网站建设客源

58临沂网站建设,网站建设客源,同一个公司可以做几个网站,安装wordpress数据库500解锁ChatGLM-6B的潜力#xff1a;优化大语言模型训练#xff0c;突破任务困难与答案解析难题 LLM#xff08;Large Language Model#xff09;通常拥有大量的先验知识#xff0c;使得其在许多自然语言处理任务上都有着不错的性能。 但#xff0c;想要直接利用 LLM 完成…解锁ChatGLM-6B的潜力优化大语言模型训练突破任务困难与答案解析难题 LLMLarge Language Model通常拥有大量的先验知识使得其在许多自然语言处理任务上都有着不错的性能。 但想要直接利用 LLM 完成一些任务会存在一些答案解析上的困难如规范化输出格式严格服从输入信息等。 因此在这个项目下我们参考 ChatGLM-Tuning 的代码尝试对大模型 ChatGLM-6B 进行 Finetune使其能够更好的对齐我们所需要的输出格式。 1. 环境安装 由于 ChatGLM 需要的环境和该项目中其他实验中的环境有所不同因此我们强烈建议您创建一个新的虚拟环境来执行该目录下的全部代码。 下面我们将以 Anaconda 为例展示如何快速搭建一个环境 创建一个虚拟环境您可以把 llm_env 修改为任意你想要新建的环境名称 conda create -n llm_env python3.8激活新建虚拟环境并安装响应的依赖包 conda activate llm_env pip install -r requirements.txt安装对应版本的 peft cd peft-chatglm python setup.py install2. 数据集准备 在该实验中我们将尝试使用 信息抽取 文本分类 任务的混合数据集喂给模型做 finetune数据集在 data/mixed_train_dataset.jsonl。 每一条数据都分为 context 和 target 两部分 context 部分是接受用户的输入。 target 部分用于指定模型的输出。 在 context 中又包括 2 个部分 Instruction用于告知模型的具体指令当需要一个模型同时解决多个任务时可以设定不同的 Instruction 来帮助模型判别当前应当做什么任务。 Input当前用户的输入。 信息抽取数据示例 Instruction 部分告诉模型现在需要做「阅读理解」任务Input 部分告知模型要抽取的句子以及输出的格式。 {context: Instruction: 你现在是一个很厉害的阅读理解器严格按照人类指令进行回答。\nInput: 找到句子中的三元组信息并输出成json给我:\n\n九玄珠是在纵横中文网连载的一部小说作者是龙马。\nAnswer: , target: json\n[{\predicate\: \连载网站\, \object_type\: \网站\, \subject_type\: \网络小说\, \object\: \纵横中文网\, \subject\: \九玄珠\}, {\predicate\: \作者\, \object_type\: \人物\, \subject_type\: \图书作品\, \object\: \龙马\, \subject\: \九玄珠\}]\n }文本分类数据示例 Instruction 部分告诉模型现在需要做「阅读理解」任务Input 部分告知模型要抽取的句子以及输出的格式。 {context: Instruction: 你现在是一个很厉害的阅读理解器严格按照人类指令进行回答。\nInput: 下面句子可能是一条关于什么的评论用列表形式回答\n\n很不错很新鲜快递小哥服务很好水果也挺甜挺脆的\nAnswer: , target: [\水果\] }3. 模型训练 3.1 单卡训练 实验中支持使用 LoRA Finetune 和 P-Tuning 两种微调方式。 运行 train.sh 文件根据自己 GPU 的显存调节 batch_size, max_source_seq_len, max_target_seq_len 参数 # LoRA Finetune python train.py \--train_path data/mixed_train_dataset.jsonl \--dev_path data/mixed_dev_dataset.jsonl \--use_lora True \--lora_rank 8 \--batch_size 1 \--num_train_epochs 2 \--save_freq 1000 \--learning_rate 3e-5 \--logging_steps 100 \--max_source_seq_len 400 \--max_target_seq_len 300 \--save_dir checkpoints/finetune \--img_log_dir log/fintune_log \--img_log_name ChatGLM Fine-Tune \--device cuda:0# P-Tuning python train.py \--train_path data/mixed_train_dataset.jsonl \--dev_path data/mixed_dev_dataset.jsonl \--use_ptuning True \--pre_seq_len 128 \--batch_size 1 \--num_train_epochs 2 \--save_freq 200 \--learning_rate 2e-4 \--logging_steps 100 \--max_source_seq_len 400 \--max_target_seq_len 300 \--save_dir checkpoints/ptuning \--img_log_dir log/fintune_log \--img_log_name ChatGLM P-Tuning \--device cuda:0成功运行程序后会看到如下界面 ... global step 900 ( 49.89% ) , epoch: 1, loss: 0.78065, speed: 1.25 step/s, ETA: 00:12:05 global step 1000 ( 55.43% ) , epoch: 2, loss: 0.71768, speed: 1.25 step/s, ETA: 00:10:44 Model has saved at checkpoints/model_1000. Evaluation Loss: 0.17297 Min eval loss has been updated: 0.26805 -- 0.17297 Best model has saved at checkpoints/model_best. global step 1100 ( 60.98% ) , epoch: 2, loss: 0.66633, speed: 1.24 step/s, ETA: 00:09:26 global step 1200 ( 66.52% ) , epoch: 2, loss: 0.62207, speed: 1.24 step/s, ETA: 00:08:06 ...在 log/finetune_log 下会看到训练 loss 的曲线图 3.2 多卡训练 运行 train_multi_gpu.sh 文件通过 CUDA_VISIBLE_DEVICES 指定可用显卡num_processes 指定使用显卡数 # LoRA Finetune CUDA_VISIBLE_DEVICES0,1 accelerate launch --multi_gpu --mixed_precisionfp16 --num_processes2 train_multi_gpu.py \--train_path data/mixed_train_dataset.jsonl \--dev_path data/mixed_dev_dataset.jsonl \--use_lora True \--lora_rank 8 \--batch_size 1 \--num_train_epochs 2 \--save_freq 500 \--learning_rate 3e-5 \--logging_steps 100 \--max_source_seq_len 400 \--max_target_seq_len 300 \--save_dir checkpoints_parrallel/finetune \--img_log_dir log/fintune_log \--img_log_name ChatGLM Fine-Tune(parallel)# P-Tuning CUDA_VISIBLE_DEVICES0,1 accelerate launch --multi_gpu --mixed_precisionfp16 --num_processes2 train_multi_gpu.py \--train_path data/mixed_train_dataset.jsonl \--dev_path data/mixed_dev_dataset.jsonl \--use_ptuning True \--pre_seq_len 128 \--batch_size 1 \--num_train_epochs 2 \--save_freq 500 \--learning_rate 2e-4 \--logging_steps 100 \--max_source_seq_len 400 \--max_target_seq_len 300 \--save_dir checkpoints_parrallel/ptuning \--img_log_dir log/fintune_log \--img_log_name ChatGLM P-Tuning(parallel)相同数据集下单卡使用时间 Used 00:27:18.多卡2并行使用时间 Used 00:13:05.4. 模型预测 修改训练模型的存放路径运行 python inference.py 以测试训练好模型的效果 device cuda:0 max_new_tokens 300 model_path checkpoints/model_1000 # 模型存放路径tokenizer AutoTokenizer.from_pretrained(model_path, trust_remote_codeTrue )model AutoModel.from_pretrained(model_path,trust_remote_codeTrue ).half().to(device) ...您也可以使用我们提供的 Playground 来进行模型效果测试 streamlit run playground_local.py --server.port 8001在浏览器中打开对应的 机器ip:8001 即可访问。 5. 标注平台 如果您需要标注自己的数据也可以在 Playground 中完成。 streamlit run playground_local.py --server.port 8001在浏览器中打开对应的 机器ip:8001 即可访问。 项目链接https://github.com/HarderThenHarder/transformers_tasks/blob/main/LLM/chatglm_finetune/readme.md
http://www.hkea.cn/news/14422241/

相关文章:

  • 网站地图提交给百度wordpress微信登录的插件
  • 免费建立个人网站广州网络营销推广
  • 石排镇专业建站公司教医学生做科研的网站有哪些
  • 深圳龙华做网站微信公众号的微网站怎么做
  • zzcms网站开发wordpress的主机
  • 宁波建站服务做网站备案什么意思
  • 网站大全正能量免费2020网站尺寸大小
  • 珠市口网站建设宽屏网站
  • 宿州官方网站建设wordpress安装插件返回空白
  • 看剧资源网站怎么做的杭州网络推广
  • 怎么做多个域名指向一个网站荣耀手机商城官方网站登录入口
  • 密云网站建设公司网站收款接口
  • 中国十大网站建设wordpress一键分享代码
  • 怎样在各大网站做推广28商机网
  • 小视频解析网站怎么做php网站后台反应慢怎么解决
  • 做网站的空间需要买吗个人网站主机的配置
  • 如何撤销网站备案替换wordpress google 插件
  • 提升学历大概要多少钱德州哪家网站优化公司专业
  • 沧州做网站哪家好辽宁城乡住房建设厅网站
  • 网站背景颜色代码网址大全有用吗
  • 撰写网站规划书石家庄外贸网站推广
  • 网站模板 外贸工厂北京企业网站建设公司哪家好
  • 山东网站建设维护行业网站系统
  • 哪里有专做水果的网站seo建站教程
  • 安徽振兴集团网站开发男科治疗价目表
  • 做网站还要买服务器吗网站开发学生鉴定表
  • 做家装网站客户来源多吗产品软文是什么
  • 北京网站开发联系电话网站的图文链接怎么做
  • 浙江省建设工程质监站网站山西做网站的企业
  • 汽车网站建设代理加盟国外有什么网站做游戏吗