Transformers documentation

DeepSpeed

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

and get access to the augmented documentation experience

to get started

DeepSpeed

DeepSpeed, được hỗ trợ bởi Zero Redundancy Optimizer (ZeRO), là một thư viện tối ưu hóa để huấn luyện và khớp các mô hình rất lớn lên GPU. Nó có sẵn ở một số giai đoạn ZeRO, trong đó mỗi giai đoạn tiết kiệm thêm bộ nhớ GPU bằng cách phân vùng trạng thái optimizer, gradient, tham số và cho phép offload sang CPU hoặc NVMe. DeepSpeed được tích hợp với lớp Trainer và phần lớn việc thiết lập sẽ được tự động xử lý cho bạn.

Tuy nhiên, nếu bạn muốn sử dụng DeepSpeed mà không dùng Trainer, Transformers cung cấp lớp HfDeepSpeedConfig.

Tìm hiểu thêm về việc sử dụng DeepSpeed với Trainer trong hướng dẫn DeepSpeed.

HfDeepSpeedConfig

class transformers.integrations.HfDeepSpeedConfig

< >

( config_file_or_dict )

Tham số

  • config_file_or_dict (Union[str, Dict]) — đường dẫn đến tệp cấu hình DeepSpeed hoặc dict.

Đối tượng này chứa một từ điển cấu hình DeepSpeed và có thể được truy vấn nhanh chóng cho các thông tin như zero stage.

Một weakref của đối tượng này được lưu trong các biến toàn cục của module để có thể truy cập config từ những nơi mà các đối tượng như Trainer không khả dụng (ví dụ from_pretrained và _get_resized_embeddings). Do đó, điều quan trọng là đối tượng này phải tiếp tục tồn tại trong khi chương trình vẫn đang chạy.

Trainer sử dụng lớp con HfTrainerDeepSpeedConfig thay thế. Lớp con này có logic để đồng bộ cấu hình với các giá trị của TrainingArguments bằng cách thay thế các giá trị placeholder đặc biệt: "auto". Nếu không có logic đặc biệt này, cấu hình DeepSpeed sẽ không bị thay đổi dưới bất kỳ hình thức nào.

Update on GitHub