Swift Diffusers for Mac 1.1 發布

Hugging Face 已發布 Diffusers for Mac 1.1 版,這是一款原生應用,可在 macOS 上實現快速的本地文字轉圖像生成。透過將社群貢獻的 diffusion 模型轉換為 Core ML,該應用在 Apple Silicon 的 CPU、GPU 與 Neural Engine(ANE)上優化效能。

Core ML 整合與原生效能

Diffusers for Mac 提供了 Python 基礎的 diffusers 函式庫的原生替代方案。雖然 Python 函式庫使用 PyTorch 的 mps 加速器,原生應用則採用 Core ML,具備多項技術優勢:

  • 硬體協調: Core ML 能同時在 CPU、GPU 與 Neural Engine 之間分配模型工作負載。相較之下,PyTorch 的 mps 裝置無法使用 Neural Engine。
  • 本地執行: 所有圖像生成皆在使用者的機器上本地完成,確保資料隱私,且不需雲端點數或排隊時間。
  • 原生使用者體驗: 此應用以 Swift 與 SwiftUI 建置,遵循 Apple 的設計指南,免除指令列介面或虛擬環境管理的需求。

效能基準與硬體最佳化

1.1 版的文字轉圖像生成速度可視硬體配置提升至兩倍。效能會根據所使用的 Apple Silicon 晶片而有顯著差異:

  • 標準 M1 處理器: 這類裝置(例如 Mac Mini)在使用 Apple Neural Engine(ANE)時比使用 GPU 快兩倍。
  • M1 Max: 在像 M1 Max 這樣的高階晶片上,GPU 生成速度遠快於 ANE,因為相較於 Neural Engine,GPU 與 CPU 效能核心的數量更多。
  • 記憶體影響: 基準測試顯示系統記憶體容量(例如 8GB 與 16GB)對生成效能影響不大,主要驅動因素是 CPU 與 GPU 核心數量。

基準資料摘要

模型名稱 M1 8 GB(ANE) M1 16 GB(ANE) M2 24 GB(ANE) M1 Max 64 GB(GPU)
Stable Diffusion 1.5 18.8 18.7 13.1 9
Stable Diffusion 2 Base 14.5 14.4 10.5 8.3
Stable Diffusion 2.1 Base 14.3 14.3 10.5 8.3
small-stable-diffusion-v0 12.3 12.7 9.1 6.3

版本 1.1 包含啟發式演算法,可根據偵測到的硬體自動選擇最佳加速器。

版本 1.1 功能更新

除了效能最佳化外,版本 1.1 還帶來多項使用者體驗與功能的改進:

  • 生成控制: 使用者現在可以調整 guidance scale、取消正在進行的生成,並可選擇停用 safety checker。
  • 工作流程增強: 應用現在加入模型下載指示器,並提供快捷方式以重新使用先前生成的 seed 進行迭代調整。
  • 教育提示: 新增說明資訊,解釋各種生成設定的功能,使工具對非技術使用者更友善。

未來路線圖

Hugging Face 計畫透過以下方式擴展 Apple 生態系統整合的功能:

  • 擴充模型存取: 讓使用者更容易從 Hugging Face Hub 取得更多微調或 Dreambooth 模型。
  • 平台擴展: 開發 iOS 與 iPadOS 版本的應用。

Sources