Đã có bản fork LLaMA.CPP chạy bằng NPU trên RK3588

Để chạy các mô hình ngôn ngữ lớn (LLM) trên các bo mạch sử dụng SoC RK3588 như Orange Pi 5, 5B hay 5 Plus, 5 Pro  5 MAX, trước đây chúng ta vẫn dùng các phiên bản như RKLLAMA dựa trên OLLAMA hoặc phiên bản chạy RKLLM sử dụng Gradio. Mặc dù rất mong muốn chạy LLaMA.CPP trên Orange Pi bằng NPU để tối đa hiệu quả của bo mạch Edge AI này, nhưng vẫn chưa có mã nguồn nào đáp ứng việc này. Gần đây, thật tuyệt vời, có 1 bên đã chia sẻ mã nguồn trên github chạy LLaMA.CPP (invisiofficial/rk-llama.cpp) và thế là tôi đã nghiên cứu fork về để cài đặt và hướng dẫn các bạn cùng cài đặt để trải nghiệm LLM trên mã nguồn hiệu năng tốt nhất hiện nay này.

1. LLaMA.CPP là gì?

LLaMA.CPP là một thư viện mã nguồn mở giúp chạy các mô hình ngôn ngữ LLaMA và nhiều mô hình tương thích khác trực tiếp trên CPU với hiệu năng cao. Nó được viết bằng C++ với trọng tâm tối ưu hóa cho các thiết bị không có GPU mạnh, như máy tính cá nhân, laptop hoặc SBC (Single Board Computer). LLaMA.CPP sử dụng định dạng mô hình GGUF, cho phép nén, lượng tử hóa và tải mô hình nhanh hơn. Nhờ tối ưu hóa sâu, LLaMA.CPP có thể chạy mô hình AI ngay trên thiết bị cục bộ, không cần kết nối internet. Đây là lựa chọn phổ biến cho những ai muốn triển khai AI ngoại tuyến, nhẹ và dễ tích hợp vào ứng dụng.

RK-LLaMA.CPP là phiên bản code đã được chỉnh sửa từ mã nguồn LLaMA.CPP gốc, nhằm tích hợp hỗ trợ NPU của Rockchip (ví dụ Rockchip RK3588) làm backend cho thư viện GGML, để có thể chạy các mô hình LLM trên phần cứng Rockchip với tăng tốc NPU, tận dụng tối đa sức mạnh của các lõi NPU có trên chip Rockchip như RK3588 và RK3576. Sau khi build xong, cũng không cần phải dùng các mô hình model LLM đã convert thành RKLLM để chạy, mà có thể chạy trực tiếp các mô hình định dạng GGUF trên HuggingFace, cực kỳ tiện lợi.

✅ Những gì RK-LLaMA.CPP làm được

  • RK-LLaMA.CPP giữ gần như toàn bộ thiết kế gốc của LLaMA.CPP, nhưng thêm phần “backend NPU” — dùng NPU trên Rockchip (thường là RKNPU / RKNPU2) để thực hiện tính toán ma trận tuyến tính/linear algebra, thay vì chỉ CPU

  • Điều này giúp mô hình ngôn ngữ lớn (LLM) có thể “chạy mượt hơn” và khả thi hơn trên các thiết bị nhúng, thiết bị cận biên (edge devices), hoặc các máy ARM/Rockchip (ví dụ máy tính đơn bo mạch — SBC) mà không cần GPU rời.

  • Trong tương lai, việc tích hợp NPU vào LLaMA.CPP có thể “mở ra” khả năng deploy LLM trên các thiết bị cầm tay, thiết bị edge, nơi tiêu thụ điện năng thấp — điều mà dùng CPU đơn thuần rất khó đạt được.

2. Chuẩn bị cài đặt

Nếu các bạn theo dõi website Orange Pi Việt Nam, trước đây tôi cũng đã từng hướng dẫn các bạn cài đặt LLaMA.CPP trên Orange Pi RV2, một thiết bị sử dụng chip SoC RISC-V mạnh, tuy nhiên mặc dù RISC-V có khả năng tính toán cao hơn ARM nhiều, nhưng hiệu năng chạy LLaMA.CPP  cũng không thể bằng có NPU trên các chip Rockchip hỗ trợ

Hướng dẫn cài đặt và chạy LLaMA.CPP trên Orange Pi RV2 (RISC-V 64-bit)

Để có thể trải nghiệm LLaMA.CPP các bạn cần có bo mạch sử dụng các chip RK3588 hoặc RK3576, tôi khuyến nghị dùng Orange Pi 5 phiên bản 8GB để có thể load mô hình LLM tối thiểu 3B, nhưng nếu các bạn chỉ cần mô hình dạng 1B để trải nghiệm, các bạn có thể thử dùng Orange Pi 5 Plus 4GB RAM với chi phí ít hơn. Tất nhiên, tất cả các phiên bản trong Orange Pi 5 series đều có thể dùng được, thậm chí các mạch Compute Module như Orange Pi CM5 cũng chạy tốt. Nếu muốn dùng RK3576, các bạn có thể thử Firefly AI BOX mới được phân phối bởi chúng tôi tại đây.

Ngoài ra, bo mạch cần trang bị thêm tản nhiệt quạt để đề phòng việc chạy mô hình AI trở nên quá nóng, nguồn điện từ 4A trở lên như Nguồn USB type C 5v 4A chính hãng

Hãy sử dụng thẻ nhớ 64GB để có thể vừa cài được HDH, vừa tải được mã nguồn và lưu mô hình. Nếu muốn lưu nhiều mô hình hơn, hãy cân nhắc việc sử dụng các ổ cứng M2 SSD.

Giờ chúng ta bắt đầu.

3. Hướng dẫn cài đặt

Mã nguồn này được tôi chia sẻ công khai ở Github: https://github.com/thanhtantran/rk-llama.cpp

Các bạn có thể làm theo hướng dẫn trên đó hoặc theo video này.

Video hướng dẫn:

4. Kết luận

RK-LLaMA.CPP là một fork thực sự đáng chú ý nếu bạn muốn chạy LLM (theo định dạng GGML / GGUF) trên thiết bị dùng chip Rockchip với NPU, thay vì chỉ CPU. Nó mở ra khả năng dùng LLM trên các thiết bị nhúng, edge, hoặc board nhỏ — phù hợp cho chạy AI “gần sát phần cứng” mà không cần máy mạnh hoặc GPU, không cần kết nối Internet mà “tự thân vận động” với mô hình đã được đào tạo.

Chúc các bạn thành công!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *