Hugging Face Transformers:為生態系統互通性標準化模型定義

Transformers 作為生態系統樞紐

Transformers 函式庫目前支援超過 300 種模型架構,且每週平均新增約三種新架構。作為核心樞紐,Transformers 讓模型只需一次整合,即可在多個平台上使用:

  • Inference Engines: 像 vLLM、SGLang 與 TGI 等熱門引擎正將 Transformers 作為後端。例如,在 vLLM 中,使用者現在可以透過 model_impl="transformers" 載入新模型,使模型在加入 Transformers 函式庫後即可立即受惠於生產等級的服務、動態批次處理與專屬核心。
  • Training Frameworks: 此函式庫已整合至主要的訓練工具,包括 Axolotl、Unsloth、DeepSpeed、FSDP、PyTorch-Lightning、TRL 與 Nanotron。
  • Local Deployment and Interoperability:llama.cpp 與 MLX 具備高度互通性。這包括能直接在 Transformers 中載入 GGUF 檔案以進行微調,並將 Transformers 模型轉換為 GGUF 檔案供 llama.cpp 使用。此外,Transformers 的 safetensors 檔案亦可直接與 MLX 模型相容。

簡化模型貢獻

為降低新增架構的門檻,Hugging Face 正加速簡化模型程式碼的工作。目標是從大型、複雜的貢獻(例如跨 20 個檔案、共 6,000 行程式碼)轉向更模組化的方式:

  • API Simplification: 為關鍵元件(如 KV 快取與各種 Attention 函式)實作清晰、簡潔的 API。
  • Deprecation of Redundancy: 移除冗餘元件,採用單一高效路徑,例如淘汰緩慢的 tokenizer,改用高效的斷詞機制,並使用快速向量化的視覺處理器。
  • Modular Definitions: 強化模組化模型定義,確保新模型僅需最少的程式碼變更即可實作。

對使用者與創作者的影響

給模型使用者

標準化提升了訓練、推論與生產工具之間的互通性。雖然使用者不必在實驗時鎖定使用 Transformers,但此標準化確保其選擇的工具鏈能高效協同運作。

給模型創作者

標準化減少了發布新模型的運營負擔。開發者不必為每個主要函式庫單獨整合模型,只要一次貢獻至 Transformers 函式庫,即可讓所有已整合 Transformers 建模實作的下游函式庫皆可使用該模型。

Sources