Python

AI大模型学习笔记之一

最近,ChatGPT的流行引起了广泛的关注,各种开源模型也层出不穷。在国内,也出现了许多优秀的开源模型。最近,我正在学习如何将这些开源模型本地化部署。

本次学习的主要目标是使用阿里云的qwen进行本地化部署。

Qwen-7B-Cha 是一个基于qwen模型的聊天机器人,可以在https://modelscope.cn/models/qwen/Qwen-7B-Chat/summary找到。

为了进行本地化部署,我使用了以下服务器环境:python3.8、tensorflow和torch 2.0.1。

首先,我通过以下命令安装了所需的依赖项:

pip3 install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple

接下来,我安装了阿里云提供的modelscope环境:

pip install modelscope

然后,我从modelscope上克隆了qwen-7b-chat模型的代码库:

git clone https://www.modelscope.cn/qwen/Qwen-7B-Chat.git

现在,我将介绍如何使用这些工具和模型进行本地化部署。首先,我们需要导入所需的模块:

from modelscope import AutoModelForCausalLM, AutoTokenizer
from modelscope import GenerationConfig

AutoTokenizer类可以从预训练模型的名称或路径中自动加载相应的分词器。我们可以使用以下代码加载预训练的分词器:

tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen-7B-Chat")

接下来,我们使用AutoModelForCausalLM类来加载预训练的模型。该类可以根据指定的名称或路径加载模型,并支持选择设备映射(CPU或GPU)以及是否信任远程代码。以下是加载模型的示例代码:

model = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen-7B-Chat",
    device_map="auto",
    trust_remote_code=True
)

最后,我们可以使用加载的模型进行聊天交互。以下是一个示例代码片段,演示如何使用模型进行对话:

response, history = model.chat(tokenizer, "你好", history=None)
print(response)  # 打印生成的回复内容

参考地址:https://modelscope.cn/models/qwen/Qwen-7B-Chat/summary

https://modelscope.cn/docs/%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85

留言

您的电子邮箱地址不会被公开。 必填项已用 * 标注