郑州网站公司哪家好,中国住房与城乡建设部官方网站,他达拉非片正确服用方法,做淘宝网站怎么弄手把手带你在AutoDL上部署InternLM-Chat-7B Transformers 调用 项目地址#xff1a;https://github.com/KMnO4-zx/self_llm.git 如果大家有其他模型想要部署教程#xff0c;可以来仓库提交issue哦~ 也可以自己提交PR#xff01;
InternLM-Chat-7B Transformers 部署调用
环…手把手带你在AutoDL上部署InternLM-Chat-7B Transformers 调用 项目地址https://github.com/KMnO4-zx/self_llm.git 如果大家有其他模型想要部署教程可以来仓库提交issue哦~ 也可以自己提交PR
InternLM-Chat-7B Transformers 部署调用
环境准备
在autoal平台中租一个3090等24G显存的显卡机器如下图所示镜像选择pytorch–1.11.0–3.8(ubuntu20.04)–11.3 接下来打开自己刚刚租用服务器的JupyterLab并且打开其中的终端开始环境配置、模型下载和运行demo.
pip换源和安装依赖包
# 升级pip
python -m pip install --upgrade pip
# 更换 pypi 源加速库的安装
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simplepip install modelscope1.9.5
pip install transformers4.35.2
pip install streamlit1.24.0
pip install sentencepiece0.1.99
pip install accelerate0.24.1模型下载
使用modelscope魔塔社区中的snapshot_download函数下载模型第一个参数为模型名称参数cache_dir为模型的下载路径。
在/root/autodl-tmp路径下新建download.py文件
#将当前工作目录切换到/root/autodl-tmp目录下
cd /root/autodl-tmp
#创建一个名为download.py的空文件
touch download.py并在其中输入以下内容
import torch
from modelscope import snapshot_download, AutoModel, AutoTokenizer
import os
model_dir snapshot_download(Shanghai_AI_Laboratory/internlm-chat-7b, cache_dir/root/autodl-tmp, revisionmaster)粘贴代码后记得保存文件(CtrlS)如下图所示。 保存后返回终端界面运行Python /root/autodl-tmp/download.py执行下载模型大小为14GB,下载模型大概需要10~20分钟。
代码准备
在/root/autodl-tmp路径下新建trans.py文件并在其中输入以下内容
# 导入所需的库
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM# 从预训练模型加载 tokenizer 和 model
# AutoTokenizer 用于处理文本输入并准备模型输入
# AutoModelForCausalLM 是一个生成式语言模型支持生成对话
# trust_remote_codeTrue 表示信任从远程加载的代码
#通过AutoTokenizer.from_pretrained()函数加载预训练模型的tokenizer
tokenizer AutoTokenizer.from_pretrained(/root/autodl-tmp/Shanghai_AI_Laboratory/internlm-chat-7b, trust_remote_codeTrue)model AutoModelForCausalLM.from_pretrained(/root/autodl-tmp/Shanghai_AI_Laboratory/internlm-chat-7b,trust_remote_codeTrue).to(torch.bfloat16).cuda()
# 将模型加载到 GPU如果可用并设置为评估模式
model model.eval().cuda()# 准备对话的历史记录
# 在开始对话之前历史记录为空列表
#调用model.chat(tokenizer, hello, history[])来生成对话将使用模型和tokenizer来根据给定的历史记录生成回复。生成的回复存储在response变量中
response, history model.chat(tokenizer, hello, history[])# 打印模型生成的响应文本
print(response)粘贴代码后记得保存文件上面的代码有比较详细的注释大家如有不理解的地方欢迎提出issue。
部署
在终端输入以下命令启动transformers服务
cd /root/autodl-tmp
python trans.py耐心等待一下它加载得到返回值如下所示
Hello!How can I assist you today? 然后可以在以上trans.py代码的基础上加一个对话代码如下所示
response,history model.chat(tokenizer,please provide three suggestions about time management,historyhistory)print(response)耐心等待加载首先会出来第一个对话内容模型生成的响应文本如下图所示,然后再等待一会它会接着出现第二个对话模型生成的响应文本如下所示 耐心等待加载首先会出来第一个对话内容模型生成的响应文本如下图所示,然后再等待一会它会接着出现第二个对话模型生成的响应文本如下所示