在不久前發布的《技術實戰 | OK3588-C開發板上部署DeepSeek-R1大模型的完整指南》一文中,小編為大家介紹了DeepSeek-R1在飛凌嵌入式OK3588-C開發板上的移植部署、效果展示以及性能評測,本篇文章不僅將繼續為大家帶來關于DeepSeek-R1的干貨知識,還會深入探討多種平臺的移植方式,并介紹更為豐富的交互方式,幫助大家更好地應用大語言模型。

1、移植過程
1.1 使用RKLLM-Toolkit部署至NPU
RKLLM-Toolkit是瑞芯微為大語言模型(LLM)專門開發的轉換與量化工具,可以將訓練好的模型轉化為適應瑞芯微平臺的RKLLM格式。該工具針對大語言模型進行了優化,使其能高效地在瑞芯微的NPU(神經網絡處理單元)上運行。上一篇文章中提到的部署方式即為通過RKLLM-Toolkit進行的NPU部署。具體步驟如下:
(1) 下載RKLLMSDK:
首先從GitHub下載RKLLMSDK包,并上傳至虛擬機。SDK下載鏈接:
[GitHub- airockchip/rknn-llm](https://github.com/airrockchip/rknn-llm)。

(2) Python版本檢查:
確保安裝的SDK版本與目標環境兼容(目前只支持python3.8或python3.10)。

(3) 準備虛擬機環境:
在虛擬機中安裝rkllm-toolkit輪子,輪子包路徑(rknn-llm-main\rkllm-toolkit)。
pipinstall rkllm_toolkit-1.1.4-cp38-cp38-linux_x86_64.whl |

(4) 下載模型:
選擇需要部署的DeepSeek-R1模型。
gitclonehttps://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B |

(5) 使用示例代碼進行模型轉換:
在rknn-llm-main\examples\DeepSeek-R1-Distill-Qwen-1.5B_Demo路徑下,使用RKLLM-Toolkit提供的示例代碼進行模型格式轉換。
pythongenerate_data_quant.py -m /path/to/DeepSeek-R1-Distill-Qwen-1.5B pythonexport_rkllm.py |

(6) 編譯可執行程序:
通過運行deploy下build-linux.sh腳本(將交叉編譯器路徑替換為實際路徑)直接編譯示例代碼。這將在目錄中生成一個文件夾,其中包含可執行文件和文件夾。

進行交叉編譯生成可執行文件。
./build-linux.sh |

(7) 部署模型:
將已編譯好的_W8A8_RK3588.rkllm文件和librkllmrt.so動態庫文件(路徑為:rknn-llm-main\rkllm-runtime\Linux\librkllm_api\aarch64 ),一同拷貝到編譯后生成的build_linux_aarch64_Release文件夾內,然后將此文件夾上傳到目標板端。
接著,為目標板端build_linux_aarch64_Release文件夾中的 llm_demo 文件添加執行權限并執行它。
chmod+x llm_demo ./llm_demo_W8A8_RK3588.rkllm 10000 10000 |

優勢與不足:
- 優勢:部署至NPU后,大語言模型能高效運行,性能表現優異,且對CPU資源的占用較少。
- 不足:相較于其他方法,部署過程稍顯復雜,需要較強的技術背景和經驗。
1.2 使用Ollama一鍵部署至CPU
Ollama是一個開源的本地化大型語言模型(LLM)運行框架,支持在本地環境下運行各種開源LLM模型(如LLaMA、Falcon等),并提供跨平臺支持(macOS、Windows、Linux)。
通過Ollama,用戶可以無需依賴云服務,輕松部署和運行各種大語言模型。盡管Ollama支持快速部署,但由于DeepSeek-R1尚未在RK3588芯片上進行優化,因此只能在CPU上運行,可能會占用較高的CPU資源。具體步驟如下:
(1) 下載Ollama:
根據需要下載并安裝Ollama,
curl-fsSL https://ollama.com/install.sh | sh |
若下載速度較慢,可參考以下鏡像方式進行加速。
curl-fsSL https://ollama.com/install.sh -o ollama_install.sh chmod+x ollama_install.sh sed-i 's|https://ollama.com/download/|https://github.com/ollama/ ollama/releases/download/v0.5.7/|'ollama_install.sh shollama_install.sh |

(2) 查看Ollama結果:
確認Ollama正確安裝,并運行相關命令查看部署結果。
Ollama--help |

(3) 下載DeepSeek-R1:
從Ollama官網渠道獲取下載DeepSeek-R1模型的指令。

(4) 運行DeepSeek-R1:
通過Ollama命令行接口啟動DeepSeek-R1模型。
ollamarun deepseek-r1:1.5b |

優勢與不足:
- 優勢:部署過程簡便快捷,適合快速測試和應用。
- 不足:因模型未針對RK3588優化,在CPU上運行時可能導致較高的CPU占用,影響性能。
2、在FCU3001平臺上部署其他大模型
除了DeepSeek-R1,Ollama還支持部署其他大語言模型,如通義千問(Qwen)等,這展示了Ollama的廣泛適用性。接下來,我們以通義千問為例,在飛凌嵌入式推出的一款搭載英偉達處理器的AI邊緣計算終端 FCU3001(基于NVIDIA Jetson Xavier NX處理器)上部署大語言模型:
FCU3001通過其強大的計算能力和優化的軟件支持,能夠高效地運行Ollama所支持的大語言模型,如通義千問。在部署過程中,我們可以充分利用Ollama提供的靈活性和易用性,確保大語言模型在FCU3001上穩定、流暢地運行。步驟如下:
(1) 安裝CUDA環境:
可以使用NVIDIA Jetson Xavier NX的GPU來運行模型。Ollama的安裝方法可以參考上述。
sudoapt update sudoapt upgrade sudoapt installnvidia-jetpack -y |
(2) 進入Ollama官網:
瀏覽Ollama支持的其他模型。

(3) 選擇版本:
從Ollama支持的模型列表中選擇千問Qwen1.8B版本。

(4) 運行模型:
在Ollama環境下,使用命令ollamarun qwen:1.8b啟動通義千問模型。
ollamarunqwen:1.8b |

3、交互方式
在前述的部署方式中,交互方式主要基于串口調試,缺少圖形界面,無法展示圖片、表單等元素,也不能呈現歷史對話。為了提升用戶體驗,我們可以通過集成ChatboxUI或WebUI等方式,提供更為豐富的交互體驗。
3.1 Chatbox UI
Chatbox是一款集成多種語言模型的AI助手工具,支持如ChatGPT、Claude等多種模型。它不僅具備本地數據存儲和多語言切換功能,還支持圖像生成、Markdown和LaTeX等格式,提供人性化的界面和團隊協作功能。Chatbox支持Windows、macOS、Linux系統,用戶可在本地快速實現對大語言模型的交互。步驟如下:
(1) 下載Chatbox:
從Chatbox官網(https://chatboxai.app/zh)下載適合的安裝包。

(2) 安裝并配置:
下載完成后是一個Chatbox-1.10.4-arm64.AppImage的文件,其實就是一個可執行文件,添加權限即可運行,就可以配置本地ollamaAPI下的LLM模型了。
chmod+x Chatbox-1.10.4-arm64.AppImage ./Chatbox-1.10.4-arm64.AppImage |


(3) 問答對話:
用戶可以通過直觀的圖形界面與模型進行交流,體驗更為便捷、流暢的交互。

演示效果圖4
3.2 Web UI
WebUI通過網頁或網絡應用提供圖形化用戶界面,使得用戶能夠輕松通過瀏覽器與大語言模型進行交互。用戶只需在瀏覽器中訪問相應的IP地址和端口號,即可進行實時提問。步驟如下:
(1) Web UI環境搭建:
配置WebUI所需的環境。WebUI建議使用python3.11版本。所以使用的Miniconda創建python==3.11虛擬環境。
安裝Miniconda
wgethttps://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh chmod+x Miniconda3-latest-Linux-aarch64.sh ./Miniconda3-lates |

搭建WebUI環境。
condacreate --name Web-Ui python=3.11 condaactivate Web-Ui pipinstall open-webui -i https://pypi.tuna.tsinghua.edu.cn/simple |
(2) 啟動WebUI:
使用open-webuiserve啟動WebUI應用,服務器的IP地址和端口號為0.0.0.0:8080。
open-webuiserve |
(3) 訪問WebUI:
在瀏覽器中輸入IP地址和端口號,打開WebUI界面,開始與大語言模型互動。
注冊賬號

4、總結
本文全面展示了OK3588-C開發板及FCU3001邊緣AI網關上大語言模型的多種移植方式,并介紹了如何通過ChatboxUI和WebUI等多種交互方式提升用戶體驗。
飛凌嵌入式推出了多款嵌入式AI產品,如OK3588-C、OK3576-C、OK-MX9352-C、OK536-C等開發板,還有AI邊緣計算終端FCU3001,算力范圍從0.5TOPS到21TOPS不等,可以滿足不同客戶的AI開發需求。如果您對這些產品感興趣,歡迎隨時與我們聯系,飛凌嵌入式將為您提供詳細的技術支持與指導。
-
嵌入式
+關注
關注
5147文章
19613瀏覽量
316433 -
移植
+關注
關注
1文章
396瀏覽量
28649 -
AI
+關注
關注
88文章
34868瀏覽量
277539 -
飛凌嵌入式
+關注
關注
3文章
101瀏覽量
492 -
AI大模型
+關注
關注
0文章
371瀏覽量
558
發布評論請先 登錄
飛凌嵌入式技術創新日(深圳站)精彩回顧
RK3588開發板上部署DeepSeek-R1大模型的完整指南
將Deepseek移植到i.MX 8MP|93 EVK的步驟
關于飛凌嵌入式
淺談飛凌公司嵌入式開發板的一鍵燒寫
新生態 智未來「飛凌嵌入式2025嵌入式及邊緣AI技術論壇」開啟報名!

飛凌嵌入式2025嵌入式及邊緣AI技術論壇圓滿結束

評論