文章目录
前言
五一期间参与了书生·蒲语的活动,其中使用InternStudio算力平台和Xtuner库进行。下面是一些具体的项目和实践截图。
一、LLama3的web部署
这里所使用的库是streamlit,直接运行命令行,即可在本地完成web部署。
streamlit run ~/Llama3-Tutorial/tools/internstudio_web_demo.py \
~/model/Meta-Llama-3-8B-Instruct
二、XTuner 微调 Llama3 个人小助手认知
这一步主要使用了下面这条数据进行过拟合:
[
{
"conversation": [
{
"system": "你是一个懂中文的小助手",
"input": "你是(请用中文回答)",
"output": "您好,我是SmartFlowAI,一个由 SmartFlowAI 打造的人工智能助手,请问有什么可以帮助您的吗?"
}
]
},
{
"conversation": [
{
"system": "你是一个懂中文的小助手",
"input": "你是(请用中文回答)",
"output": "您好,我是SmartFlowAI,一个由 SmartFlowAI 打造的人工智能助手,请问有什么可以帮助您的吗?"
}
]
}
]
使用的是Qlora微调方式,并使用deepspeed进行加速。微调后,可以改变模型的自我认知,但同时由于过拟合,会出现问什么问题都回答这句话。(这里由于笔者没有保存截图,就不贴了)
三、XTuner 微调 Llama3 图片理解多模态
这一步和上一步的微调方法差不多,需要多加载一个visual encoder,同时需要注意使用deepspeed zero2需要大于24G的内存,当然也可以使用zero2+offload,只需要21G的内存,当然也可以使用Zero3,不过速度会较慢。
四、LMDeploy 高效部署 Llama3 实践
1. LMDeploy直接部署
显存情况
2.Lmdeploy-lite
KVcache使用0.5
KVcache使用0.01,基本关掉
3. 使用W4A16量化
五、Llama 3 Agent 能力体验+微调(Lagent 版)
总结
以上就是本次Llama3的相关学习,主要关注微调和部署。
参考
- https://github.com/SmartFlowAI/Llama3-Tutorial/blob/main/docs/hello_world.md
- https://github.com/InternLM/xtuner