Bài báo · arXiv 2412.19437
Báo cáo Kỹ thuật DeepSeek-V3
DeepSeek-V3 Technical Report
Tóm tắt trong ba dòng
- 🎯 Các mô hình MoE quy mô hàng đầu đòi hỏi ngân sách tính toán khổng lồ, bị suy giảm hiệu năng do loss phụ cân bằng tải và đối mặt với điểm nghẽn giao tiếp all-to-all liên nút nghiêm trọng.
- 🔧 Sử dụng Multi-head Latent Attention (MLA), DeepSeekMoE với cơ chế cân bằng không cần loss phụ, huấn luyện độ chính xác hỗn hợp FP8 với lượng tử hóa hạt mịn, lập lịch gối luồng DualPipe và Multi-Token Prediction (MTP).
- 📈 Huấn luyện 671B tham số (kích hoạt 37B) trên 14,8T token chỉ với 2,788M giờ GPU H800 (~5,576 triệu USD), đạt điểm chuẩn nguồn mở SOTA và hiệu năng cạnh tranh với GPT-4o cùng Claude-3.5-Sonnet.
Tóm tắt
Chúng tôi giới thiệu DeepSeek-V3, một mô hình ngôn ngữ Mixture-of-Experts (MoE) mạnh mẽ với tổng cộng 671B tham số, trong đó 37B tham số được kích hoạt cho mỗi token. Để đạt được khả năng suy luận hiệu quả và chi phí huấn luyện tiết kiệm, DeepSeek-V3 áp dụng các kiến trúc Multi-head Latent Attention (MLA) và DeepSeekMoE, những kỹ thuật đã được kiểm chứng kỹ lưỡng trong DeepSeek-V2. Hơn nữa, DeepSeek-V3 tiên phong sử dụng chiến lược cân bằng tải không dùng loss phụ (auxiliary-loss-free) và thiết lập mục tiêu huấn luyện dự đoán đa token (multi-token prediction) để đạt hiệu năng mạnh mẽ hơn. Chúng tôi tiền huấn luyện DeepSeek-V3 trên 14,8 nghìn tỷ token đa dạng và chất lượng cao, sau đó là các giai đoạn Tinh chỉnh có giám sát (SFT) và Học tăng cường (RL) để khai thác tối đa năng lực của mô hình. Các đánh giá toàn diện cho thấy DeepSeek-V3 vượt trội hơn các mô hình mã nguồn mở khác và đạt hiệu năng tương đương với các mô hình nguồn đóng hàng đầu. Bất chấp hiệu năng xuất sắc, DeepSeek-V3 chỉ cần 2,788 triệu giờ GPU H800 cho toàn bộ quá trình huấn luyện. Ngoài ra, quy trình huấn luyện của mô hình cực kỳ ổn định. Xuyên suốt toàn bộ quá trình huấn luyện, chúng tôi không gặp phải bất kỳ sự cố tăng vọt loss không thể phục hồi nào và không phải thực hiện bất kỳ lần rollback nào. Trọng số mô hình được cung cấp công khai tại https://github.com/deepseek-ai/DeepSeek-V3.
Tóm tắt gốc (tiếng Anh)
We present DeepSeek-V3, a strong Mixture-of-Experts (MoE) language model with 671B total parameters with 37B activated for each token. To achieve efficient inference and cost-effective training, DeepSeek-V3 adopts Multi-head Latent Attention (MLA) and DeepSeekMoE architectures, which were thoroughly validated in DeepSeek-V2. Furthermore, DeepSeek-V3 pioneers an auxiliary-loss-free strategy for load balancing and sets a multi-token prediction training objective for stronger performance. We pre-train DeepSeek-V3 on 14.8 trillion diverse and high-quality tokens, followed by Supervised Fine-Tuning and Reinforcement Learning stages to fully harness its capabilities. Comprehensive evaluations reveal that DeepSeek-V3 outperforms other open-source models and achieves performance comparable to leading closed-source models. Despite its excellent performance, DeepSeek-V3 requires only 2.788M H800 GPU hours for its full training. In addition, its training process is remarkably stable. Throughout the entire training process, we did not experience any irrecoverable loss spikes or perform any rollbacks. The model checkpoints are available at https://github.com/deepseek-ai/DeepSeek-V3.
Hướng dẫn đọc
Vấn đề và Động lực
Các mô hình ngôn ngữ lớn (LLM) hàng đầu tiếp tục thu hẹp khoảng cách tiến tới AGI, nhưng việc mở rộng quy mô các mô hình mã nguồn mở thường đòi hỏi ngân sách tính toán và cơ sở hạ tầng vượt quá khả năng tiếp cận. Hơn nữa, việc mở rộng kiến trúc Mixture-of-Experts (MoE) tạo ra những thách thức kỹ thuật cụ thể:
- Suy giảm do loss phụ (Auxiliary Loss Degradation): Các loss phụ cân bằng tải truyền thống hạn chế nghiêm trọng tính linh hoạt của định tuyến và làm tổn hại đến năng lực mô hình hóa ngôn ngữ.
- Điểm nghẽn giao tiếp (Communication Bottlenecks): Định tuyến hạt mịn liên nút (cross-node) gây ra chi phí giao tiếp all-to-all nghiêm trọng, thường đạt tỷ lệ tính toán trên giao tiếp là 1:1.
- Độ chính xác số học & Bộ nhớ: Huấn luyện 16-bit tiêu chuẩn rất tốn bộ nhớ, trong khi huấn luyện FP8 thông thường dễ mất ổn định số học và tràn dưới (underflow) do các giá trị ngoại lai của kích hoạt và độ chính xác tích lũy hạn chế của Tensor Core.
DeepSeek-V3 giải quyết những thách thức này thông qua sự đồng thiết kế giữa các chiến lược thuật toán và tối ưu hóa hạ tầng cấp phần cứng để đạt hiệu năng hàng đầu với chi phí huấn luyện tối thiểu.
Ý tưởng cốt lõi
- Hiệu quả kiến trúc: Kết hợp nén Key-Value hạng thấp thông qua Multi-head Latent Attention (MLA) với các expert định tuyến hạt mịn qua DeepSeekMoE (1 shared + 256 routed experts, kích hoạt 8).
- Cân bằng tải không cần loss phụ (Auxiliary-Loss-Free Load Balancing): Thay thế các loss phụ làm giảm hiệu năng bằng các số hạng bias của expert được cập nhật động, cho phép chuyên môn hóa theo miền riêng biệt mà không bị sụp đổ định tuyến (routing collapse).
- Dự đoán đa token (Multi-Token Prediction - MTP): Dự đoán tuần tự nhiều token tương lai tại mỗi vị trí dọc theo chuỗi nhân quả được duy trì nhằm làm phong phú tín hiệu huấn luyện và hỗ trợ suy luận suy đoán (speculative decoding, tăng tốc 1,8× TPS).
- Song song hóa DualPipe: Lập lịch pipeline hai chiều gối hoàn toàn các phép tính forward và backward với giao tiếp MoE all-to-all liên nút và giao tiếp PP.
- Huấn luyện độ chính xác hỗn hợp FP8: Sử dụng định dạng E4M3 trên tất cả tensor, áp dụng co giãn kích hoạt theo tile () và trọng số theo block (), kết hợp đẩy tích lũy sang thanh ghi CUDA Core ở định dạng FP32 sau mỗi bước.
- Chưng cất suy luận (Reasoning Distillation): Chưng cất các mẫu suy luận long-CoT có kiểm chứng và phản hồi từ dòng mô hình DeepSeek-R1 trực tiếp vào các giai đoạn hậu huấn luyện SFT và RL.
Phương pháp
1. Multi-head Latent Attention (MLA)
Đối với trạng thái ẩn của token , MLA nén KV cache thành một vector ẩn chung và trạng thái query thành :
Trong quá trình suy luận, việc lưu cache chỉ giới hạn ở và , giúp giảm đáng kể dung lượng bộ nhớ sử dụng.
2. DeepSeekMoE với cơ chế cân bằng không cần loss phụ
Đầu ra của mạng feed-forward kết hợp shared experts và routed experts:
Độ tương đồng của expert được tính là . Các giá trị gating được tính bằng cách chuẩn hóa , trong đó quyết định định tuyến kết hợp một hệ số bias động :
Nếu expert bị quá tải ở cuối bước, ; nếu non tải, (với ). Một sequence-wise balance loss rất nhỏ () được dùng làm bổ trợ.
3. Multi-Token Prediction (MTP)
Đối với độ sâu dự đoán (với ), biểu diễn được kết hợp với embedding của token bị dịch chuyển:
Tổng loss huấn luyện cộng thêm .
Kết quả
- Ngân sách tiền huấn luyện: Được tiền huấn luyện trên 14,8T token chỉ với 2,664M giờ GPU H800 (3,7 ngày cho mỗi 1T token trên 2048 GPU). Toàn bộ quá trình huấn luyện tiêu tốn 2,788M giờ GPU (~5,576 triệu USD tính theo mức 2 USD/giờ).
- Độ ổn định: Không có lần rollback nào và không có sự cố tăng vọt loss không thể phục hồi nào trên toàn bộ 14,8T token.
- Đánh giá Base Model:
- Vượt trội LLaMA-3.1 405B Base trên MMLU (87,1 so với 84,4), BBH (87,5 so với 82,9), HumanEval (65,2 so với 54,9) và MATH (61,6 so với 49,0).
- Vượt trội Qwen2.5 72B Base trên C-Eval (90,1 so với 89,2) và GSM8K (89,3 so với 88,3).
- Đánh giá Chat Model:
- Toán & Code: Thiết lập điểm số SOTA trong nhóm không phải o1: MATH-500 (90,2), AIME 2024 (39,2), LiveCodeBench CoT (40,5).
- Tri thức tổng quát: MMLU (88,5), MMLU-Pro (75,9), GPQA-Diamond (59,1).
- Câu hỏi mở: Đạt tỷ lệ thắng hơn 85% trên Arena-Hard (85,5%) và đạt 70,0% trên AlpacaEval 2.0 có kiểm soát độ dài.
Hạn chế và các câu hỏi mở
- Cấu hình phần cứng tối thiểu cho suy luận: Việc phục vụ (serving) hiệu quả đòi hỏi các cụm triển khai lớn (32 GPU cho cụm prefilling, 320 GPU cho cụm decoding), tạo rào cản hạ tầng đối với các tổ chức nhỏ.
- Phân bổ SM liên nút: 20 SM trên mỗi GPU phải dành riêng hoàn toàn để quản lý các quy trình giao tiếp all-to-all liên nút thay vì thực hiện tính toán ma trận.
- Sai lệch về dữ liệu thực tế (Factual Discrepancies): Còn tụt hậu so với các mô hình nguồn đóng hàng đầu (như GPT-4o, Claude-3.5-Sonnet) trên các tác vụ dữ liệu thực tế tiếng Anh như SimpleQA (24,9% so với 38,2%), mặc dù dẫn đầu trên SimpleQA tiếng Trung (64,8%).
Thuật ngữ chính
- Multi-head Latent Attention (MLA)
- Một cơ chế attention nén Keys và Values ở hạng thấp thành một vector ẩn chung nhằm giảm thiểu tối đa mức tiêu thụ KV cache trong quá trình suy luận.
- DeepSeekMoE
- Một kiến trúc Mixture-of-Experts sử dụng các expert hạt mịn kết hợp với các shared expert chuyên dụng để tăng cường khả năng chuyên môn hóa và tính biểu đạt định tuyến.
- Auxiliary-Loss-Free Load Balancing (Cân bằng tải không dùng loss phụ)
- Một phương pháp định tuyến tự động điều chỉnh hệ số bias tương đồng của từng expert dựa trên tải của batch thay vì thêm các loss phụ điều chuẩn lớn vào hàm mục tiêu.
- Multi-Token Prediction (MTP - Dự đoán đa token)
- Một khung huấn luyện tuần tự dự đoán nhiều token tương lai tại mỗi vị trí bằng cách sử dụng các module nhân quả, đồng thời tái sử dụng embedding từ vựng và head của mô hình chính.
- DualPipe
- Thuật toán song song hóa pipeline hai chiều giúp gối hoàn toàn các phép tính forward, backward-cho-input và backward-cho-weight với giao tiếp all-to-all và pipeline.
- Warp Specialization
- Mô hình thực thi phân chia các Streaming Multiprocessor của GPU thành các warp tác vụ chuyên dụng để thực hiện việc gửi (dispatch) và gom (combine) dữ liệu qua IB và NVLink đồng thời.
- Group Relative Policy Optimization (GRPO)
- Một thuật toán học tăng cường loại bỏ nhu cầu về mô hình critic riêng biệt bằng cách tính toán lợi thế (advantage) tương đối trong một nhóm các phản hồi được lấy mẫu.
Câu hỏi thường gặp
DeepSeek-V3 có bao nhiêu tham số tổng cộng và bao nhiêu tham số được kích hoạt?
DeepSeek-V3 có tổng cộng 671B tham số, với 37B tham số được kích hoạt cho mỗi token (1 shared expert cộng với 8 routed expert được chọn từ 256 expert).
Chi phí huấn luyện DeepSeek-V3 là bao nhiêu?
Toàn bộ quá trình huấn luyện cần 2,788 triệu giờ GPU H800 (2,664M giờ cho tiền huấn luyện, 119K giờ cho mở rộng ngữ cảnh và 5K giờ cho hậu huấn luyện), tiêu tốn khoảng 5,576 triệu USD với mức giá ước tính 2 USD cho mỗi giờ GPU.
Tại sao phương pháp cân bằng tải không dùng loss phụ lại vượt trội hơn loss phụ tiêu chuẩn?
Các loss phụ cấp sequence tiêu chuẩn ép buộc việc sử dụng expert đồng đều trên từng sequence riêng lẻ, làm tổn hại đến sự chuyên môn hóa theo miền. Cách cập nhật bias động của DeepSeek đảm bảo cân bằng ở cấp độ batch mà không làm sai lệch mục tiêu gradient mô hình hóa ngôn ngữ chính.
Làm thế nào để huấn luyện thành công độ chính xác hỗn hợp FP8 mà không bị phân kỳ loss?
Bằng cách sử dụng lượng tử hóa kích hoạt theo tile (1x128), lượng tử hóa trọng số theo block (128x128), biểu diễn thuần E4M3, và sao chép các tổng trung gian từ Tensor Core sang thanh ghi FP32 trên CUDA Core sau mỗi 128 phần tử để tránh tràn dưới khi tích lũy ở độ chính xác thấp.
Phần giải thích trên trang này do AI viết dựa trên bài báo và có thể có sai sót. Hãy đọc bài báo gốc để biết chi tiết.