diff --git "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/CPU\346\216\250\347\220\206\346\250\241\345\236\213\351\203\250\347\275\262\346\214\207\345\215\227.md" "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/CPU\346\216\250\347\220\206\346\250\241\345\236\213\351\203\250\347\275\262\346\214\207\345\215\227.md"
index 2a2b89cf04335d7f9b34f8b12bd143314bccaea4..03a109ae1d85162cb9ce7cfa6395df0c2568d54e 100644
--- "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/CPU\346\216\250\347\220\206\346\250\241\345\236\213\351\203\250\347\275\262\346\214\207\345\215\227.md"
+++ "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/CPU\346\216\250\347\220\206\346\250\241\345\236\213\351\203\250\347\275\262\346\214\207\345\215\227.md"
@@ -7,32 +7,67 @@ sysInfer是一款基于鲲鹏+openEuler的大模型推理加速框架,主要
## 环境准备
### 硬件要求
+以下以测试过程中的鲲鹏服务器为例,限定使用48核,单batch情况:
+
+#### 硬件格式
| 类型 | 硬件要求 |
|----------------| -----------------------------|
-| 服务器 | 1台 |
-| CPU | 鲲鹏>= 64 cores |
-| 内存 | >= 256 GB |
-| 内存带宽 | >= 100 GB/s |
+| 服务器 | 鲲鹏服务器 |
+| 处理器 | 鲲鹏处理器 |
+| 内存大小 | 512GB(16 * 32 GB) |
+| 内存数据传输速率 | 4800 MT/s |
+| 理论最大内存带宽 | 614.4 GB/s |
+| 理论时钟周期最大处理单精度浮点数 | 8 |
+| CPU socket | 2个 |
+| 多核 | 128/256(物理核/逻辑核) |
+| Numa节点 | 4 个 numa节点(编号0-3) |
+
+#### llama3-8B模型
+
+| 输入 + 输出token长度 | 平均token速率(token/s) |
+|----------------| -----------------------------|
+| 32 | 28.11 |
+| 64 | 27.66 |
+| 128 | 27.47 |
+| 256 | 26.87 |
+| 512 | 25.93 |
+| 1024 | 23.75 |
+| 2048 | 21.07 |
+| 4096 | 17.49 |
+
+#### Baichuan2-13B模型
+
+| 输入 + 输出token长度 | 平均token速率(token/s) |
+|----------------| -----------------------------|
+| 32 | 17.81 |
+| 64 | 17.57 |
+| 128 | 17.36 |
+| 256 | 17.04 |
+| 512 | 16.53 |
+| 1024 | 15.49 |
+| 2048 | 13.62 |
+| 4096 | 12.93 |
### 权重模型
-支持huggingface上的Baichuan2-13B和Llama3-8B等开源权重模型
+支持Transformer架构的开源大模型,例如Baichuan2和Llama3系列
```shell
+# 创建工作目录
mkdir -r /home/app
cd /home/app
-# 以Baichuan2-13B-Chat-GGUF为例
+# 下载Baichuan2-13B-Chat-GGUF
wget https://hf-mirror.com/second-state/Baichuan2-13B-Chat-GGUF/resolve/main/Baichuan2-13B-Chat-Q4_0.gguf
-# Llama3
+# 下载Llama3-8B
wget https://hf-mirror.com/shenzhi-wang/Llama3-8B-Chinese-Chat-GGUF-4bit/resolve/main/Llama3-8B-Chinese-Chat-q4_0-v2_1.gguf
```
### docker镜像拉取
```shell
-# oe_openai_server:0.0.1镜像
-docker pull hub.oepkgs.net/neocopilot/oe_openai_server@sha256:2c87870fc34754391b1160bc0478f2691d0d47e47bb5a5bc18d8ec352d73fcb3
+# 拉取oe_openai_server:0.0.1镜像
+docker pull hub.oepkgs.net/neocopilot/oe_openai_server@sha256:7d7d35e6e7a7eb43c31cebe093ae47b4f8fdcad67d36722b6e5a88522158f318
```
@@ -42,13 +77,13 @@ docker pull hub.oepkgs.net/neocopilot/oe_openai_server@sha256:2c87870fc34754391b
### 接口部署
```shell
-# 查看鲲鹏920系列服务器逻辑核分布情况,下面以鲲鹏920为例
+# 查看鲲鹏系列服务器逻辑核分布情况,下面以某鲲鹏服务器为例
lscpu
```
```shell
-# 以鲲鹏920为例进行绑核,逻辑核总数设置4的倍数,绑核按numa节点平均分配
+# 以鲲鹏服务器为例进行绑核,逻辑核总数设置numa节点的倍数,绑核按numa节点平均分配
docker run -it \
-v /home/app/Baichuan2-13B-Chat-Q4_0.gguf:/app/Baichuan2-13B-Chat-Q4_0.gguf \
-p 7860:7860 \
@@ -65,7 +100,8 @@ docker run -it \
```python
# request.py
from openai import OpenAI
-client = OpenAI(base_url="http://127.0.0.1:7860/v1")
+client = OpenAI(api_key="sk-",
+ base_url="http://127.0.0.1:7860/v1")
completion = client.chat.completions.create(
model="Baichuan2-13B-Chat-Q4_0",
@@ -81,3 +117,23 @@ for chunk in completion:
```
+
+
+接口测试成功返回如下图所示:
+
+
+
+## 对接EulerCopilot效果
+
+接入效果图1:
+
+
+
+接入效果图2:
+
+
+
+接入效果图3:
+
+
+
diff --git "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2761.png" "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2761.png"
new file mode 100644
index 0000000000000000000000000000000000000000..e59e8b669c3039341655eadd75ce1fda5cda1776
Binary files /dev/null and "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2761.png" differ
diff --git "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2762.png" "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2762.png"
new file mode 100644
index 0000000000000000000000000000000000000000..68ae1c7cb11e663cabbf1225b188fdfd628bf549
Binary files /dev/null and "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2762.png" differ
diff --git "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2763.png" "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2763.png"
new file mode 100644
index 0000000000000000000000000000000000000000..d90f6182fb6ec63f868a5c2598de73db093775f2
Binary files /dev/null and "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\216\245\345\205\245copilot\346\225\210\346\236\234\345\233\2763.png" differ
diff --git "a/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\265\213\350\257\225\346\216\245\345\217\243\346\210\220\345\212\237.png" "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\265\213\350\257\225\346\216\245\345\217\243\346\210\220\345\212\237.png"
new file mode 100644
index 0000000000000000000000000000000000000000..374c3a2cc0be67a012ef8bf0ddc7688f97702d79
Binary files /dev/null and "b/docs/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/pictures/CPU\346\216\250\347\220\206\351\203\250\347\275\262/\346\265\213\350\257\225\346\216\245\345\217\243\346\210\220\345\212\237.png" differ