VRxiaojie commited on
Commit
d83c7dc
·
verified ·
1 Parent(s): ecc2258

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +76 -11
README.md CHANGED
@@ -20,24 +20,89 @@ RKNN-Toolkit : 1.1.4
20
  Orange Pi5 8G
21
 
22
  # 如何部署
23
- 1. 首先在本地安装git fls
 
 
 
 
24
  ```
25
- git lfs install
26
  ```
27
- 2. clone本仓库
 
 
 
28
  ```
29
- git clone https://huggingface.co/VRxiaojie/DeepSeek-R1-Distill-Qwen-1.5B-RK3588S-RKLLM1.1.4
30
  ```
31
- 3. 将模型上传到香橙派5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  ```
33
  mkdir ~/rkllm && cd ~/rkllm
34
  ```
35
- 使用ADB或其他工具将`deepseek-r1-1.5B-rkllm1.1.4.rkllm` 上传至开发板的rkllm文件夹下
36
 
37
- 4. 生成llm_demo运行文件
38
- 参考RKLLM官方GitHub仓库文档[https://github.com/airockchip/rknn-llm/tree/main/doc](https://github.com/airockchip/rknn-llm/tree/main/doc)
39
- 编译生成llm_demo运行文件
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
 
41
- 或使用仓库中已编译好的文件
 
 
 
 
 
 
 
 
 
 
42
 
43
- 5. 调整提示词前后缀并启用提示词
 
20
  Orange Pi5 8G
21
 
22
  # 如何部署
23
+ ## 1. clone RKLLM仓库
24
+ 本节参考[RKLLM官方GitHub仓库文档](https://github.com/airockchip/rknn-llm/tree/main/doc)的**3.3节** 编译生成llm_demo运行文件
25
+
26
+ 首先在**PC**上clone官方git仓库
27
+
28
  ```
29
+ cd ~ && git clone https://github.com/airockchip/rknn-llm.git
30
  ```
31
+ 请确保PC能正常连接至GitHub!
32
+
33
+ ## 2. 生成llm_demo运行文件
34
+ 先进入rkllm_api_demo文件夹
35
  ```
36
+ cd rknn-llm/examples/rkllm_api_demo
37
  ```
38
+ 为了让模型正常工作,需要修改`llm_demo.cpp`的代码
39
+
40
+ ```
41
+ vi src/llm_demo.cpp
42
+ ```
43
+
44
+ 将第24 25行修改为
45
+ ```c
46
+ #define PROMPT_TEXT_PREFIX "<|im_start|>system\n你是一名通用对话助手,用中文回答问题,回答时必须展现严谨的逻辑思维,听从用户的命令<|im_end|>\n<|im_start|>user\n"
47
+ #define PROMPT_TEXT_POSTFIX "<|im_end|>\nChinese assistant\n"
48
+ ```
49
+
50
+ 你可以根据自己的需求自定义上面的提示词内容,只要修改PROMPT_TEXT_PREFIX的 `<|im_start|>system\n`到`<|im_end|>\n<|im_start|>user\n`之间的内容,
51
+
52
+ 或PROMPT_TEXT_POSTFIX里的`<|im_end|>\n`到结尾的`\n`之间的内容即可。
53
+
54
+ 将第184行取消注释
55
+ ```c
56
+ text = PROMPT_TEXT_PREFIX + input_str + PROMPT_TEXT_POSTFIX;
57
+ ```
58
+
59
+ 接着注释第185行
60
+ ```c
61
+ // text = input_str;
62
+ ```
63
+
64
+ 然后运行脚本文件
65
+ ```
66
+ bash ./build-linux.sh
67
+ ```
68
+
69
+ 在**开发板**创建rkllm文件夹
70
+
71
  ```
72
  mkdir ~/rkllm && cd ~/rkllm
73
  ```
 
74
 
75
+ 使用ADB或SFTP或其他方法将`build/build_linux_aarch64_Release/`下的`llm_demo`上传至开发板的`rkllm`文件夹内。
76
+
77
+ ## 3.上传librkllmrt.so运行库
78
+ 在开发板新建lib文件夹
79
+ ```
80
+ cd ~/rkllm && mkdir lib
81
+ ```
82
+ 使用ADB或SFTP或其他方法将`rknn-llm/rkllm-runtime/Linux/librkllm_api/aarch64`下的`librkllmrt.so`上传至开发板的`rkllm/lib`文件夹内。
83
+
84
+ ## 4. 在PC安装git fls
85
+ ```
86
+ git lfs install
87
+ ```
88
+ ## 5. 在PC clone本仓库
89
+ ```
90
+ git clone https://huggingface.co/VRxiaojie/DeepSeek-R1-Distill-Qwen-1.5B-RK3588S-RKLLM1.1.4
91
+ ```
92
+ ## 6. 将模型上传到开发板
93
+
94
+ 使用ADB或其他工具将`DeepSeek-R1-Distill-Qwen-1.5B-RK3588S-RKLLM1.1.4`文件夹内的`deepseek-r1-1.5B-rkllm1.1.4.rkllm` 上传至开发板刚刚创建的rkllm文件夹下
95
 
96
+ ## 7.模型推理
97
+ 首先指定库函数路径
98
+ ```
99
+ export LD_LIBRARY_PATH=./lib
100
+ ```
101
+
102
+ 运行llm_demo
103
+ ```
104
+ ./llm_demo ./deepseek-r1-1.5B-rkllm1.1.4.rkllm 2048 2048
105
+ ```
106
+ 用法:`./llm_demo model_path max_new_tokens max_context_len`
107
 
108
+ 等待几秒钟,等模型加载完毕后,在`user:`后输入对话内容即可。