280 lines
11 KiB
Markdown
280 lines
11 KiB
Markdown
## 🧠 Giới thiệu về `llama.cpp`
|
||
|
||
[`llama.cpp`](https://github.com/ggerganov/llama.cpp) là một phần mềm mã nguồn mở được viết bằng C/C++, cho phép chạy các mô hình ngôn ngữ lớn như LLaMA 1/2, Mistral, Falcon… hoàn toàn **offline**, **không cần GPU**, và **tối ưu để chạy trên CPU** – kể cả trên các thiết bị nhỏ như SBC (Single Board Computer), đặc biệt là Orange Pi như Orange Pi RV2 (RISC-V 64-bit)
|
||
|
||
Điểm mạnh của `llama.cpp`:
|
||
|
||
- Hỗ trợ nhiều định dạng mô hình `.gguf` hiệu quả
|
||
|
||
- Hỗ trợ OpenBLAS, SIMD, AVX, NEON
|
||
|
||
- Có thể chạy tốt trên các thiết bị ARM, x86, RISC-V với bộ nhớ giới hạn
|
||
|
||
- Hữu ích cho các dự án AI edge/offline không cần đám mây.
|
||
|
||
|
||

|
||
|
||
# Các bước cài đặt
|
||
|
||
## 🛠️ Bước 1: Cài đặt compiler RISC-V
|
||
|
||
**llama.cpp** yêu cầu compile C phiên bản 14, nếu bạn cài HDH Ubuntu 24.04 sẵn của hãng, bạn chỉ có bản version 12, do đó phải cài bản 14 cho phù hợp
|
||
|
||
`sudo apt install gcc-14-riscv64-linux-gnu g++-14-riscv64-linux-gnu
|
||
|
||
sudo apt install libc6-riscv64-cross`
|
||
|
||
* * *
|
||
|
||
## 📥 Bước 2: Tải mã nguồn llama.cpp
|
||
|
||
`git clone https://github.com/ggml-org/llama.cpp && cd llama.cpp
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
## ⚙️ Bước 3: Cấu hình `cmake` để compile cho RISC-V
|
||
|
||
`cmake -DCMAKE_SYSTEM_NAME=Linux \
|
||
|
||
-DCMAKE_C_COMPILER=/usr/bin/riscv64-linux-gnu-gcc-14 \
|
||
|
||
-DCMAKE_CXX_COMPILER=/usr/bin/riscv64-linux-gnu-g++-14 \
|
||
|
||
.
|
||
|
||
`
|
||
|
||
Nếu gặp lỗi, hãy cấu hình lại GCC mặc định:
|
||
|
||
`sudo update-alternatives --install \
|
||
|
||
/usr/bin/riscv64-linux-gnu-gcc riscv64-linux-gnu-gcc /usr/bin/riscv64-linux-gnu-gcc-14 100`
|
||
|
||
`sudo update-alternatives --install \
|
||
|
||
/usr/bin/riscv64-linux-gnu-g++ riscv64-linux-gnu-g++ /usr/bin/riscv64-linux-gnu-g++-14 100`
|
||
|
||
`sudo update-alternatives --config riscv64-linux-gnu-gcc`
|
||
|
||
* * *
|
||
|
||
## 🧱 Bước 4: Cài thư viện OpenBLAS và build
|
||
|
||
`sudo apt-get install libopenblas-dev
|
||
|
||
make LLAMA_OPENBLAS=1 # Bật tăng tốc OpenBLAS
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
## 🧠 Bước 5: Chọn mô hình phù hợp
|
||
|
||
| Thiết bị | RAM | Mô hình đề xuất | Ghi chú |
|
||
| --- | --- | --- | --- |
|
||
| Orange Pi RV2 (4GB RAM) | 4GB | ✅ **TinyLlama 1.1B**, Phi-2 Q4 | Nhẹ, tốc độ nhanh, đủ cho tác vụ đơn giản |
|
||
| Orange Pi RV2 (8GB RAM) | 8GB | ✅ **LLaMA-2 7B Chat Q4\_K\_M**, Mistral Q4\_K\_M | Cần tối ưu zram/swap để không bị thiếu bộ nhớ |
|
||
|
||
* * *
|
||
|
||
## 📦 Bước 6: Tải mô hình `.gguf`
|
||
|
||
### 👉 Dành cho Orange Pi RV2 4GB:
|
||
|
||
`mkdir -p models/tinyllama-1.1b-chat`
|
||
|
||
`cd models/tinyllama-1.1b-chat
|
||
|
||
wget https://huggingface.co/TheBloke/TinyLlama-1.1B-Chat-v1.0-GGUF/resolve/main/tinyllama-1.1b-chat-v1.0.Q2_K.gguf
|
||
|
||
`
|
||
|
||
### 👉 Dành cho Orange Pi RV2 8GB:
|
||
|
||
`mkdir -p models/llama-2-7b-chat
|
||
|
||
cd models/llama-2-7b-chat
|
||
|
||
wget https://huggingface.co/TheBloke/Llama-2-7B-Chat-GGUF/resolve/main/llama-2-7b-chat.Q4_K_M.gguf
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
## 🧪 Bước 7: Chạy thử mô hình
|
||
|
||
`./bin/llama-cli -m ./models/tinyllama-1.1b-chat/tinyllama-1.1b-chat-v1.0.Q2_K.gguf -p "What is the capital of France?" -n 64
|
||
|
||
`
|
||
|
||
Hoặc với LLaMA 2 7B:
|
||
|
||
`./bin/llama-cli -m ./models/llama-2-7b-chat/llama-2-7b-chat.Q4_K_M.gguf -p "Tell me a joke." -n 64
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
## 📊 Bước 8: Benchmark hiệu năng
|
||
|
||
`./bin/llama-bench -m ./models/tinyllama-1.1b-chat/tinyllama-1.1b-chat-v1.0.Q2_K.gguf -t 8 -n 128
|
||
|
||
`
|
||
|
||
Hoặc:
|
||
|
||
`./bin/llama-bench -m ./models/llama-2-7b-chat/llama-2-7b-chat.Q4_K_M.gguf -t 4 -n 128
|
||
|
||
`
|
||
|
||
> `-t`: số luồng CPU (nên = số lõi thực), `-n`: số lượng token
|
||
|
||
* * *
|
||
|
||
## 🧩 Bước 9: Tối ưu bộ nhớ bằng zram hoặc swap (khuyến nghị cho 8GB)
|
||
|
||
Các mô hình như LLaMA-2 7B yêu cầu nhiều RAM, nên nếu bị lỗi `killed` khi chạy, bạn nên kích hoạt zram hoặc swap để tránh quá tải bộ nhớ.
|
||
|
||
### ✅ Cài zram (ưu tiên)
|
||
|
||
`sudo apt install zram-tools
|
||
|
||
`
|
||
|
||
Sau đó chỉnh file cấu hình (nếu có):
|
||
|
||
`sudo nano /etc/default/zramswap
|
||
|
||
`
|
||
|
||
Đảm bảo dòng sau có:
|
||
|
||
`PERCENT=100 # Sử dụng 100% RAM làm zram (tuỳ chỉnh)
|
||
|
||
`
|
||
|
||
Khởi động lại dịch vụ:
|
||
|
||
`sudo systemctl restart zramswap
|
||
|
||
`
|
||
|
||
Kiểm tra:
|
||
|
||
`swapon --show
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
### ✅ Hoặc tạo swap thủ công
|
||
|
||
`sudo fallocate -l 4G /swapfile
|
||
|
||
sudo chmod 600 /swapfile
|
||
|
||
sudo mkswap /swapfile
|
||
|
||
sudo swapon /swapfile
|
||
|
||
`
|
||
|
||
Thêm vào `/etc/fstab` để tự động bật mỗi lần khởi động:
|
||
|
||
`echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
|
||
|
||
`
|
||
|
||
* * *
|
||
|
||
## ✅ Kết luận
|
||
|
||
Với `llama.cpp`, bạn hoàn toàn có thể triển khai AI offline ngay trên thiết bị Orange Pi RV2. Dù là 4GB hay 8GB, chỉ cần chọn mô hình phù hợp và tối ưu bộ nhớ tốt, bạn đã có một hệ thống AI mini cho riêng mình.
|
||
|
||
[Chia sẻ trên WhatsApp](whatsapp://send?text=H%C6%B0%E1%BB%9Bng%20d%E1%BA%ABn%20c%C3%A0i%20%C4%91%E1%BA%B7t%20v%C3%A0%20ch%E1%BA%A1y%20LLaMA.CPP%20tr%C3%AAn%20Orange%20Pi%20RV2%20%28RISC-V%2064-bit%29%20-%20https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html "Chia sẻ trên WhatsApp")[Chia sẻ trên Facebook](https://www.facebook.com/sharer.php?u=https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html "Chia sẻ trên Facebook")[Chia sẻ trên Twitter](https://twitter.com/share?url=https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html "Chia sẻ trên Twitter")[Gửi email cho bạn bè](mailto:?subject=H%C6%B0%E1%BB%9Bng%20d%E1%BA%ABn%20c%C3%A0i%20%C4%91%E1%BA%B7t%20v%C3%A0%20ch%E1%BA%A1y%20LLaMA.CPP%20tr%C3%AAn%20Orange%20Pi%20RV2%20%28RISC-V%2064-bit%29&body=Xem%20n%C3%A0y%3A%20https%3A%2F%2Forangepi.vn%2Fhuong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html "Gửi email cho bạn bè")[Ghim trên Pinterest](https://pinterest.com/pin/create/button?url=https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html&media=https://orangepi.vn/wp-content/uploads/2025/06/Cai-dat-LLAMACPP-tren-Orange-Pi-RV2-1-800x800.webp&description=H%C6%B0%E1%BB%9Bng%20d%E1%BA%ABn%20c%C3%A0i%20%C4%91%E1%BA%B7t%20v%C3%A0%20ch%E1%BA%A1y%20LLaMA.CPP%20tr%C3%AAn%20Orange%20Pi%20RV2%20%28RISC-V%2064-bit%29 "Ghim trên Pinterest")[Chia sẻ trên LinkedIn](https://www.linkedin.com/shareArticle?mini=true&url=https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html&title=H%C6%B0%E1%BB%9Bng%20d%E1%BA%ABn%20c%C3%A0i%20%C4%91%E1%BA%B7t%20v%C3%A0%20ch%E1%BA%A1y%20LLaMA.CPP%20tr%C3%AAn%20Orange%20Pi%20RV2%20%28RISC-V%2064-bit%29 "Chia sẻ trên LinkedIn")
|
||
|
||

|
||
|
||
##### superadmin
|
||
|
||
### Để lại một bình luận [Hủy](https://orangepi.vn/huong-dan-cai-dat-va-chay-llama-cpp-tren-orange-pi-rv2-risc-v-64-bit.html\#respond)
|
||
|
||
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 \*
|
||
|
||
Bình luận \*
|
||
|
||
Tên \*
|
||
|
||
Email \*
|
||
|
||
Trang web
|
||
|
||
Δ
|
||
|
||
- Tìm kiếm:
|
||
|
||
- [Orange Pi Việt Nam](https://orangepi.vn/)
|
||
- [Giới thiệu về máy tính nhúng](https://orangepi.vn/gioi-thieu-ve-may-tinh-nhung)
|
||
- [Hướng dẫn đặt hàng](https://orangepi.vn/dat-hang-tai-orange-pi-viet-nam)
|
||
- [Chính sách Bảo hành](https://orangepi.vn/chinh-sach-ban-hang-va-bao-hanh)
|
||
- [Thư ủy quyền phân phối tại Việt Nam](https://orangepi.vn/thu-uy-quyen-phan-phoi-tai-viet-nam)
|
||
- [Chính sách bảo mật](https://orangepi.vn/chinh-sach-bao-mat)
|
||
- [Liên hệ](https://orangepi.vn/lien-he)
|
||
- [Shop](https://orangepi.vn/shop)
|
||
- [Bo Mạch Orange Pi](https://orangepi.vn/danh-muc-san-pham/bo-mach-orange-pi)
|
||
- [Chip H3](https://orangepi.vn/tu-khoa-san-pham/chip-h3)
|
||
- [Chip H6](https://orangepi.vn/tu-khoa-san-pham/chip-h6)
|
||
- [RK3399](https://orangepi.vn/tu-khoa-san-pham/chip-rk3399)
|
||
- [RK3588, RK3566](https://orangepi.vn/tu-khoa-san-pham/rk3588)
|
||
- [Chip H616, H618](https://orangepi.vn/tu-khoa-san-pham/chip-h616)
|
||
- [Allwinner A733](https://orangepi.vn/tu-khoa-san-pham/allwinner-a733)
|
||
- [RAM 1GB](https://orangepi.vn/tu-khoa-san-pham/ram-1gb)
|
||
- [RAM 2GB](https://orangepi.vn/tu-khoa-san-pham/ram-2gb)
|
||
- [RAM 4GB](https://orangepi.vn/tu-khoa-san-pham/ram-4gb)
|
||
- [RAM 6GB](https://orangepi.vn/tu-khoa-san-pham/ram-6gb)
|
||
- [RAM 8GB](https://orangepi.vn/tu-khoa-san-pham/ram8gb)
|
||
- [Phụ kiện Orange Pi](https://orangepi.vn/danh-muc-san-pham/phu-kien-orange-pi)
|
||
- [Màn hình](https://orangepi.vn/tu-khoa-san-pham/man-hinh)
|
||
- [Vỏ Mica lắp ghép](https://orangepi.vn/tu-khoa-san-pham/vo-mica)
|
||
- [Vỏ thép kiêm tản nhiệt](https://orangepi.vn/tu-khoa-san-pham/vo-thep)
|
||
- [Vỏ nhôm nhẹ tản nhiệt tốt](https://orangepi.vn/tu-khoa-san-pham/vo-nhom)
|
||
- [Nguồn Orange Pi](https://orangepi.vn/tu-khoa-san-pham/nguon-orange-pi)
|
||
- [Thẻ nhớ microSD](https://orangepi.vn/tu-khoa-san-pham/the-nho-microsd)
|
||
- [Compute Module](https://orangepi.vn/tu-khoa-san-pham/compute-module)
|
||
- [Blog](https://orangepi.vn/blog)
|
||
- [Giới thiệu](https://orangepi.vn/category/gioi-thieu)
|
||
- [Hướng dẫn](https://orangepi.vn/category/huong-dan)
|
||
- [Trình diễn](https://orangepi.vn/category/trinh-dien)
|
||
- [Đăng nhập](https://orangepi.vn/my-account "Đăng nhập")
|
||
- [**Hotline: 0923449899**](tel:0923449899)
|
||
|
||
Bạn cần trợ giúp?
|
||
|
||
[Messenger](https://m.me/orangepivietnam "Messenger") [Zalo Official Account](https://oa.zalo.me/1687181280533723118 "Zalo Official Account") [Telegram](https://t.me/maytinhnhung "Telegram") [Whatsapp](https://api.whatsapp.com/send?phone=84923449899 "Whatsapp")
|
||
|
||

|
||
|
||
Orange Pi Việt NamNhà phân phối chính thức
|
||
|
||
Xin chào! 👋🏼👋🏼👋🏼 Tôi có thể giúp gì được bạn?
|
||
|
||
- [Hotline](tel:0923449899 "Hotline")
|
||
- [Facebook](https://www.facebook.com/orangepivietnam "Facebook")
|
||
- [Zalo](https://oa.zalo.me/1687181280533723118 "Zalo")
|
||
|
||
## Đăng nhập
|
||
|
||
Sign In - Google Accounts
|
||
|
||
Continue with GoogleContinue with Google. Opens in new tab
|
||
|
||
Tên tài khoản hoặc địa chỉ email \*Bắt buộc
|
||
|
||
Mật khẩu \*Bắt buộc
|
||
|
||
Ghi nhớ mật khẩuĐăng nhập
|
||
|
||
[Quên mật khẩu?](https://orangepi.vn/my-account/lost-password) |