Hướng dẫn Linux

Chạy LLM cục bộ trên Linux: GPU, driver, công cụ và thiết lập

Hướng dẫn Linux thực tế để chạy local LLM với NVIDIA CUDA, AMD ROCm, Ollama, LM Studio, llama.cpp, định dạng mô hình, lập kế hoạch VRAM và an toàn máy chủ.

Linux rất mạnh mẽ, nhưng hỗ trợ driver quyết định trải nghiệm

Linux là một trong những môi trường mạnh nhất để thử nghiệm local LLM vì nó hoạt động tốt cho máy tính để bàn, workstation, homelab và máy chủ. Cùng một máy có thể chạy giao diện chat, máy chủ API cục bộ, tác vụ nền và tải mô hình. Nhưng trải nghiệm phụ thuộc rất nhiều vào hỗ trợ driver. Một GPU trông mạnh trên giấy có thể gây khó chịu nếu CUDA, ROCm, Vulkan hoặc backend được chọn không được cài đặt đúng cách.

Đối với người dùng NVIDIA, hỗ trợ CUDA thường là con đường rộng nhất trong các công cụ suy luận cục bộ. Đối với người dùng AMD, hỗ trợ ROCm có thể hoạt động tốt khi card, driver và bản phân phối tương thích, nhưng thường cần chú ý nhiều hơn. Máy Linux chỉ dùng CPU có thể chạy các mô hình nhỏ, nhưng tốc độ token thường sẽ thấp hơn. Vì vậy, Local LLM nên hỏi cả dung lượng phần cứng và loại hệ thống thay vì giả định rằng mọi máy Linux đều hoạt động giống nhau.

Chọn công cụ trước khi tải mô hình

Ollama là lựa chọn thực tế cho nhiều người dùng Linux vì nó cài đặt như một dịch vụ cục bộ, cung cấp API và xử lý việc kéo mô hình bằng một quy trình đơn giản. LM Studio có thể phù hợp với người dùng Linux muốn một ứng dụng desktop và trình duyệt mô hình đồ họa. llama.cpp là một lựa chọn mạnh cho người dùng muốn kiểm soát trực tiếp các tệp GGUF, cờ runtime, lớp GPU, thiết lập context và script. Người dùng máy chủ cũng có thể cân nhắc quy trình vLLM hoặc Transformers, nhưng đó là một nhóm khác so với suy luận desktop đơn giản.

Lựa chọn công cụ ảnh hưởng đến lựa chọn mô hình. Một tệp GGUF có thể lý tưởng cho suy luận kiểu llama.cpp nhưng không phải là định dạng tốt nhất cho mọi runtime máy chủ. Một repository chỉ có trọng số safetensors có thể hữu ích cho Transformers hoặc vLLM nhưng kém thuận tiện hơn cho người mới bắt đầu dùng GUI. Một đề xuất tốt không chỉ nên nói mô hình nào phù hợp, mà còn nên cho biết định dạng tệp có sẵn có thân thiện với công cụ của người dùng hay không.

Lập kế hoạch VRAM, RAM và lưu trữ trên Linux

Ràng buộc đầu tiên là VRAM cho trọng số mô hình, KV cache và overhead runtime. GPU 6GB và 8GB nên bắt đầu với các mô hình nhỏ hoặc được lượng tử hóa mạnh. 12GB là mức nền desktop dễ dùng hơn. 16GB và 24GB giúp lượng tử hóa chất lượng cao hơn và context lớn hơn trở nên thực tế hơn. 48GB trở lên phù hợp hơn cho mô hình lớn, thử nghiệm nặng hơn và quy trình kiểu máy chủ. RAM hệ thống vẫn quan trọng cho fallback CPU, tải xuống, file cache và chạy các dịch vụ khác.

