Transformers v5- Định nghĩa mô hình đơn giản cung cấp năng lượng cho hệ sinh thái AI

Transformers v5- Định nghĩa mô hình đơn giản cung cấp năng lượng cho hệ sinh thái AI

  • 6 min read
Transformers v5- Định nghĩa mô hình đơn giản cung cấp năng lượng cho hệ sinh thái AI
Transformers v5- Định nghĩa mô hình đơn giản cung cấp năng lượng cho hệ sinh thái AI

Transformers v5: Định nghĩa mô hình đơn giản, cung cấp sức mạnh cho hệ sinh thái AI

Hugging Face vừa công bố phiên bản Release Candidate (RC) đầu tiên của Transformers v5.0.0, đánh dấu một bước tiến quan trọng sau 5 năm kể từ bản RC của v4.0.0 vào ngày 19 tháng 11 năm 2020.

Sự phát triển vượt bậc của Transformers

Kể từ phiên bản v4, Transformers đã có sự tăng trưởng đáng kinh ngạc:

  • Lượt cài đặt: Hiện tại, Transformers được cài đặt hơn 3 triệu lượt mỗi ngày qua pip, tăng vọt từ con số 20.000 lượt/ngày trước đây. Tổng cộng, thư viện đã vượt mốc 1.2 tỷ lượt cài đặt.
  • Kiến trúc mô hình: Số lượng kiến trúc mô hình được hỗ trợ đã tăng từ 40 trong v4 lên hơn 400 hiện nay.
  • Đóng góp từ cộng đồng: Cộng đồng đã đóng góp hơn 750.000 checkpoint mô hình tương thích với Transformers trên Hugging Face Hub, so với khoảng 1.000 checkpoint vào thời điểm v4 ra mắt.

Sự tăng trưởng này là minh chứng cho sự phát triển nhanh chóng của lĩnh vực AI và việc tiếp cận AI ngày càng trở nên phổ biến. Là một thư viện định nghĩa mô hình hàng đầu, Transformers không ngừng cải tiến để đáp ứng nhu cầu của ngành.

Những điểm nhấn chính trong Transformers v5

Transformers v5 tập trung vào bốn khía cạnh cốt lõi: đơn giản hóa, đào tạo, suy luận và sản xuất.

1. Đơn giản hóa

Mục tiêu chính là làm cho mã nguồn trở nên gọn gàng, dễ hiểu và dễ bảo trì hơn.

  • Đóng góp mô hình dễ dàng hơn: Quy trình đóng góp mô hình mới được cải thiện, giảm thiểu số dòng mã cần thiết và thời gian xem xét. Biểu đồ dưới đây cho thấy sự giảm đáng kể về số lượng mã cần đóng góp khi sử dụng cách tiếp cận module hóa.

    Timeline mô hình Transformers

  • Cách tiếp cận Module hóa: Thư viện ngày càng trở nên module hóa, cho phép bảo trì dễ dàng hơn, tích hợp nhanh hơn và cộng tác tốt hơn. Các thành phần như AttentionInterface giúp tập trung hóa các phương thức xử lý attention, cho phép các implementation khác như FA1/2/3, FlexAttention, hoặc SDPA được tích hợp dễ dàng hơn.

  • Công cụ chuyển đổi mô hình: Một công cụ mới sử dụng máy học để xác định sự tương đồng giữa các tệp định nghĩa mô hình khác nhau. Mục tiêu là tự động hóa quá trình chuyển đổi mô hình sang định dạng Transformers, giảm thiểu công sức thủ công và đảm bảo tính nhất quán.

  • Giảm thiểu mã nguồn: Tối ưu hóa các tệp định nghĩa mô hình và tokenization. Các tệp mô hình giờ đây chỉ chứa các phần liên quan đến quá trình forward/backward pass.

  • Đơn giản hóa Tokenizer: Tích hợp tập trung vào backend tokenizers, loại bỏ khái niệm “Fast” và “Slow” tokenizers. Các backend khác như Sentencepiece hoặc MistralCommon sẽ là tùy chọn, không phải mặc định. Bộ xử lý hình ảnh cũng chỉ còn lại biến thể nhanh dựa trên torchvision.

  • Tập trung vào PyTorch: Transformers v5 sẽ tập trung duy nhất vào backend PyTorch, mặc dù vẫn hợp tác chặt chẽ với hệ sinh thái Jax để đảm bảo khả năng tương thích.

2. Đào tạo

