!11 更新chatglm-cpp资料

From: @znzjugod 
Reviewed-by: @gaoruoshu 
Signed-off-by: @gaoruoshu
This commit is contained in:
openeuler-ci-bot 2023-12-19 07:59:58 +00:00 committed by Gitee
commit 50f784a8c9
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 33 additions and 8 deletions

View File

@ -1,7 +1,8 @@
# chatglm-cpp使用指南
## 介绍
chatglm-cpp是基于C/C++实现的ChatGLM大模型接口可以支持用户在消费者级别的CPU机器上完成开源大模型的部署和使用。
chatglm-cpp是基于C/C++实现的ChatGLM大模型接口可以支持用户在CPU机器上完成开源大模型的部署和使用。
chatglm-cpp支持多个中文开源大模型的部署如ChatGLM-6BChatGLM2-6BBaichuan-13B等。
## 软件架构
@ -13,7 +14,6 @@ chatglm-cpp核心架构分为两层
- 基于ggml的C/C++实现;
- 通过int4/int8量化、优化的KV缓存和并行计算等多种方式加速CPU推理
- 互动界面是流媒体生成,具有打字机效果;
- 可以启动web界面和api服务
- 无需 GPU可只用 CPU 运行。
## 安装教程
@ -32,21 +32,46 @@ yum install chatglm-cpp
```
2. 查看是否安装成功:
```
/usr/bin/chatglm_cpp_main -h
chatglm_cpp_main -h
```
若成功显示help信息则安装成功。
## 使用说明
1. 需要下载量化后的开源大模型如ChatGLM-6B、ChatGLM2-6B等。
2. 启动模型其中model_path为模型存放的路径
### 不使用容器
1. 需要安装chatglm-cpp软件包
```
/usr/bin/chatglm_cpp_main -m model_path -i
yum install chatglm-cpp
```
2. 需要下载开源大模型如ChatGLM-6B、ChatGLM2-6B等。并将下载的开源大模型通过chatglm_convert.py进行模型量化
```
python3 /usr/bin/chatglm_convert.py -i model_path/ -t q4_0 -o chatglm-ggml_1.bin
```
其中model_path为开源大模型的存放路径q4_0为开源大模型量化的精度chatglm-ggml_1.bin是输出的量化模型的名称。
3. 启动模型,进行对话:
```
chatglm_cpp_main -m model_path -i
```
其中model_path为量化模型的存放路径。
可通过以下命令查看命令行选项用法:
```
/usr/bin/chatglm_cpp_main -h
chatglm_cpp_main -h
```
### 使用容器
1. 拉取容器镜像:
```
docker pull hub.oepkgs.net/openeuler/chatglm_image
```
2. 运行容器镜像,进行对话:
```
docker run -it --security-opt seccomp=unconfined hub.oepkgs.net/openeuler/chatglm_image
```
### 正常启动界面
模型启动后的界面如图1所示
**图1** 模型启动界面
![输入图片说明](chatglm.png)
## 规格说明
本项目可支持在CPU级别的机器上进行大模型的部署和推理但是模型推理速度对硬件仍有一定的要求硬件配置过低可能会导致推理速度过慢降低使用效率。

BIN
chatglm.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB