llama3部署和微调

llama3 部署和微调应用


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
五一期间,机智流联合书生·浦语组织了llama3 部署和微调的训练营。期间提供代码和算力支持。收获颇丰,特此记录。
基于开源项目:https://github.com/SmartFlowAI/Llama3-Tutorial
使用到的工具主要为:xtunerstreamlit,lmdeploy, lagent,opencomapss

一、模型的部署

llama3 的模型16位部署需要 20G的GPU。
可以通过4bit量化,部署在8G GPU上。(利用 transformer的BitsAndBytesConfig)

模型部署之后可以基于gradio通过网页接出。
llama3本身有一定的中文能力,能理解中文的输入,但是更倾向于回复英文。

二、对话模型微调

这里的环境,实际上都是一个环境,不需要重新创建虚拟环境。如果有部分包没有安装,另外安装就行了。

教程提供了简单的样本微调数据,一个json格式的字典列表。每个字典都包含一个"conversation",值是一个对话字典的列表,感觉应该是可以支持多轮对话数据的。
对话字典包括三个关键字:system,input,output。
但是给定的样例数据是把一个简单的自我介绍重复了2000次。数据本身就是重复的,又进行几百次的微调之后,模型就过拟合的只知道回答自己是谁了。

三、图文理解微调

图文理解微调占用了比较大的内存。我是在自己本地电脑A6000上跑的。大概半小时。
图文微调的对象是投射层。微调的起点是浦语提供的一个投射层。在往上没有找到。就从浦语的开发机里面导出来了。

图文理解的微调和对话模型的微调有一样的问题,数据同质性比较高,能够确定信息是微调进去了,但是存在过拟合。这里使用的是多轮问答的数据。每个聊天记录包含两个值:from和value。用来确定是谁说了什么。

四、模型部署

使用lmdeploy 进行llama3的推理,占了42G空间
使用lmdeploy 进行llama3的推理,占了42G空间

后面禁用,占用空间下降
改变参数cache-max-entry-count 0.5,占用空间降低10g

但是模型w4a16量化没有成功,应该是网络的问题。
在这里插入图片描述

将大模型封装成api接口很使用。提供了服务端和客户端的代码,有一个网址就可以稳定的对外提供服务了。

这里提示gradio的版本不能高于4.0.0. 我查了自己的版本,试了一下的确不行。

我本地的gradio版本
报错提醒是版本的问题
提示是要升级。教程是需要降级。这里按照教程走。

会遇到新的版本冲突,不能用llava了。先在在考虑网页使用llm,就先放任冲突了
在这里插入图片描述
成功从网页连上:

在这里插入图片描述
总结来说使用模型部署工具很丝滑,能够直接在对话框里面进行模型的对话。不需要自己再去加载模型,解析模型的输出了。

五、智能体微调

智能体微调时间耗费很久。提示是一天,但是我跑了大概两天。大概10次训练需要一分钟,训练时间长主要是训练的次数实在是太多了。
微调之前模型的确不能成功调用工具
调用工具的数据集:https://huggingface.co/datasets/internlm/Agent-FLAN
直接用脚本训练的,脚本写了3.6w次。中间断掉了,在5000次迭代基础上的模型又训练了3.1w次,结果应该是差不多的。

训练之后的结果,能成功调用工具啦:
微调模型调用工具实例

应该用多大的数据去微调8b的llama3,微调的数据应该微调多少轮,感觉有很多内容值得思考

六、模型能力测评

安装opencompass,也是和llava的包有冲突
在这里插入图片描述

和模型相关的 配置:

和模型相关的配置
通过opencompass的run.py运行这些py文件就能直接得到相关模型的能力的测评结果。

和数据集相关的配置
数据目前还没有下载,就不贴测评结果了

总结

记录了llama3的微调和部署的过程。整体按照教程来,感觉还是比较顺利的。
主要的问题就会有:环境依赖的冲突,模型占用显卡空间不足等。
中间出过的乌龙: 在错误的环境中安装包,出现各种需要去解决的冲突。
大模型的门槛,真的是一直在降低,从业者都在一直努力,要继续加油呀。

  • 21
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值