update README and SERVICE
This commit is contained in:
@@ -45,8 +45,8 @@ huggingface_hub
|
||||
|
||||
| Model | Repo HuggingFace | Mô tả |
|
||||
|-------|-----------------|-------|
|
||||
| `gemma-4-E2B-it` | [google/gemma-4-E2B-it](https://huggingface.co/google/gemma-4-E2B-it) | Edge 2B — nhanh hơn, nhẹ hơn |
|
||||
| `gemma-4-E4B-it` | [google/gemma-4-E4B-it](https://huggingface.co/google/gemma-4-E4B-it) | Edge 4B — thông minh hơn, nặng hơn |
|
||||
| `gemma-4-E2B-it` | [litert-community/gemma-4-E2B-it-litert-lm](https://huggingface.co/litert-community/gemma-4-E2B-it-litert-lm) | Edge 2B — nhanh hơn, nhẹ hơn |
|
||||
| `gemma-4-E4B-it` | [litert-community/gemma-4-E4B-it-litert-lm](https://huggingface.co/litert-community/gemma-4-E4B-it-litert-lm) | Edge 4B — thông minh hơn, nặng hơn |
|
||||
|
||||
> **Lưu ý:** Nên dùng bản `-it` (instruction-tuned) cho chat/hỏi đáp. Bản không có `-it` là base model, chỉ predict token tiếp theo, không phù hợp để hội thoại.
|
||||
|
||||
@@ -54,25 +54,23 @@ huggingface_hub
|
||||
|
||||
```bash
|
||||
# Gemma 4 E2B (nhỏ hơn, ~nhanh hơn)
|
||||
huggingface-cli download google/gemma-4-E2B-it \
|
||||
hf download litert-community/gemma-4-E2B-it-litert-lm \
|
||||
--include '*.litertlm' \
|
||||
--local-dir models/
|
||||
|
||||
# Gemma 4 E4B (lớn hơn, ~thông minh hơn)
|
||||
huggingface-cli download google/gemma-4-E4B-it \
|
||||
hf download litert-community/gemma-4-E4B-it-litert-lm \
|
||||
--include '*.litertlm' \
|
||||
--local-dir models/
|
||||
```
|
||||
|
||||
> **Hoặc** để server tự động tải khi chọn model chưa có sẵn.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Hướng dẫn sử dụng
|
||||
|
||||
### Bước 1 — Tải ít nhất một model vào thư mục `models/`
|
||||
|
||||
Xem lệnh tải ở trên.
|
||||
|
||||
### Bước 2 — Chạy server
|
||||
### Cách 1: Chạy với tùy chọn mặc định
|
||||
|
||||
```bash
|
||||
python server.py
|
||||
@@ -92,18 +90,51 @@ Server sẽ hiển thị menu **chọn model** trước khi khởi động:
|
||||
Gemma 4 Edge 4B — thông minh hơn, chậm hơn
|
||||
✗ chưa tải
|
||||
|
||||
Chọn model (1/2):
|
||||
[3] Sử dụng model từ đường dẫn khác
|
||||
|
||||
Chọn model (1/2/3):
|
||||
```
|
||||
|
||||
Nếu model chưa được tải, server sẽ hiển thị lệnh `huggingface-cli download` tương ứng và hỏi có muốn chọn model khác không.
|
||||
**Tính năng tự động tải model:**
|
||||
- Nếu chọn model chưa có, server sẽ hỏi: `Bạn muốn tải model ngay bây giờ? (y/n)`
|
||||
- Chọn `y` để tự động tải từ Hugging Face
|
||||
- Hoặc chọn `n` để tải thủ công sau
|
||||
|
||||
### Bước 3 — Mở Web UI
|
||||
**Tự động xử lý port:**
|
||||
- Nếu port 8000 đã bị chiếm, server sẽ hỏi chọn port khác
|
||||
- Hoặc nhấn Enter để tự động tìm port khả dụng (8001-8999)
|
||||
|
||||
```
|
||||
http://<địa-chỉ-ip>:8000
|
||||
### Cách 2: Chạy với tham số command line
|
||||
|
||||
```bash
|
||||
# Chỉ định port
|
||||
python server.py --port 8080
|
||||
|
||||
# Chỉ định model từ đường dẫn
|
||||
python server.py --model /path/to/model.litertlm
|
||||
|
||||
# Kết hợp cả hai
|
||||
python server.py --port 8080 --model ~/models/gemma-4-E2B-it.litertlm
|
||||
|
||||
# Xem hướng dẫn đầy đủ
|
||||
python server.py --help
|
||||
```
|
||||
|
||||
Tên model đang chạy sẽ hiển thị trên header của Web UI.
|
||||
### Mở Web UI
|
||||
|
||||
```
|
||||
http://<địa-chỉ-ip>:<port>
|
||||
```
|
||||
|
||||
Tên model và port sẽ hiển thị khi server khởi động:
|
||||
|
||||
```
|
||||
====================================================
|
||||
🚀 Server đang khởi động...
|
||||
📍 URL: http://localhost:8000
|
||||
📦 Model: gemma-4-E2B-it.litertlm
|
||||
====================================================
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
@@ -307,6 +338,16 @@ curl -X DELETE http://localhost:8000/chat/$SESSION
|
||||
|
||||
## ⚙️ Cấu hình
|
||||
|
||||
### Tham số command line
|
||||
|
||||
| Tham số | Mô tả | Mặc định |
|
||||
|---------|-------|---------|
|
||||
| `--port`, `-p` | Port để chạy server | `8000` |
|
||||
| `--model`, `-m` | Đường dẫn đầy đủ tới file model .litertlm | None (chọn từ menu) |
|
||||
| `--help`, `-h` | Hiển thị hướng dẫn | - |
|
||||
|
||||
### Cấu hình trong code
|
||||
|
||||
Các tham số chỉnh trong đầu `server.py`:
|
||||
|
||||
| Biến | Mô tả | Mặc định |
|
||||
@@ -315,7 +356,6 @@ Các tham số chỉnh trong đầu `server.py`:
|
||||
| `AVAILABLE_MODELS` | Danh sách model + repo HuggingFace | xem trong file |
|
||||
| `backend` | Backend inference | `litert_lm.Backend.CPU` |
|
||||
| `host` | Địa chỉ lắng nghe | `0.0.0.0` |
|
||||
| `port` | Cổng | `8000` |
|
||||
|
||||
Để thêm model mới vào menu, bổ sung vào dict `AVAILABLE_MODELS` trong `server.py`:
|
||||
|
||||
@@ -323,7 +363,7 @@ Các tham số chỉnh trong đầu `server.py`:
|
||||
AVAILABLE_MODELS = {
|
||||
"gemma-4-E2B-it": {
|
||||
"file": "gemma-4-E2B-it.litertlm",
|
||||
"repo": "google/gemma-4-E2B-it",
|
||||
"repo": "litert-community/gemma-4-E2B-it-litert-lm",
|
||||
"desc": "Gemma 4 Edge 2B — nhỏ hơn, nhanh hơn",
|
||||
},
|
||||
"ten-model-moi": {
|
||||
@@ -340,6 +380,20 @@ AVAILABLE_MODELS = {
|
||||
engine = litert_lm.Engine(str(MODEL_PATH), backend=litert_lm.Backend.GPU)
|
||||
```
|
||||
|
||||
### Chạy như systemd service (Linux)
|
||||
|
||||
Xem hướng dẫn chi tiết trong [SERVICE_README.md](SERVICE_README.md)
|
||||
|
||||
```bash
|
||||
# Cài đặt service
|
||||
sudo bash install_service.sh
|
||||
|
||||
# Quản lý service
|
||||
sudo systemctl status litert-lm
|
||||
sudo systemctl restart litert-lm
|
||||
sudo journalctl -u litert-lm -f
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📝 Ghi chú
|
||||
|
||||
Reference in New Issue
Block a user