GPU

Kế hoạch fine-tune LLM tiếng Việt trên GPU 84GB

Cách lập kế hoạch fine-tune LLM tiếng Việt trên GPU 84GB, từ chọn mô hình, LoRA/QLoRA, chi phí đến phục vụ bằng vLLM.

Vì sao cần lập kế hoạch trước

Fine-tune LLM tiếng Việt không chỉ là chạy một lệnh huấn luyện. GPU 84GB là tài nguyên có giới hạn, nên nếu không ước lượng trước, bạn dễ gặp tình trạng hết bộ nhớ, thời gian kéo dài và chi phí tăng. Một kế hoạch rõ ràng giúp bạn chọn đúng kích thước mô hình, cấu hình huấn luyện và phương án phục vụ sau này.

Chọn kích thước mô hình 7B-32B

Với một hoặc vài card 84GB, khoảng 7B-32B là vùng nên cân nhắc. Mô hình 7B thường dễ chạy, phù hợp khi dữ liệu ít hoặc cần thử nghiệm nhanh. Các mô hình lớn hơn trong khoảng 7B-32B có thể cho chất lượng tốt hơn, nhưng cũng đòi hỏi kiểm soát chặt hơn về context, batch size và số tham số cần cập nhật. Nếu chỉ có một card, bạn nên ưu tiên mô hình vừa phải, kết hợp lượng hóa hoặc adapter. Nếu có vài card, có thể cân nhắc 32B, nhưng cần tính toán cả pipeline huấn luyện và phục vụ.

LoRA/QLoRA và bộ nhớ GPU 84GB

LoRA/QLoRA giúp giảm bộ nhớ bằng cách chỉ cập nhật một phần tham số. QLoRA thường kết hợp lượng hóa để giữ trọng lượng gốc ở độ chính xác thấp, trong khi adapter học thêm. Cách này đặc biệt hữu ích khi fine-tune 27B hoặc 32B trên card 84GB. Tuy nhiên, bộ nhớ không chỉ phụ thuộc vào số tham số tổng. Độ dài prompt, batch size, gradient checkpointing, số adapter và loại tham số đều ảnh hưởng. Vì vậy, hãy chạy thử với cấu hình nhỏ trước khi mở rộng.

Ước lượng thời gian và chi phí GPU

Chi phí có thể ước lượng theo công thức: số card nhân 2.5 USD/giờ/card, rồi nhân với thời gian chạy. Trước khi chạy, hãy ước lượng số bước, số epoch, kích thước batch, độ dài mẫu và tốc độ xử lý. Nên chạy thử trên một tập nhỏ để đo tốc độ và bộ nhớ thực tế. Với một card, thời gian có thể dài hơn; với vài card, cần cân nhắc hiệu quả mở rộng và độ phức tạp đồng bộ. Đừng chỉ nhìn vào giá mỗi giờ, mà hãy tính tổng thời gian từ chuẩn bị dữ liệu, huấn luyện, đánh giá đến triển khai.

Chuẩn bị dữ liệu tiếng Việt

Dữ liệu quyết định chất lượng fine-tune. Bạn cần chuẩn hóa mã hóa, dấu, viết tắt, câu lệnh và ngữ cảnh. Hãy xây dựng tập huấn luyện, tập kiểm tra và tập đánh giá riêng. Dữ liệu nên đại diện cho use case thực tế: hỗ trợ khách hàng, tóm tắt, phân loại, tạo câu lệnh hoặc xử lý tài liệu. Loại bỏ trùng lặp và dữ liệu kém chất lượng. Nếu dữ liệu ít, hãy ưu tiên fine-tune nhẹ, kết hợp prompt engineering hoặc RAG thay vì ép mô hình học quá nhiều từ một tập nhỏ.

Đánh giá và phục vụ bằng vLLM

Sau fine-tune, cần đánh giá bằng tập kiểm tra, tiêu chí nghiệp vụ và kiểm tra thủ công. Hãy theo dõi độ trễ, thông lượng, tỷ lệ lỗi và trải nghiệm người dùng. vLLM là lựa chọn phù hợp để phục vụ inference sau khi huấn luyện. Khi cấu hình, cần xem xét card 84GB, độ dài context, số request đồng thời và mức độ ổn định. Nếu dùng vài card, hãy kiểm tra khả năng mở rộng trước khi đưa vào vận hành.

Góc nhìn Strapi Việt Nam

Theo kinh nghiệm vận hành của Strapi Việt Nam, chúng tôi đang chạy mô hình 27B FP8 phục vụ nội bộ trên một card. Điều này cho thấy với GPU 84GB, một mô hình cỡ 27B ở định dạng FP8 có thể khả thi nếu mục tiêu là phục vụ nội bộ và cấu hình hợp lý. Khi lên kế hoạch fine-tune, Strapi Việt Nam thường ưu tiên bắt đầu từ mô hình vừa phải, kiểm soát bộ nhớ bằng LoRA/QLoRA, chạy thử quy mô nhỏ, rồi mới mở rộng dữ liệu và thời gian huấn luyện. Quan trọng là không chạy theo kích thước mô hình lớn nhất, mà chọn điểm cân bằng giữa chất lượng, chi phí và vận hành.

Nguồn tham khảo

Bài viết tóm tắt và bình luận bằng lời của Strapi Việt Nam; vui lòng xem bài gốc tại các nguồn trên.