使用启智平台调用Qwem、Internlm与Chatglm模型代码实战

实现效果和模型相关介绍

**通义千问-7B(Qwen-7B)**是阿里云研发的通义千问大模型系列的70亿参数规模的模型。Qwen-7B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样,覆盖广泛,包括大量网络文本、专业书籍、代码等。

本文旨在通过启智平台完成大模型的调用,由于本地环境受限无法运行成功,可以利用启智社区平台白嫖
GPU
算力,实现效果代码,代码由
github
官方文档获得:

参考链接:
github官方文档

from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation import GenerationConfig

# 可选的模型包括: "Qwen/Qwen-7B", "Qwen/Qwen-14B"
tokenizer = AutoTokenizer.from_pretrained("/code/qwen", trust_remote_code=True)

# 打开bf16精度,A100、H100、RTX3060、RTX3070等显卡建议启用以节省显存
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="auto", trust_remote_code=True, bf16=True).eval()
# 打开fp16精度,V100、P100、T4等显卡建议启用以节省显存
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="auto", trust_remote_code=True, fp16=True).eval()
# 使用CPU进行推理,需要约32GB内存
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="cpu", trust_remote_code=True).eval()
# 默认使用自动模式,根据设备自动选择精度
model = AutoModelForCausalLM.from_pretrained("/code/qwen", device_map="auto", trust_remote_code=True).eval()

# 可指定不同的生成长度、top_p等相关超参
model.generation_config = GenerationConfig.from_pretrained("/code/qwen", trust_remote_code=True)

inputs = tokenizer('蒙古国的首都是乌兰巴托(Ulaanbaatar)\n冰岛的首都是雷克雅未克(Reykjavik)\n埃塞俄比亚的首都是', return_tensors='pt')
inputs = inputs.to(model.device)
pred = model.generate(**inputs)
print(tokenizer.decode(pred.cpu()[0], skip_special_tokens=True))
# 蒙古国的首都是乌兰巴托(Ulaanbaatar)\n冰岛的首都是雷克雅未克(Reykjavik)\n埃塞俄比亚的首都是亚的斯亚贝巴(Addis Ababa)...

实现效果如下:

可以看出执行代码之后,输出会根据问题继续续写

在启智社区创建调试任务

登入启智社区AI创作平台

进入启智社区,社区网址如下:
OpenI 启智 新一代人工智能开源开放平台

找到ai创作平台,点击进入AI协作平台,首次登陆需要注册一下。

新建项目

在启智平台右上角找到创建项目

输入项目名称后完成创建

# 新建调试任务

打开新创建的项目,我这里项目名称为11111,点击云脑

在界面里面找到新建调试任务

基本设置如下,镜像我这里选择的是192.168.242.22:443/default-workspace/fccb038c23234b9e80105d4ccd152117/image:fedjudge

点击新建调试任务就能创建,一开始需要点击红色部分,等待状态变成running就可以进入界面了

实现代码

这是点击调试之后进入的界面,界面左侧此时只有一个文件master.zip,记住左边可以显示的文件目录在code下

进入终端输入如下命令

bash

cd code

wget -O qwen7b.zip 'https://s3.openi.org.cn/opendata/attachment/d/6/d6258166-a72b-46d3-8291-0ce2f94a8f86?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=1fa9e58b6899afd26dd3%2F20231025%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231025T124132Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3D%22Qwen-7B.zip%22&X-Amz-Signature=bedeb772c26057ba98b4268b14ddba49622940ed6c6c381e3e80d719affe98bc'
unzip -d qwen7b qwen7b.zip

模型我这里选择的是qwen7b模型,其他大模型类似,模型网址https://openi.pcl.ac.cn/Learning-Develop-Union/LangChain-ChatGLM-Webui/datasets,模型界面如下:

安心等待片刻,等左边出现文件qwen7b和qwen7b.zip说明下载解压成功

新建一个测试文件,接着打开终端输入如下指令:

bash

cd code

touch text.py

将代码复制到文件中,注意文件的路径为刚刚创建的路径

然后输入代码
python text.py
执行文件, 如果遇到报错,输入下面代码

pip install transformers_stream_generator

输入代码后在执行python text.py之后就能实现模型的调用了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值