Transformers v5 đã có những cải tiến đáng kể trong hỗ trợ đào tạo quy mô lớn.

  • Pre-training ở quy mô lớn:

    • Tối ưu hóa lại quá trình khởi tạo mô hình.
    • Đảm bảo hoạt động ở quy mô lớn với nhiều mô hình song song khác nhau.
    • Hỗ trợ các kernel được tối ưu hóa cho cả forward và backward pass.
    • Tích hợp với các công cụ đào tạo phổ biến như torchtitan, megatron, nanotron.
  • Fine-tuning & Post-training:

    • Tiếp tục hợp tác chặt chẽ với các công cụ fine-tuning trong hệ sinh thái Python như Unsloth, Axolotl, LlamaFactory, TRL.
    • Đảm bảo khả năng tương thích với các công cụ trong hệ sinh thái Jax như MaxText.
    • Mở rộng khả năng hỗ trợ cho các trường hợp sử dụng Agentic thông qua OpenEnv hoặc Prime Environment Hub.

3. Suy luận (Inference)

Transformers v5 tập trung mạnh mẽ vào suy luận với nhiều thay đổi quan trọng:

  • Kernel chuyên dụng: Tích hợp các kernel chuyên dụng cho các tác vụ suy luận, được tự động sử dụng khi phần cứng và phần mềm cho phép.
  • API suy luận mới:
    • Hỗ trợ liên tục batching và cơ chế paged attention.
    • Giới thiệu transformers serve, một hệ thống phục vụ riêng cho Transformers, tương thích với API OpenAI.
  • Tương thích với các công cụ suy luận: Transformers v5 được thiết kế để tương thích hoàn toàn với các công cụ suy luận chuyên dụng như vLLM, SGLang, TensorRT LLM.
  • Hỗ trợ định dạng GGUF: Dễ dàng tải các tệp GGUF trong Transformers để fine-tuning và ngược lại, chuyển đổi mô hình Transformers sang tệp GGUF để sử dụng với llama.cpp.
  • Tương thích với MLX: Các tệp safetensors của Transformers tương thích trực tiếp với các mô hình MLX.
  • Suy luận trên thiết bị: Hỗ trợ đưa mô hình Transformers lên thiết bị thông qua executorch, mở rộng sang các mô hình đa phương thức (thị giác, âm thanh).

4. Quantization

Quantization (lượng tử hóa) trở thành một trọng tâm chính trong Transformers v5, với mục tiêu cung cấp một framework đáng tin cậy cho đào tạo và suy luận.

  • Quantization là công dân hạng nhất: Các mô hình SOTA hiện được phát hành ở các định dạng có độ chính xác thấp như 8-bit và 4-bit. Transformers v5 đảm bảo khả năng tương thích đầy đủ với các tính năng quantization chính.
  • Thay đổi cách tải trọng số: Một thay đổi lớn trong cách tải trọng số của mô hình, đưa quantization trở thành một công dân hạng nhất.
  • Hợp tác với TorchAO và bitsandbytes: Cải thiện tích hợp TorchAO, mở rộng tính năng quantization và tài liệu cho việc áp dụng rộng rãi hơn. Hỗ trợ tốt hơn cho các tính năng như TP và MoEs, cũng như tích hợp các phương pháp quantization mới.

Kết luận

Phiên bản v5 của Transformers tập trung vào “tính tương tác” (interoperability). Tất cả các thay đổi về cấu trúc lại mã, cải thiện hiệu suất và tiêu chuẩn hóa đều hướng tới mục tiêu này. Transformers v5 cho phép các quy trình liền mạch: đào tạo mô hình với các công cụ như Unsloth/Axolotl/LlamaFactory/MaxText, triển khai với vLLM/SGLang, và xuất sang llama.cpp/executorch/MLX để chạy cục bộ.

Transformers v5 là thành quả của 5 năm nỗ lực từ cộng đồng và đội ngũ Hugging Face. Đây là một bước tiến quan trọng, mở ra những hướng đi mới cho thư viện và hệ sinh thái AI. Cộng đồng được khuyến khích xem chi tiết kỹ thuật trong ghi chú phát hành và đóng góp phản hồi qua GitHub issues.

Recommended for You

SARLO-80- Bộ dữ liệu quang học ngôn ngữ SAR Slant Toàn cầu với Độ phân giải 80 cm

SARLO-80- Bộ dữ liệu quang học ngôn ngữ SAR Slant Toàn cầu với Độ phân giải 80 cm

SARLO-80- Bộ dữ liệu quang học ngôn ngữ SAR Slant Toàn cầu với Độ phân giải 80 cm

Chúng tôi đã nhận được Claude để tinh chỉnh một LLM mã nguồn mở

Chúng tôi đã nhận được Claude để tinh chỉnh một LLM mã nguồn mở

Chúng tôi đã nhận được Claude để tinh chỉnh một LLM mã nguồn mở