Transformers documentation

MXFP4

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

MXFP4

Lưu ý: Lượng tử hóa MXFP4 hiện chỉ hoạt động với OpenAI GPT-OSS 120b và 20b.

MXFP4 là định dạng số thực 4-bit giúp giảm đáng kể yêu cầu bộ nhớ của các mô hình lớn. Các mô hình lớn (GPT-OSS-120B) có thể chạy trên một GPU 80GB duy nhất, trong khi các mô hình nhỏ hơn (GPT-OSS-20B) chỉ cần 16GB bộ nhớ. Định dạng này sử dụng tỷ lệ theo khối (blockwise scaling) để duy trì phạm vi và độ chính xác, vốn thường bị suy giảm ở các mức độ chính xác thấp hơn.

Để sử dụng MXPF4, hãy đảm bảo phần cứng của bạn đáp ứng các yêu cầu sau.

  • Cài đặt Accelerate, kernels và Triton ≥ 3.4. Chỉ cần cài đặt thủ công Triton ≥ 3.4 nếu bạn đang sử dụng PyTorch 2.7 vì nó đã được hỗ trợ trong PyTorch 2.8.
  • NVIDIA GPU Compute Capability ≥ 7.5, bao gồm các GPU Tesla và mới hơn. Sử dụng get_device_capability để kiểm tra Compute Capability.
from torch import cuda
cuda.get_device_capability()

# (7, 5)

Kiểm tra cấu hình lượng tử hóa của mô hình như bên dưới để xem nó có hỗ trợ MXFP4 hay không. Nếu 'quant_method': 'mxfp4', thì mô hình sẽ tự động sử dụng MXFP4.

from transformers import GptOssConfig

model_id = "openai/gpt-oss-120b"
cfg = GptOssConfig.from_pretrained(model_id)
print(cfg.quantization_config)

# Example output:
# {
#   'modules_to_not_convert': [
#     'model.layers.*.self_attn',
#     'model.layers.*.mlp.router',
#     'model.embed_tokens',
#     'lm_head'
#   ],
#   'quant_method': 'mxfp4'
# }

MXFP4 kernels

Transformers tự động tải các kernel Triton hỗ trợ MXFP4 từ kho lưu trữ cộng đồng khi bạn nạp một model cần chúng. Các kernel này được lưu trong bộ nhớ đệm cục bộ và được sử dụng trong quá trình truyền thẳng (forward pass).

Các kernel MXFP4 được sử dụng mặc định nếu khả dụng và được hỗ trợ, và không yêu cầu bất kỳ thay đổi mã nào.

Bạn có thể sử dụng hf cache scan để xác nhận các kernel đã được tải xuống.

hf cache scan
REPO ID                          REPO TYPE SIZE ON DISK
-------------------------------- --------- ------------
kernels-community/triton_kernels model           536.2K
openai/gpt-oss-20b               model            13.8G

Tài nguyên

Tìm hiểu thêm về lượng tử hóa MXFP4 và cách thức hoạt động của việc mở rộng theo khối trong bài đăng trên blog này.

Update on GitHub