LLama3超级课堂作业

前置准备 

我是使用VSCode的,使用InternStudio需要与VSCode进行ssh链接

第一步:先在VSCode下载扩展Remote-SSH

第二步:之后扩展下面会有一个显示屏一样的图标,点击并让鼠标滑到新建远程

 

第三步: 上面搜索栏会让我们输入ssh链接命令,我们先回到开发机,复制登录命令黏贴上去,并点击C:\User\目录下的\.ssh\config进行连接,成功后右下角会弹出已连接成功,点击连接。

  

 第四步:进入这个界面后,点击打开文件夹,选择/root/文件,就能像在在本地一样在开发机输入指令或者写代码了。

一、Llama 3 Web Demo 部署 

第一步:环境配置 

在终端输入以下命令进行文件配置

conda create -n llama3 python=3.10
conda activate llama3
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia

 第二步:下载模型

mkdir -p ~/model
cd ~/model

使用软连接InternStudio的模型 

ln -s /root/share/new_models/meta-llama/Meta-Llama-3-8B-Instruct ~/model/Meta-Llama-3-8B-Instruct

第三步:开始进行Web demo部署

cd ~
git clone https://github.com/SmartFlowAI/Llama3-Tutorial

进行依赖安装 

cd ~
git clone -b v0.1.18 https://github.com/InternLM/XTuner
cd XTuner
pip install -e .

 运行web_demo.py

streamlit run ~/Llama3-Tutorial/tools/internstudio_web_demo.py \
  ~/model/Meta-Llama-3-8B-Instruct

我们打开端口

 添加一个端口,输入8501,然后点击在浏览器打开

这样就可以进行聊天啦! 

 

二、使用 XTuner 完成小助手认知微调

第一步:我们下载XTuner并安装相应的依赖 

cd ~
git clone -b v0.1.18 https://github.com/InternLM/XTuner
cd XTuner
pip install -e .

 第二步:我们运行gdata.py

cd ~/Llama3-Tutorial
python tools/gdata.py 

生成了json格式的一堆数据对 

 第三步:开始训练模型

cd ~/Llama3-Tutorial

# 开始训练,使用 deepspeed 加速,A100 40G显存 耗时24分钟
xtuner train configs/assistant/llama3_8b_instruct_qlora_assistant.py --work-dir /root/llama3_pth

# Adapter PTH 转 HF 格式
xtuner convert pth_to_hf /root/llama3_pth/llama3_8b_instruct_qlora_assistant.py \
  /root/llama3_pth/iter_500.pth \
  /root/llama3_hf_adapter

# 模型合并
export MKL_SERVICE_FORCE_INTEL=1
xtuner convert merge /root/model/Meta-Llama-3-8B-Instruct \
  /root/llama3_hf_adapter\
  /root/llama3_hf_merged

 

第四步:推理验证:

streamlit run ~/Llama3-Tutorial/tools/internstudio_web_demo.py \
  /root/llama3_hf_merged

 

 

三、使用 LMDeploy 部署 Llama 3 模型

 第一步:配置环境

# 如果你是InternStudio 可以直接使用
# studio-conda -t lmdeploy -o pytorch-2.1.2
# 初始化环境
conda create -n lmdeploy python=3.10
conda activate lmdeploy
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia

 安装Lmdeploy最新版

pip install -U lmdeploy[all]

第二步:在终端部署运行

conda activate lmdeploy
lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct

此时的显卡使用如图:

1.设置最大KV Cache缓存大小

使用0.5的 最大KV Cache缓存大小部署

lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct/ --cache-max-entry-count 0.5

显卡使用如图 :

 

使用0.01的 最大KV Cache缓存大小部署 

lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct/ --cache-max-entry-count 0.01

显卡使用如图 : 

 

2.使用W4A16量化

使用以下代码进行W4A16量化

lmdeploy lite auto_awq \
   /root/model/Meta-Llama-3-8B-Instruct \
  --calib-dataset 'ptb' \
  --calib-samples 128 \
  --calib-seqlen 1024 \
  --w-bits 4 \
  --w-group-size 128 \
  --work-dir /root/model/Meta-Llama-3-8B-Instruct_4bit

 输入以下命令进行对话

lmdeploy chat /root/model/Meta-Llama-3-8B-Instruct_4bit --model-format awq --cache-max-entry-count 0.01

 显卡使用会比上图更小

3.使用网页进行Lmdeploy部署 

打开本地powershell输入 

 ssh -CNg -L 23333:127.0.0.1:23333 root@ssh.intern-ai.org.cn -p 你的端口号

 

首先需要输入API服务指令 

lmdeploy serve api_server \
>     /root/model/Meta-Llama-3-8B-Instruct \
>     --model-format hf \
>     --quant-policy 0 \
>     --server-name 0.0.0.0 \
>     --server-port 23333 \
>     --tp 1

 

新建一个终端以输入以下代码进行gradio连接

lmdeploy serve gradio http://localhost:23333 \
>     --server-name 0.0.0.0 \
>     --server-port 6006

 

这样就可以跟llama3聊天啦! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值