香橙派 RK3588 部署千问大模型 Qwen2-VL-2B 多轮交互式对话
演示视频
香橙派 RK3588 部署千问大模型 Qwen2-VL-2B 多轮交互式对话
一、前期准备:检查 NPU 内核版本
-
版本要求:需保证 NPU 内核为 v0.9.8 版本
-
查询与更新方法:参考链接
https://blog.csdn.net/lajuchenghui/article/details/150034410
二、相关资源链接
-
rkllm 项目地址
https://github.com/airockchip/rknn-llm
-
预转换模型下载(避免 PC 配置限制)
-
链接:https://console.box.lenovo.com/l/l0tXb8
-
提取码:rkllm
三、核心文件说明
1. 模型文件(来自预转换模型包)
-
rkllm_model_zoo/1.1.4/RK3588/Qwen2-VL-2B_Demo/Qwen2-VL-2B_llm_w8a8_rk3588.rkllm
-
rkllm_model_zoo/1.1.4/RK3588/Qwen2-VL-2B_Demo/Qwen2-VL-2B_vision_rk3588.rknn
2. 关键脚本(位于rknn-llm/scripts/
)
-
监控 CPU 峰值:
eval_perf_watch_cpu.sh
-
监控 NPU 峰值:
eval_perf_watch_npu.sh
-
性能调优(将 CPU、NPU、GPU、DDR 参数调至最高):
fix_freq_rk3588.sh
四、源码编译步骤
1. 修改编译脚本
路径:rknn-llm/examples/Multimodal_Interactive_Dialogue_Demo/``build-linux.sh
将原本的交叉编译修改为本地编译,内容如下:
cmake .. -DCMAKE\_CXX\_COMPILER=/usr/bin/g++ \-DCMAKE\_C\_COMPILER=/usr/bin/gcc \-DCMAKE\_BUILD\_TYPE=Release \-DCMAKE\_SYSTEM\_NAME=Linux \-DCMAKE\_SYSTEM\_PROCESSOR=aarch64 \
2. 编译输出路径
rknn-llm/examples/Multimodal_Interactive_Dialogue_Demo/install/demo_Linux_aarch64
3. 生成的可执行程序
demo
五、运行步骤
- 先调优性能:执行频率调优脚本
./fix\_freq\_rk3588.sh
- 运行程序(需指定图片、模型及参数)
./demo demo.jpg ./Qwen2-VL-2B\_vision\_rk3588.rknn ./Qwen2-VL-2B\_llm\_w8a8\_rk3588.rkllm 2048 4096
六、交互示例
输出内容
\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*可输入以下问题对应序号获取回答/或自定义输入\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\[0] \<image>这张图片中有什么?\[1] 图片中地球是什么颜色的?\[2] 图片中月球表面是什么颜色的?\[3] 图片中星空是什么颜色的?\[4] 结合图片,说明下月球和地球表面颜色相同吗,为什么?\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
对话记录
-
user: 0这张图片中有什么?
robot: 这张图片展示了一位宇航员坐在月球上,手里拿着一瓶绿色的啤酒。背景是地球和星空,给人一种在太空中享受饮料的感觉。
-
user: 1
图片中地球是什么颜色的?
robot: 图片中的地球是绿色和黄色相间的。
-
user: 2
图片中月球表面是什么颜色的?
robot: 图片中的月球表面是灰色和黑色相间的。
-
user: 3
图片中星空是什么颜色的?
robot: 图片中的星空是蓝色和白色的相间。
-
user: 4
结合图片,说明下月球和地球表面颜色相同吗,为什么?
robot: 不是的。月球表面是灰色和黑色相间的,而地球表面则是绿色和黄色相间的。这是因为月球没有大气层,所以看起来像是灰色;而地球有大气层,所以看起来像是绿色和黄色相间。