Commit e61fbb53 authored by zhouxiang's avatar zhouxiang
Browse files

更新readme

parent 7889eeb3
Pipeline #557 failed with stages
in 0 seconds
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
## 模型介绍 ## 模型介绍
通义千问-7B(Qwen-7B) 是阿里云研发的通义千问大模型系列的70亿参数规模的模型。Qwen-7B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样,覆盖广泛,包括大量网络文本、专业书籍、代码等。同时,在Qwen-7B的基础上,使用对齐机制打造了基于大语言模型的AI助手Qwen-7B-Chat。 通义千问-7B(Qwen-7B) 是阿里云研发的通义千问大模型系列的70亿参数规模的模型。Qwen-7B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样,覆盖广泛,包括大量网络文本、专业书籍、代码等。同时,在Qwen-7B的基础上,使用对齐机制打造了基于大语言模型的AI助手Qwen-7B-Chat。
本项目主要针对Qwen-7B-Chat在DCU平台的推理性能优化,达到DCU平台较快的对话效果。 本项目主要针对Qwen-7B-Chat在DCU平台的推理性能优化,达到DCU平台较快的对话效果。)
## 模型结构 ## 模型结构
...@@ -15,12 +15,30 @@ Qwen-7B的构建采用了类似LLaMA的架构。与标准transformer的主要差 ...@@ -15,12 +15,30 @@ Qwen-7B的构建采用了类似LLaMA的架构。与标准transformer的主要差
## 模型推理 ## 模型推理
### 下载镜像 ### 环境准备
在光源可拉取推理的docker镜像,拉取方式如下: 在光源可拉取推理的docker镜像,拉取方式如下:
``` ```
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:glm-ft-v1.0 docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.13.1-centos7.6-dtk-23.04-py38-latest
```
### 容器启动
模型推理容器启动命令参考如下,用户根据需要修改:
```
# <container_name> 自定义容器名
# <project_path> 当前工程所在路径
docker run -it --name=<container_name> -v <project_path>:/work --device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined --cap-add=SYS_PTRACE --shm-size=16G --group-add 39 image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.13.1-centos7.6-dtk-23.04-py38-latest /bin/bash
```
### 加载环境
进入容器后执行如下命令,加载运行环境变量
```
source /opt/dtk-23.04/cuda/env.sh
``` ```
### 安装方法 ### 安装方法
...@@ -31,10 +49,12 @@ cd package ...@@ -31,10 +49,12 @@ cd package
python setup install python setup install
``` ```
### Qwen-7B-Chat原版模型转换 ### 模型转换
``` ```
# 为了精简镜像,光源镜像中未提供原版qwen模型运行所需要的依赖,模型转换需要将模型转换脚本qwen2flm.py移动到原版qwen-7b的运行环境中 # 为了精简镜像,光源镜像中未包含模型推理时不需要的原版qwen模型运行所需要的依赖,
# 如果有现成的原版qwen-7b的运行环境中,可以将模型转换脚本qwen2flm.py移动到原版qwen-7b的运行环境中,
# 也可以通过执行pip install -r requirements.txt安装模型转换所需依赖;
# 如果使用已经下载完成的模型或者自己finetune的模型需要修改qwen2flm.py文件中创建tokenizer, model时的模型存放路径 # 如果使用已经下载完成的模型或者自己finetune的模型需要修改qwen2flm.py文件中创建tokenizer, model时的模型存放路径
# 执行: # 执行:
python3 qwen2flm.py qwen-7b-fp16.bin float16 # 导出fp16模型,参数为导出的模型路径 python3 qwen2flm.py qwen-7b-fp16.bin float16 # 导出fp16模型,参数为导出的模型路径
...@@ -42,7 +62,7 @@ python3 qwen2flm.py qwen-7b-int8.bin int8 # 导出int8模型,参数为导 ...@@ -42,7 +62,7 @@ python3 qwen2flm.py qwen-7b-int8.bin int8 # 导出int8模型,参数为导
``` ```
### 运行Qwen-7B-Chat模型实例 ### 模型推理
``` ```
# 命令行聊天程序,使用了模型创建以及流式对话效果 # 命令行聊天程序,使用了模型创建以及流式对话效果
...@@ -52,6 +72,24 @@ python cli_demo.py -p qwen-7b-int8.bin ...@@ -52,6 +72,24 @@ python cli_demo.py -p qwen-7b-int8.bin
streamlit run web_demo.py qwen-7b-int8.bin streamlit run web_demo.py qwen-7b-int8.bin
``` ```
## 运行效果展示
![qwen推理](qwen推理.gif)
## 应用场景
### 算法类别
```
NLP,对话问答
```
### 热点应用行业
```
金融,教育,政府,交通等
```
## 源码仓库及问题反馈 ## 源码仓库及问题反馈
https://developer.hpccube.com/codes/modelzoo/qwen-7b_cpp https://developer.hpccube.com/codes/modelzoo/qwen-7b_cpp
......
# 模型唯一标识
modelCode = 411
# 模型名称 # 模型名称
modelName=qwen-7b modelName=qwen-7b_cpp
# 模型描述 # 模型描述
modelDescription=qwen-7b是阿里云研发的通义千问大模型系列的70亿参数规模的模型 modelDescription=qwen-7b是阿里云研发的通义千问大模型系列的70亿参数规模的模型
# 应用场景 # 应用场景
appScenario=聊天 appScenario=推理,NLP,金融,教育,政府,交通
# 框架类型 # 框架类型
frameType=cpp frameType=cpp
This image diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment