Quay lại danh sách
Tin tức công nghệ

Hướng dẫn tự host DeepSeek-R1 Distilled bằng vLLM trên VPS GPU giá rẻ và kết nối OpenWebUI

3 tháng 6, 2026

Giới thiệu xu hướng Self-hosting AI trong doanh nghiệp

Trong kỷ nguyên trí tuệ nhân tạo bùng nổ, việc tích hợp các mô hình ngôn ngữ lớn (LLM) vào quy trình vận hành kinh doanh không còn là điều xa lạ. Tuy nhiên, bài toán về chi phí vận hành và bảo mật dữ liệu nghiêm ngặt luôn là rào cản lớn đối với các doanh nghiệp khi sử dụng API thương mại bên thứ ba. Chính vì vậy, xu hướng self-hosting (tự triển khai trên hạ tầng riêng) đang trở thành lựa chọn chiến lược hàng đầu.

Bài viết này sẽ hướng dẫn bạn từng bước chi tiết để tự host dòng mô hình đang làm mưa làm gió thị trường: DeepSeek-R1 Distilled (các phiên bản được chắt lọc như 8B, 14B, hoặc 32B) bằng framework tối ưu hóa hiệu năng vLLM trên các nền tảng Cloud GPU giá rẻ như RunPod hoặc Vast.ai, sau đó kết nối với giao diện thân thiện OpenWebUI để sử dụng trong doanh nghiệp.

Tại sao lại chọn DeepSeek-R1, vLLM và RunPod/Vast.ai?

Để xây dựng một hệ thống AI nội bộ tối ưu, việc lựa chọn đúng công cụ trong hệ sinh thái là vô cùng quan trọng. Sự kết hợp dưới đây mang lại hiệu quả vượt trội về cả chi phí lẫn hiệu năng:

  • DeepSeek-R1 Distilled: Là phiên bản được chắt lọc kiến thức từ mô hình siêu lớn DeepSeek-R1 gốc sang kiến trúc của Llama hoặc Qwen. Các phiên bản này giữ được khả năng suy luận (reasoning) mạnh mẽ nhưng cấu hình phần cứng yêu cầu lại nhẹ hơn rất nhiều.
  • vLLM (Versatile LLM): Một thư viện mã nguồn mở siêu nhanh để phục vụ (serve) và deploy LLM. Nhờ thuật toán PagedAttention độc quyền, vLLM quản lý bộ nhớ KV cache cực tốt, giúp tăng throughput (tốc độ xử lý) lên gấp 2-4 lần so với các framework thông thường như Hugging Face Transformers.
  • RunPod / Vast.ai: Đây là các nền tảng cho thuê GPU theo dạng phi tập trung hoặc cloud linh hoạt với mức giá chỉ bằng 1/3 đến 1/5 so với các ông lớn như AWS, Google Cloud hay Azure. Bạn có thể thuê một GPU Nvidia RTX 3090, RTX 4090 hoặc A100 với giá chỉ từ vài mươi cent mỗi giờ.

Bước 1: Khởi tạo và cấu hình VPS GPU trên RunPod / Vast.ai

Đầu tiên, bạn cần chuẩn bị một môi trường máy chủ có hỗ trợ GPU phù hợp với kích thước mô hình bạn muốn chạy. Ví dụ, phiên bản DeepSeek-R1-Distill-Qwen-14B ở định dạng FP16 sẽ cần khoảng 28GB VRAM, do đó một GPU RTX 4090 (24GB VRAM) chạy định dạng lượng tử hóa (quantized) hoặc một GPU A100/A6000 sẽ là lựa chọn hoàn hảo.

  1. Đăng nhập vào tài khoản RunPod hoặc Vast.ai của bạn.
  2. Chọn tạo một instance mới (Deploy Server).
  3. Chọn Docker Image: Hãy chọn template có sẵn hỗ trợ sẵn CUDA như runpod/pytorch:2.1.0-py3.10-cuda11.8.0-devel-ubuntu22.04 hoặc các template Ubuntu sạch để tự cài đặt.
  4. Cấu hình dung lượng ổ đĩa (Disk Space): Đảm bảo bạn có ít nhất 50GB-100GB dung lượng trống để lưu trữ Docker images và các file trọng số của mô hình từ Hugging Face.
  5. Mở các cổng mạng (Ports): Hãy đảm bảo mở cổng 8000 (cho vLLM API) và cổng 3000 (nếu bạn muốn cài OpenWebUI trên cùng server đó).

