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

广州网站建设信科分公司四川省建设厅职称评审网站

广州网站建设信科分公司,四川省建设厅职称评审网站,产品开发流程8个步骤案例,天津宁河区建设网站目录​​​​​​​ 一.引言 二.模型探索 1.模型下载 2.模型结构 ◆ Baichuan-1-13B 结构 ◆ Baichuan-2-13B 结构 3.模型测试 ◆ Baichuan-2-13B Chat 推理 ◆ Baichuan-2-13B 显存 4.模型量化 ◆ 在线量化 ◆ 离线量化 ◆ 量化效果 5.模型迁移 三.模型微调 … 目录​​​​​​​ 一.引言 二.模型探索 1.模型下载 2.模型结构 ◆ Baichuan-1-13B 结构 ◆ Baichuan-2-13B 结构  3.模型测试 ◆ Baichuan-2-13B Chat 推理 ◆ Baichuan-2-13B 显存 4.模型量化 ◆ 在线量化 ◆ 离线量化 ◆ 量化效果 5.模型迁移 三.模型微调 1.样本构造 2.单机 Lora 微调 3.显存占用 四.总结 一.引言 昨天百川新推出了 Baichuan 7B、13B 的最新模型 Baichuan2。 根据官方介绍Baichuan2 主要采用了新的高质量语料训练在同尺寸模型上取得最佳的效果以通用领域为基准做到了除 GPT-4 外的最佳相比前面的 Baichuan-13B 也有十足的进步。 二.模型探索 1.模型下载 模型出来博主也是第一时间下载了 Baichuan-13B-chat 进行体验链接Baichuan-13B-chat 可以看到好多烙铁已经先我一步了模型 bin 文件大小相较于 Baichuan-13B-chat 多了大概 3G之前用 V100-32G 单卡是可以跑起来 Baichuan 的不知道更新之后还行不行。  2.模型结构 ◆ Baichuan-1-13B 结构 可以看到 Baichuan-1-13B 共堆叠了 40 个模块其中包含 sele_attn 和 mlp最前和最后分别是一个 Embedding 层和 lm_head 层从这两个层也可以看出 Baichuan 的向量维度为 5120共包含 64000 个输出 token 类型。 ◆ Baichuan-2-13B 结构  相比 Baichuan-1-13B模型整体结构未改变还是 Embedding 40 x Module 的模型堆叠且 embedding 维度保持 5120区别是 Embedding 支持的 Token 数 125696 大于第一代的 64000其次 lm_head 也从 Linear 变成 NormHead。 3.模型测试 ◆ Baichuan-2-13B Chat 推理 下面我们把模型跑起来看看直接拿官方给的 demo 试试 import torch from transformers import AutoModelForCausalLM, AutoTokenizer from transformers.generation.utils import GenerationConfigpath/data2/models/Baichuan2-13B tokenizer AutoTokenizer.from_pretrained(path, use_fastFalse, trust_remote_codeTrue) model AutoModelForCausalLM.from_pretrained(path, device_mapauto, torch_dtypetorch.bfloat16, trust_remote_codeTrue) model.generation_config GenerationConfig.from_pretrained(path) messages [] messages.append({role: user, content: 解释一下“温故而知新”}) response model.chat(tokenizer, messages) print(response) 浅试下 chat 的效果  温故而知新是一句中国古代的格言出自《论语·为政》篇。这句话的意思是通过回顾过去的学习和经验可以从中获得新的理解和启示。具体来说它鼓励人们在学习和生活中要经常回顾和总结过去的知识、经验和教训从而不断地提高自己实现自我成长和提升。同时这也强调了在学习过程中要注重知识的巩固和更新以适应不断变化的环境和需求。温故而知新是一句源自《论语》的古语这句话的意思是通过回顾过去的学习和经验从而获得新的理解和认识。这句话鼓励我们在学习过程中不仅要关注新的知识还要不断地回顾和巩固已经学过的知识以便从中汲取新的启示和收获。这种方法有助于我们更好地吸收和理解新知识提高学习效果。温故而知新是一句源自中国古代的成语出自《论语·为政》篇。它的意思是在回顾过去的基础上发现新的知识和理解。这句话鼓励我们在学习或生活中不断地回顾和反思过去的经验从而获得新的启示和成长。 ◆ Baichuan-2-13B 显存 为了测试推理需要的显存先用 A800 尝尝咸淡大概需要 30G 显存 所以 V100-32G 应该也没问题可以跑起来最新的 Baichuan-2-13B不过由于 Token 的扩充遇到较长的 query 不确定 generate 是否会 OOM 4.模型量化 ◆ 在线量化 ◆ 离线量化 ◆ 量化效果 根据官方提供的数据集测试效果量化后的效果整体损失不大不过博主尝试了对 LLaMA-33B 进行 8-bit 量化实际场景效果与未量化相差很大大家可以在自己场景实际测试体验量化效果。其次这里量化的方式与一代也有一定区别大家注意代码的修改。 5.模型迁移 由于很多同学在 Baichuan 1 (Baichuan-7B, Baichuan-13B) 上做了很多优化的工作例如编译优化、量化等为了将这些工作零成本地应用于 Baichuan 2用户可以对 Baichuan 2 模型做一个离线转换转换后就可以当做 Baichuan 1 模型来使用。具体来说用户只需要利用以下脚本离线对 Baichuan 2 模型的最后一层 lm_head 做归一化并替换掉 lm_head.weight 即可。替换完后就可以像对 Baichuan 1 模型一样对转换后的模型做编译优化等工作了。这也印证了我们前面提到的 lm_head 两个模型的差异 import torch import os ori_model_dir your Baichuan 2 model directory # To avoid overwriting the original model, its best to save the converted model to another directory before replacing it new_model_dir your normalized lm_head weight Baichuan 2 model directory model torch.load(os.path.join(ori_model_dir, pytorch_model.bin)) lm_head_w model[lm_head.weight] lm_head_w torch.nn.functional.normalize(lm_head_w) model[lm_head.weight] lm_head_w torch.save(model, os.path.join(new_model_dir, pytorch_model.bin)) 三.模型微调 Baichuan-13B 是基于 LLaMA-Efficient-Tuning 框架进行 Lora 微调的新版本 Baichuan2-13B 暂时不支持使用该框架微调不过官方给了另外的版本下面我们尝试使用新代码微调模型。 1.样本构造 [{id: 77771,conversations: [{from: human,value: 写一篇关于气候变化对海洋生态的影响的文章。\n},{from: gpt,value: 好的以下是你要求的文章\n气候变化对海洋生态的影响\n气候变化对海洋生态产生了广泛的影响。全球变暖导致海洋温度上升这可能会对许多水生生物的生存、繁殖和迁移造成巨大的影响。另外海洋酸化也是一个问题因为大气中二氧化碳的增加导致海水中的pH值下降使得许多生物 的外骨骼变得脆弱从而影响它们的生存和繁殖。\n此外气候变化还会引起海平面上升这不仅对海岸线和沿海居民产生影响还会对许多海洋生物的栖息地造成影响。一些岛屿上的陆地生物面临几乎完全消失的风险而另一些生物范围则会扩大到更广泛的领域这可能会导致新的竞争和生态平衡的改变。 \n总之气候变化并不只是一个地球气温的问题它对海洋生态系统产生了广泛和深远的影响。\n},{from: human,value: 从刚刚的文章中提取出气候变化对海洋生物繁殖的影响。\n},{from: gpt,value: 文章已经提到过气候变化会对海洋生物的生存、繁殖和迁移造成影响。例如海洋酸化会使得许多生物的外骨骼变得脆弱进而影响它们的生存和繁殖。此外海洋温度上升也可能会对很多生物的生存和繁殖产生负面影响。}]},...] 相较于之前框架的 instruction、input、output 和 columns新版样本是 chat 形式除了样本 id 外主要在 JSON Array 的 conversations 数组中增加 qa 样本即可。这里给出样本转化的代码 candidate []sample_id 0for dialogue in qa:human dialogue[0] \ngpt dialogue[1]train {id: str(sample_id), conversations: [{from: human, value: human}, {from: gpt, value: gpt}]}candidate.append(train)sample_id 1with open(baichuan_train.json, w, encodingutf-8) as f:json.dump(candidate, f, ensure_asciiFalse, indent4) 只需要将之前的样本的问答提出放到 qa 数组中这里注意需要在 human 后添加 \n 以保持样本格式一致最后 dumo 保存至 json 文件中即可。 2.单机 Lora 微调 hostfile deepspeed --hostfile$hostfile fine-tune.py \--report_to none \--data_path data/belle_chat_ramdon_10k.json \--model_name_or_path baichuan-inc/Baichuan2-7B-Base \--output_dir output \--model_max_length 512 \--num_train_epochs 4 \--per_device_train_batch_size 16 \--gradient_accumulation_steps 1 \--save_strategy epoch \--learning_rate 2e-5 \--lr_scheduler_type constant \--adam_beta1 0.9 \--adam_beta2 0.98 \--adam_epsilon 1e-8 \--max_grad_norm 1.0 \--weight_decay 1e-4 \--warmup_ratio 0.0 \--logging_steps 1 \--gradient_checkpointing True \--deepspeed ds_config.json \--bf16 True \--tf32 True 默认的 batch_size 为 16所以梯度累计修改为 1如果显存比较紧张可以调低 batch_size调大 gradient_accumulation_steps。其次代码已经支持轻量化微调如 LoRA如需使用仅需在上面的脚本中加入以下参数 --use_lora True同时参数并不支持传递 lora 相关参数可以查看代码内的具体配置并修改下面为默认配置 peft_config LoraConfig(task_typeTaskType.CAUSAL_LM,target_modules[W_pack],inference_modeFalse,r1,lora_alpha32,lora_dropout0.1, ) 这里 rank 有点小我们可以根据实际情况调整。 3.显存占用 博主在 A800 上尝试 Lora Baichuan2-13B 模型其显存占用情况如下如果显存比较吃紧可以尝试下载官方的量化模型或者降低 batch_size 大小 四.总结 上面是最新 Baichuan-2-13B 的使用初体验后续还会测试基于 Baichuan-2-13B 微调的模型效果如何。更多 Baichaun-2 的细节大家可以移步官网https://github.com/baichuan-inc/Baichuan2。
http://www.hkea.cn/news/14421483/

