RKLLM ile büyük dil modeli (DeepSeek-R1) çalıştırma
Banana Pi BPI-M7 · Hugging Face modelini RKLLM-Toolkit ile .rkllm formatına çevirip RK3588 NPU'da çalıştırma.
RKLLM yazılım yığını iki bölümden oluşur: bilgisayarda (x86_64) çalışan RKLLM-Toolkit Hugging Face formatındaki modelleri (LLaMA, Qwen, Phi2 vb.) w4a16/w8a8 olarak nicemleyip .rkllm dosyasına çevirir; kart üzerinde çalışan RKLLM Runtime ise bu modeli NPU sürücüsü aracılığıyla çalıştırır. Kaynak kod ve örnekler: https://github.com/ArmSoM/rknn-llm.
- Bilgisayarda miniforge3 ile Python 3.8 ortamı kurup Toolkit'i yükleyin:
conda create -n RKLLM-Toolkit python=3.8 conda activate RKLLM-Toolkit pip3 install rkllm_toolkit-1.0.0-cp38-cp38-linux_x86_64.whl - DeepSeek-R1-Distill-Qwen-1.5B model dosyalarını indirin.
- Nicemleme verisini üretip modeli dışa aktarın (RK3576 için
export_rkllm.pyiçindetarget_platform = "RK3576"venum_npu_core = 2yapın):cd rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/export python generate_data_quant.py -m /path/to/DeepSeek-R1-Distill-Qwen-1.5B python export_rkllm.py - Kart tarafı demoyu derleyip modeli karta gönderin (
build-linux.shiçindekiGCC_COMPILER_PATHdeğişkenini kendi çapraz derleyicinize göre ayarlayın):cd rknn-llm/examples/DeepSeek-R1-Distill-Qwen-1.5B_Demo/deploy ./build-linux.sh adb push install/demo_Linux_aarch64 /data adb push DeepSeek-R1-Distill-Qwen-1.5B-rk35**.rkllm /data/demo_Linux_aarch64 - Kartta çalıştırın:
adb shell cd /data/demo_Linux_aarch64 export LD_LIBRARY_PATH=./lib taskset f0 ./llm_demo ./DeepSeek-R1-Distill-Qwen-1.5B_W8A8_RK3576.rkllm 2048 4096
Notlar: DeepSeek için demo'daki senaryo istem metnini (prompt) kaldırın; terminalde karakter kodlamasına dikkat edin; kartta en az 8 GB RAM olmalı (çalışırken yaklaşık %70'i kullanılır). Hazır firmware çekirdeğindeki NPU sürücüsü RKLLM'i desteklemeyebilir; gerekirse çekirdeği güncelleyin.