1. Đặt vấn đề
Trong quá trình vận hành AI local, lỗi là điều khó tránh. Các lỗi thường gặp gồm model treo, request không trả lời, RAM đầy, VRAM đầy, ổ cứng đầy, API timeout, FAISS lỗi hoặc service không khởi động. Người quản trị cần có quy trình xử lý nhanh để khôi phục dịch vụ và tránh mất dữ liệu.
Điều quan trọng là không chỉ xử lý triệu chứng bằng cách reboot máy chủ. Cần xác định nguyên nhân: model quá lớn, prompt quá dài, nhiều request đồng thời, thiếu queue, log đầy ổ, batch embedding chạy sai thời điểm, RAG index lỗi hoặc GPU driver có vấn đề.
2. Lỗi treo model
Biểu hiện:
- Chatbot không trả lời.
- API chờ lâu.
- Ollama vẫn chạy nhưng request treo.
- GPU utilization cao kéo dài.
- Không có token trả về.
- Model không unload.
Các bước xử lý:
- Kiểm tra API có lỗi không.
- Kiểm tra Ollama:
systemctl status ollamaollama ps
- Kiểm tra GPU:
nvidia-smi- Xem log:
journalctl -u ollama -n 100- Nếu cần, restart Ollama:
sudo systemctl restart ollamaSau đó điều tra nguyên nhân.
3. RAM đầy
Kiểm tra:
free -hhtop
Biểu hiện:
- Hệ thống chậm.
- Swap tăng.
- API timeout.
- Process bị kill.
- Indexing chậm.
- Model CPU rất chậm.
Nguyên nhân có thể:
- Model quá lớn chạy CPU/offload.
- FAISS index lớn.
- Batch xử lý nhiều file.
- Nhiều container.
- Memory leak.
- Prompt/context quá dài.
- Nhiều request đồng thời.
Xử lý:
- Dừng tác vụ batch.
- Restart service lỗi.
- Giảm số worker.
- Giảm context.
- Dùng model nhỏ hơn.
- Tách tác vụ nền ra giờ thấp điểm.
- Kiểm tra memory leak.
4. VRAM đầy
Kiểm tra:
nvidia-smiBiểu hiện:
- Model không load.
- Lỗi out of memory.
- Request chậm do offload CPU.
- GPU VRAM gần tối đa.
- Nhiều model loaded cùng lúc.
Nguyên nhân:
- Model quá lớn.
- Context quá cao.
- Nhiều request đồng thời.
- Nhiều model giữ trong VRAM.
- Embedding/model khác dùng GPU.
- Batch chạy trùng giờ.
Xử lý:
- Dùng model nhỏ hơn.
- Giảm context.
- Giảm request đồng thời.
- Unload/restart Ollama nếu cần.
- Không chạy embedding batch giờ cao điểm.
- Tách model lớn cho nhóm hạn chế.
5. Ổ cứng đầy
Kiểm tra:
df -hdu -sh /var/log/*du -sh /duong/dan/modeldu -sh /duong/dan/rag
Biểu hiện:
- Không ghi được log.
- API lỗi.
- Database lỗi.
- Không tải được model.
- Không cập nhật FAISS.
- System service lỗi.
Nguyên nhân:
- Tải quá nhiều model.
- Log không xoay.
- Backup tăng vô hạn.
- File upload không xóa.
- FAISS index nhiều phiên bản.
- Tài liệu xử lý tạm không dọn.
- Docker image/container tích tụ.
Xử lý:
- Xóa model không dùng.
- Xoay/xóa log cũ theo chính sách.
- Xóa file tạm.
- Dọn Docker nếu có kiểm tra.
- Di chuyển backup sang ổ phù hợp.
- Tăng dung lượng hoặc chuyển dữ liệu sang phân vùng khác.
- Không xóa dữ liệu RAG/backup quan trọng khi chưa xác nhận.
6. API timeout
Nguyên nhân:
- Model chậm.
- Prompt quá dài.
- Queue quá tải.
- RAG truy xuất chậm.
- Ollama treo.
- CPU/RAM/GPU quá tải.
- Nginx timeout ngắn.
Xử lý:
- Kiểm tra latency từng bước.
- Tăng timeout hợp lý.
- Giảm prompt/context.
- Dùng streaming cho tác vụ phù hợp.
- Đưa tác vụ dài vào queue.
- Tối ưu RAG.
- Tách tác vụ dài khỏi API realtime.
7. FAISS hoặc metadata lỗi
Biểu hiện:
- RAG không trả nguồn.
- Trả nguồn sai.
- Lỗi mapping chunk.
- Chatbot báo không tìm thấy tài liệu.
- API lỗi khi query.
Xử lý:
- Kiểm tra file index tồn tại.
- Kiểm tra metadata database.
- Kiểm tra version index/metadata khớp.
- Restore bản backup gần nhất.
- Rebuild index nếu cần.
- Test bằng câu hỏi chuẩn.
8. Không reboot tùy tiện
Reboot có thể giải quyết tạm thời nhưng không xử lý nguyên nhân. Trước khi reboot, nên ghi nhận:
- Tình trạng RAM/VRAM.
- Process đang chạy.
- Log lỗi.
- Dung lượng ổ.
- Model loaded.
- Queue length.
Nếu reboot ngay, mất dấu vết điều tra.
9. Lập checklist xử lý sự cố
Nên có checklist:
- Xác định phạm vi lỗi.
- Kiểm tra service.
- Kiểm tra GPU/RAM/CPU.
- Kiểm tra ổ cứng.
- Kiểm tra log.
- Kiểm tra API.
- Khôi phục dịch vụ.
- Ghi nhận nguyên nhân.
- Đề xuất phòng ngừa.
- Cập nhật tài liệu vận hành.
10. Kết luận
Lỗi treo model, đầy RAM, đầy VRAM, đầy ổ cứng là các sự cố thường gặp trong AI local. Cần có quy trình kiểm tra và xử lý rõ, không chỉ reboot. Nguyên nhân thường liên quan model quá lớn, prompt/context quá dài, thiếu queue, batch chạy sai thời điểm, log/backup không kiểm soát hoặc dung lượng model tăng. Quản trị tốt là phát hiện sớm, xử lý nhanh và phòng ngừa tái diễn.
- Đăng nhập để gửi ý kiến