相关文章:

  • 不用开源程序怎么做网站品牌建设对策
  • 建设网站的流程图公司网站建设有哪些公司可以做
  • 去视频网站做编辑网络营销方案包括哪些内容
  • 淘宝网店开店网站建设花店网站建设环境分析
  • 网站申请注册 免备案wordpress前台发布
  • 做图片素材的网站wordpress入门视频教程
  • 南阳网站建设价格网店如何运营和推广
  • 建设网站文案标识语html5网站开发教程
  • 国土政务网站建设制度福州seo网址优化公司
  • 长沙企业网站制作服务报价品牌建设不断深化
  • 建设网站工具湖南招投标信息网官网
  • 网站建设招标方案图片在线设计平台
  • 响应式网站的特点wordpress标题主题
  • 有做lol直播网站商城网站设计公司怎么样
  • 设计网站官网入口新乡建设公司网站
  • 网站建设快照优化企业管理咨询行业很乱
  • 官方网站建设 磐石网络多少费用app开发公司q1654534794下拉推广
  • 为什么做电影网站没有流量cms开源建站系统
  • 类似于wordpress的seo引擎
  • 营销型网站建设托管成都网络优化公司有哪些
  • 成立网站要营业执照吗做搜狗网站优化点
  • 南通网站建设策划线上推广引流渠道
  • 2017网站开发薪资公关服务
  • 高端的网站设计公司网站怎么推广怎么做的
  • wordpress建站页面做网站需要什么技术人员
  • 温州建设网站公司哪家好ui设计网课一般多少钱
  • 白银市建设局网站首页网站模板上传打不开
  • 湖南雷锋建设有限公司网站磁力天堂
  • 网站备案知识网页设计师需要掌握的领域
  • 这么做钓鱼网站做一个网站能挣多少钱