Lưu trữ cũng quan trọng. Các mô hình cục bộ có thể tiêu tốn hàng chục hoặc hàng trăm gigabyte khi người dùng thử các biến thể. Trên máy chủ Linux, cache mô hình có thể nằm dưới user dịch vụ hoặc thư mục tùy chỉnh, vì vậy bố cục đĩa nên được lên kế hoạch trước khi kéo nhiều tệp. Một trang đề xuất nên giảm tải xuống lãng phí bằng cách lọc các mô hình không khả thi trước khi người dùng sao chép lệnh từ README.

Dùng Linux cho máy chủ một cách cẩn thận

Linux giúp dễ dàng chạy máy chủ mô hình cục bộ, nhưng điều đó không có nghĩa là máy chủ nên được mở công khai. Nhiều API suy luận cục bộ được thiết kế cho các mạng cục bộ đáng tin cậy. Nếu endpoint mô hình được mở ra internet, người lạ có thể gửi prompt, tiêu thụ thời gian GPU và có khả năng truy cập các giao diện vốn không bao giờ được thiết kế cho sử dụng công khai. Mặc định hãy bind vào localhost, đặt reverse proxy và xác thực phía trước bất kỳ dịch vụ công khai nào, đồng thời giám sát mức sử dụng tài nguyên.

Điều này quan trọng với VPS nhỏ hoặc máy chủ tại nhà. Một máy chủ giá rẻ với 1GB hoặc 2GB RAM là đủ cho container website hoặc reverse proxy, nhưng không đủ cho suy luận local LLM có ý nghĩa. Trang đề xuất nên nói rõ: chạy backend website Local LLM và chạy một mô hình thực tế là hai workload khác nhau. Suy luận mô hình cần bộ nhớ và năng lực tính toán; website chỉ cần phục vụ đề xuất và metadata đã cache.

Quy trình thiết lập Linux thực tế

Bắt đầu bằng cách xác nhận GPU hiển thị với hệ thống và stack driver hoạt động khỏe mạnh. Sau đó cài một công cụ suy luận, chọn một mô hình rõ ràng phù hợp với bộ nhớ có sẵn, thử một prompt ngắn, rồi chỉ sau đó mới tăng độ dài context hoặc chất lượng mô hình. Nếu mô hình bất ngờ fallback sang CPU, hãy kiểm tra log driver, thiết lập runtime và liệu công cụ có thực sự hỗ trợ backend GPU của bạn hay không.

Đối với triển khai có thể lặp lại, hãy giữ tệp mô hình trong một thư mục đã biết, ghi lại lệnh runtime và tránh trộn quá nhiều công cụ trước khi thiết lập đầu tiên hoạt động. Đối với người dùng desktop, một GUI hoặc một dịch vụ cục bộ là đủ để bắt đầu. Đối với người dùng máy chủ, hãy thêm giám sát tiến trình, quy tắc firewall và metrics. Local LLM có thể hỗ trợ bằng cách thu hẹp danh sách mô hình trước khi công việc thiết lập riêng cho Linux bắt đầu.

FAQ

Linux có tốt hơn Windows cho local LLM không? Nó có thể tốt hơn cho máy chủ và quy trình nâng cao, nhưng lựa chọn tốt nhất phụ thuộc vào hỗ trợ GPU, driver và mức độ thoải mái của người dùng.

Tôi có cần NVIDIA trên Linux không? Không, nhưng hỗ trợ NVIDIA CUDA thường là con đường dễ nhất. AMD ROCm có thể hoạt động tốt trên phần cứng và bản phân phối được hỗ trợ, nhưng cần kiểm tra tính tương thích cẩn thận.

VPS giá rẻ có chạy được local LLM không? Thường là không theo cách có ý nghĩa. VPS giá rẻ có thể host website hoặc backend metadata, nhưng suy luận mô hình cần nhiều RAM, VRAM và năng lực tính toán hơn nhiều.

Làm sao để tránh tải xuống lãng phí? Hãy dùng Local LLM để lọc theo VRAM, RAM, hệ điều hành, trường hợp sử dụng và ưu tiên trước khi kéo các tệp mô hình lớn.

Quay lại công cụ Local LLM