Swift Transformers 1.0 版本說明 / 新功能

Hugging Face 已發布 Swift Transformers 1.0,這是其函式庫的穩定版本,旨在降低開發者在 Apple Silicon 平台(包括 iPhone)上整合本地大型語言模型(LLM)的阻礙。此版本標誌著函式庫進入穩定階段,提供與 Core ML 與 MLX 相輔的關鍵基礎設施,包括分詞、模型下載與推論。

Swift Transformers 的核心組件

Swift Transformers 提供三個主要模組,以填補 Apple Silicon 機器學習生態系的空白:

  • Tokenizers:一個高效能的 Swift 分詞實作,處理輸入前處理、聊天模板與代理式使用情境,模仿 Hugging Face 的 Python 與 Rust 函式庫的使用便利性。
  • Hub:一個 Swift 介面,連接 Hugging Face Hub,允許下載與本地快取開放模型。它支援離線模式與背景可續傳下載,雖然目前尚未支援上傳。
  • Models and Generation:將 LLM 轉換為 Core ML 格式的封裝器,簡化轉換完成後的推論執行流程。

版本 1.0 的主要更新

版本 1.0 引入多項架構改進與穩定性更新,以支援正式應用程式的開發:

模組化架構與相依性減少

TokenizersHub 現在是第一級、頂層模組,讓開發者僅匯入所需的特定元件,而非整個套件。為減少負擔並防止版本衝突,函式庫已移除示例 CLI 目標以及 swift-argument-parser 相依性。

效能與 API 強化

  • Swift Jinja Integration:與 John Mai 合作,函式庫現在使用新版的 swift-jinja,據稱在處理複雜聊天模板時快了數個量級。
  • Modern Core ML APIs:透過 Apple 的貢獻,函式庫現在支援有狀態模型(便於 KV 快取)與表達力強的 MLTensor API,省去數千行自訂張量運算程式碼。
  • Swift 6 Support:函式庫現在已完全相容於 Swift 6。
  • API Refinement:公開 API 的範圍已縮減,以降低認知負擔,且已為所有公開 API 加入文件註解。

社群採用與整合

Swift Transformers 目前被多個高知名度的 Apple Silicon 專案使用:

  • mlx-swift-examples (Apple):使用此函式庫透過 MLX 執行 LLM 與 VLM(視覺語言模型)。
  • WhisperKit (argmax):一個最佳化的開源語音辨識框架,依賴 HubTokenizers 模組。
  • FastVLM (Apple):一個視覺語言模型示範,還有 Hugging Face 自己的 SmolVLM2 原生應用程式。

未來路線圖

Hugging Face 計畫將未來開發重點放在兩個主要領域:

  1. MLX Integration:提升 MLX 體驗的無縫性,特別是透過與 mlx-swift-examples 更佳的整合,以在頻繁的前後處理操作中支援 LLM 與 VLM。
  2. Agentic Workflows:探索代理式使用情境與模型上下文協定(MCP),以允許系統資源向本地工作流程公開。

Sources