Bước 2: Cài đặt và triển khai vLLM để Serve mô hình DeepSeek-R1

Sau khi SSH thành công vào server GPU vừa thuê, chúng ta sẽ tiến hành cài đặt môi trường và khởi chạy vLLM. Phương pháp tối ưu và sạch sẽ nhất là sử dụng Docker.

Cài đặt Docker và NVIDIA Container Toolkit

Nếu server chưa cài đặt bộ công cụ điều khiển GPU trong Docker, hãy chạy các lệnh sau:

Do mỗi nhà cung cấp VPS GPU có thể tích hợp sẵn driver khác nhau, bước này đảm bảo Docker trên máy của bạn có thể giao tiếp trực tiếp phần cứng GPU của NVIDIA.

Tiến hành chạy lệnh khởi tạo container vLLM với cấu hình tự động tải mô hình từ Hugging Face:

docker run --gpus all -d -p 8000:8000 
-v ~/.cache/huggingface:/root/.cache/huggingface 
--ipc=host 
vllm/vllm-openai:latest 
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B 
--max-model-len 4096

Trong lệnh trên, chúng ta ánh xạ cổng 8000 và yêu cầu vLLM tải phiên bản 14B của DeepSeek-R1. vLLM sẽ tự động cấu hình một endpoint tương thích hoàn toàn với cấu trúc API của OpenAI.

Bước 3: Triển khai giao diện OpenWebUI và kết nối hệ thống

OpenWebUI là giao diện người dùng thân thiện, giao diện trực quan tương tự như ChatGPT nhưng cho phép bạn kết nối trực tiếp với các nguồn API tự host.

Bạn có thể cài đặt OpenWebUI ngay trên một VPS thông thường khác để tiết kiệm chi phí, hoặc cài chung trên cùng một server GPU nếu server đó còn dư tài nguyên CPU/RAM. Chạy lệnh Docker sau để deploy OpenWebUI:

docker run -d -p 3000:8080 
-e OPENAI_API_BASE_URL=http://:8000/v1 
-e OPENAI_API_KEY=none 
--name open-webui 
--restart always 
ghcr.io/open-webui/open-webui:main

Hãy thay thế bằng địa chỉ IP công cộng của server chạy vLLM của bạn. Nếu cài cùng một máy, bạn có thể sử dụng IP mạng nội bộ của Docker hoặc [http://host.docker.internal:8000/v1](http://host.docker.internal:8000/v1).

Bước 4: Kiểm tra hiệu năng và tối ưu hóa chi phí vận hành

Sau khi hệ thống khởi chạy thành công, truy cập vào trình duyệt theo địa chỉ http://:3000, tạo tài khoản Admin đầu tiên và bạn sẽ thấy mô hình DeepSeek-R1 xuất hiện trong danh sách lựa chọn chat.

Để hệ thống hoạt động mượt mà và tối ưu hóa chi phí nhất, hãy lưu ý các điểm sau:

  • Sử dụng Quantization (Lượng tử hóa): Nếu tài nguyên VRAM hạn chế, bạn có thể truyền thêm tham số --quantization awq hoặc --quantization gptq vào lệnh vLLM để giảm dung lượng RAM tiêu thụ xuống một nửa mà chất lượng phản hồi hầu như không giảm.
  • Tắt server khi không sử dụng: Điểm mạnh của RunPod hay Vast.ai là tính năng tạm dừng (Stop/Pod Pause). Doanh nghiệp có thể tắt instance vào ban đêm và chỉ bật lại vào giờ làm việc để tiết kiệm tối đa chi phí.

Kết luận

Việc kết hợp giữa DeepSeek-R1 Distilled, vLLM và OpenWebUI mang lại một giải pháp AI nội bộ hoàn hảo: chi phí cực thấp, tốc độ xử lý siêu tốc nhờ PagedAttention, giao diện thân thiện với nhân viên và quan trọng nhất là bảo mật tuyệt đối luồng dữ liệu doanh nghiệp. Chúc các bạn cấu hình thành công!

Hướng dẫn tự host DeepSeek-R1 Distilled bằng vLLM trên VPS GPU giá rẻ và kết nối OpenWebUI | DPTCloud