博客專欄

EEPW首頁(yè) > 博客 > 從DeepSeek到Qwen,AI大模型的移植與交互實(shí)戰(zhàn)指南

從DeepSeek到Qwen,AI大模型的移植與交互實(shí)戰(zhàn)指南

發(fā)布人:秦徹dj 時(shí)間:2025-04-24 來源:工程師 發(fā)布文章

在不久前發(fā)布的技術(shù)實(shí)戰(zhàn) | OK3588-C開發(fā)板上部署DeepSeek-R1大模型的完整指南一文中,小編為大家介紹了DeepSeek-R1在飛凌嵌入式OK3588-C開發(fā)板上的移植部署、效果展示以及性能評(píng)測(cè),本篇文章不僅將繼續(xù)為大家?guī)黻P(guān)于DeepSeek-R1的干貨知識(shí),還會(huì)深入探討多種平臺(tái)的移植方式,并介紹更為豐富的交互方式,幫助大家更好地應(yīng)用大語(yǔ)言模型。

微信圖片_2025-04-24_105943_997.jpg

    1.1 使用RKLLM-Toolkit部署至NPU

    RKLLM-Toolkit是瑞芯微為大語(yǔ)言模型(LLM)專門開發(fā)的轉(zhuǎn)換與量化工具,可以將訓(xùn)練好的模型轉(zhuǎn)化為適應(yīng)瑞芯微平臺(tái)的RKLLM格式。該工具針對(duì)大語(yǔ)言模型進(jìn)行了優(yōu)化,使其能高效地在瑞芯微的NPU(神經(jīng)網(wǎng)絡(luò)處理單元)上運(yùn)行。上一篇文章中提到的部署方式即為通過RKLLM-Toolkit進(jìn)行的NPU部署。具體步驟如下:

    (1) 下載RKLLM SDK:

    首先從GitHub下載RKLLM SDK包,并上傳至虛擬機(jī)。SDK下載鏈接:

    [GitHub - airockchip/rknn-llm](https://github.com/airrockchip/rknn-llm)。

    微信圖片_2025-04-24_110202_221.png

    (2) Python版本檢查:

    確保安裝的SDK版本與目標(biāo)環(huán)境兼容(目前只支持python3.8或python3.10)

    微信圖片_2025-04-24_110241_086.png

    (3) 準(zhǔn)備虛擬機(jī)環(huán)境:

    在虛擬機(jī)中安裝rkllm-toolkit輪子,輪子包路徑(rknn-llm-main\rkllm-toolkit)。

    pip install rkllm_toolkit-1.1.4-cp38-cp38-linux_x86_64.whl

    微信圖片_2025-04-24_150004_904.png

    (4) 下載模型:

    選擇需要部署的DeepSeek-R1模型。

    git clone https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

    微信圖片_2025-04-24_110912_165.png

    (5) 使用示例代碼進(jìn)行模型轉(zhuǎn)換:

    rknn-llm-main\examples\DeepSeek-R1-Distill-Qwen-1.5B_Demo路徑下,使用RKLLM-Toolkit提供的示例代碼進(jìn)行模型格式轉(zhuǎn)換。

    python generate_data_quant.py -m /path/to/DeepSeek-R1-Distill-Qwen-1.5B
    python export_rkllm.py

    微信圖片_2025-04-24_111241_412.png

    (6) 編譯可執(zhí)行程序:

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

    微信圖片_2025-04-24_111314_165.png

    進(jìn)行交叉編譯生成可執(zhí)行文件。

    ./build-linux.sh

    微信圖片_2025-04-24_111358_004.png

    (7) 部署模型:

    將已編譯好的 _W8A8_RK3588.rkllm 文件和librkllmrt.so動(dòng)態(tài)庫(kù)文件(路徑為:rknn-llm-main\rkllm-runtime\Linux\librkllm_api\aarch64 ),一同拷貝到編譯后生成的 build_linux_aarch64_Release 文件夾內(nèi),然后將此文件夾上傳到目標(biāo)板端。

    接著,為目標(biāo)板端build_linux_aarch64_Release文件夾中的 llm_demo 文件添加執(zhí)行權(quán)限并執(zhí)行它。

    chmod +x llm_demo
    ./llm_demo _W8A8_RK3588.rkllm 10000 10000

    優(yōu)勢(shì)與不足:

    - 優(yōu)勢(shì):部署至NPU后,大語(yǔ)言模型能高效運(yùn)行,性能表現(xiàn)優(yōu)異,且對(duì)CPU資源的占用較少。

    - 不足相較于其他方法,部署過程稍顯復(fù)雜,需要較強(qiáng)的技術(shù)背景和經(jīng)驗(yàn)。

    1.2 使用Ollama一鍵部署至CPU

    Ollama是一個(gè)開源的本地化大型語(yǔ)言模型(LLM)運(yùn)行框架,支持在本地環(huán)境下運(yùn)行各種開源LLM模型(如LLaMA、Falcon等),并提供跨平臺(tái)支持(macOS、Windows、Linux)。

    通過Ollama,用戶可以無需依賴云服務(wù),輕松部署和運(yùn)行各種大語(yǔ)言模型。盡管Ollama支持快速部署,但由于DeepSeek-R1尚未在RK3588芯片上進(jìn)行優(yōu)化,因此只能在CPU上運(yùn)行,可能會(huì)占用較高的CPU資源。具體步驟如下:

    (1) 下載Ollama:

    根據(jù)需要下載并安裝Ollama,

    curl -fsSL https://ollama.com/install.sh | sh

    若下載速度較慢,可參考以下鏡像方式進(jìn)行加速。

    curl-fsSL https://ollama.com/install.sh -o ollama_install.sh
    chmod +x ollama_install.sh
    sed-i 's| 
    ollama/releases/download/v0.5.7/|'ollama_install.sh
    sh ollama_install.sh

    微信圖片_2025-04-24_111628_739.png

    (2) 查看Ollama結(jié)果:

    確認(rèn)Ollama正確安裝,并運(yùn)行相關(guān)命令查看部署結(jié)果。

    Ollama --help

    微信圖片_2025-04-24_111708_917.png

    (3) 下載DeepSeek-R1:

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

    微信圖片_2025-04-24_111944_860.png

    (4) 運(yùn)行DeepSeek-R1:

    通過Ollama命令行接口啟動(dòng)DeepSeek-R1模型。

    ollama run deepseek-r1:1.5b

    優(yōu)勢(shì)與不足:

    - 優(yōu)勢(shì):部署過程簡(jiǎn)便快捷,適合快速測(cè)試和應(yīng)用。

    - 不足:因模型未針對(duì)RK3588優(yōu)化,在CPU上運(yùn)行時(shí)可能導(dǎo)致較高的CPU占用,影響性能。

    2.在FCU3001平臺(tái)上部署其他大模型

    除了DeepSeek-R1,Ollama還支持部署其他大語(yǔ)言模型,如通義千問(Qwen)等,這展示了Ollama的廣泛適用性。接下來,我們以通義千問為例,在飛凌嵌入式推出的一款搭載英偉達(dá)處理器的AI邊緣計(jì)算終端 FCU3001(基于NVIDIA Jetson Xavier NX處理器)上部署大語(yǔ)言模型:

    FCU3001通過其強(qiáng)大的計(jì)算能力和優(yōu)化的軟件支持,能夠高效地運(yùn)行Ollama所支持的大語(yǔ)言模型,如通義千問。在部署過程中,我們可以充分利用Ollama提供的靈活性和易用性,確保大語(yǔ)言模型在FCU3001上穩(wěn)定、流暢地運(yùn)行。步驟如下:

    (1) 安裝CUDA環(huán)境:

    可以使用NVIDIA Jetson Xavier NX的GPU來運(yùn)行模型。Ollama的安裝方法可以參考上述。

    sudo apt  update  
    sudo apt upgrade
    sudo apt install nvidia-jetpack -y

    (2) 進(jìn)入Ollama官網(wǎng):

    瀏覽Ollama支持的其他模型。

    微信圖片_2025-04-24_112159_780.png

    (3) 選擇版本:

    從Ollama支持的模型列表中選擇千問Qwen 1.8B版本。

    微信圖片_2025-04-24_112225_837.png

    (4) 運(yùn)行模型:

    在Ollama環(huán)境下,使用命令ollama run qwen:1.8b啟動(dòng)通義千問模型。

    ollama run qwen:1.8b

    3.交互方式

    在前述的部署方式中,交互方式主要基于串口調(diào)試,缺少圖形界面,無法展示圖片、表單等元素,也不能呈現(xiàn)歷史對(duì)話。為了提升用戶體驗(yàn),我們可以通過集成ChatboxUI或Web UI等方式,提供更為豐富的交互體驗(yàn)。

    3.1 Chatbox UI

    Chatbox是一款集成多種語(yǔ)言模型的AI助手工具,支持如ChatGPT、Claude等多種模型。它不僅具備本地?cái)?shù)據(jù)存儲(chǔ)和多語(yǔ)言切換功能,還支持圖像生成、Markdown和LaTeX等格式,提供人性化的界面和團(tuán)隊(duì)協(xié)作功能。Chatbox支持Windows、macOS、Linux系統(tǒng),用戶可在本地快速實(shí)現(xiàn)對(duì)大語(yǔ)言模型的交互。步驟如下:

    (1) 下載Chatbox:

    從Chatbox官網(wǎng)(https://chatboxai.app/zh)下載適合的安裝包。

    微信圖片_2025-04-24_112554_246.png

    (2) 安裝并配置:

    下載完成后是一個(gè)Chatbox-1.10.4-arm64.AppImage的文件,其實(shí)就是一個(gè)可執(zhí)行文件,添加權(quán)限即可運(yùn)行,就可以配置本地ollama API下的LLM模型了。

    chmod +x Chatbox-1.10.4-arm64.AppImage
    ./Chatbox-1.10.4-arm64.AppImage

    (3) 問答對(duì)話:

    用戶可以通過直觀的圖形界面與模型進(jìn)行交流,體驗(yàn)更為便捷、流暢的交互。

    3.2 Web UI

    Web UI通過網(wǎng)頁(yè)或網(wǎng)絡(luò)應(yīng)用提供圖形化用戶界面,使得用戶能夠輕松通過瀏覽器與大語(yǔ)言模型進(jìn)行交互。用戶只需在瀏覽器中訪問相應(yīng)的IP地址和端口號(hào),即可進(jìn)行實(shí)時(shí)提問。步驟如下:

    (1) Web UI環(huán)境搭建:

    配置Web UI所需的環(huán)境。Web UI建議使用python3.11版本。所以使用的Miniconda創(chuàng)建python==3.11虛擬環(huán)境。

    安裝Miniconda

    wget			https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.shchmod
    			+x Miniconda3-latest-Linux-aarch64.sh./Miniconda3-lates

    微信圖片_2025-04-24_112746_739.png

    搭建Web UI環(huán)境。

    conda create --name Web-Ui python=3.11
    conda activate Web-Ui
    pip install open-webui -i https://pypi.tuna.tsinghua.edu.cn/simple

    (2) 啟動(dòng)Web UI:

    使用open-webui serve啟動(dòng)Web UI應(yīng)用,服務(wù)器的IP地址和端口號(hào)為0.0.0.0:8080。

    open-webui serve

    出現(xiàn)以下紅框信息證明啟動(dòng)成功。

    (3) 訪問Web UI:

    在瀏覽器中輸入IP地址和端口號(hào),打開Web UI界面,開始與大語(yǔ)言模型互動(dòng)。

    注冊(cè)賬號(hào)

    4.總結(jié)

    本文全面展示了OK3588-C開發(fā)板及FCU3001邊緣AI網(wǎng)關(guān)上大語(yǔ)言模型的多種移植方式,并介紹了如何通過Chatbox UI和Web UI等多種交互方式提升用戶體驗(yàn)。

    飛凌嵌入式推出了多款嵌入式AI產(chǎn)品,如OK3588-C、OK3576-C、OK-MX9352-C、OK536-C等開發(fā)板,還有AI邊緣計(jì)算終端FCU3001,算力范圍從0.5TOPS到21TOPS不等,可以滿足不同客戶的AI開發(fā)需求。如果您對(duì)這些產(chǎn)品感興趣,歡迎隨時(shí)與我們聯(lián)系,飛凌嵌入式將為您提供詳細(xì)的技術(shù)支持與指導(dǎo)。


    *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



    關(guān)鍵詞: 人工智能

    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