Hugging Face Diffusers 一週年回顧

Hugging Face 慶祝了 🤗 Diffusers 函式庫的第一個週年,該函式庫的建立是為了實現擴散模型(diffusion models)的普及化。該函式庫已從基礎的文字轉圖像工具,演進為一個模組化工具箱,允許使用者自定義組件,或使用預建的 pipeline 來處理廣泛的生成式 AI 任務。

寫實度與模型支援的進展

🤗 Diffusers 已整合了高保真模型,以提升圖像品質並減少常見的瑕疵,例如解剖學錯誤。

  • DeepFloyd IF:一種模組化擴散模型,直接在像素層級進行運算,並利用大型語言模型進行文本編碼,具備 3 倍放大處理以實現更高解析度。
  • Stable Diffusion XL (SDXL):來自 Stability AI 的模型,其參數數量顯著多於 Stable Diffusion 2。它採用一個基礎模型來確保提示詞遵循度(prompt adherence),並使用專門的 refiner 模型來處理高頻內容與精細細節。

擴展至影片、3D 與音訊

除了靜態圖像,該函式庫已將其能力擴展到多種模態:

  • 影片生成:支援文字轉影片的 pipelines,包括 VideoFusion 和 Text2Video-Zero。
  • 3D 資產生成:整合了 OpenAI 的 Shap-E 模型,透過 ShapEPipelineShapEImg2ImgPipeline 將 3D-文本對進行編碼,為建築、室內設計和電子遊戲生成資產。
  • 音訊支援:除了視覺內容外,該函式庫還增加了對音訊生成的支援。

推論優化與速度

為了應對擴散模型迭代且耗時的特性,🤗 Diffusers 實施了多項速度與記憶體優化:

  • 一致性模型 (Consistency Models):整合 OpenAI 的 Consistency Models 可大幅提升生成速度;例如,在現代 CPU 上使用 ConsistencyModelPipeline 可以在 3/4 秒內生成一張 256x256 的圖像。

  • PyTorch 2.0 整合:對 torch.compile()scaled_dot_product_attention() (SDPA) 的一等公民級支援,可將推論延遲降低兩倍以上。

  • 硬體與格式支援:該函式庫支援 ONNX、Core ML 以及用於 Apple Silicon 的 mps PyTorch 裝置。

  • 記憶體管理:諸如 sliced attention、feed-forward chunking、VAE tiling 以及 CPU/model offloading 等技術,使得在消費級 GPU 上進行推論成為可能。

參數高效微調與訓練

🤗 Diffusers 透過實施低階適配 (Low-Rank Adaptation, LoRA),降低了微調大型模型的門檻。LoRA 允許以較少的記憶體消耗進行更快速的微調,並產生易於分享的輕量化權重。該函式庫還支援其他個性化技術,包括 DreamBooth、textual inversion 和 custom diffusion。

倫理、安全與內容完整性

為了推動負責任的 AI 使用,Hugging Face 引入了幾種安全機制:

  • 安全檢查器 (Safety Checker):一個 safety_checker 組件,會在推論過程中標記不當或 NSFW 內容。
  • 隱形浮水印:SDXL 模型包含隱形浮水印,有助於區分 AI 生成圖像與人類創作內容,降低虛假訊息的風險。
  • 倫理憲章:所有開發工作都受到函式庫文件中正式倫理憲章的指導。

社群與生態系統整合

該函式庫在開源專案與商業產品中都得到了廣泛採用。

開源亮點

社群的貢獻促成了如 Lama Cleaner (inpainting)、Grounded-SAM (可控圖像編輯) 和 Stable-Dreamfusion (文字轉 3D) 等工具的開發。開發者對該函式庫與研究代碼相比展現出的專業實作給予了高度評價,一位貢獻者指出:

‘‘ 🤗 Diffusers 的實作通常不是來自研究實驗室的代碼... 對我來說,使用 🤗 Diffusrs 在幾個小時內實現我的想法非常輕鬆。’’

商業應用

各家公司正利用 🤗 Diffusers 來驅動各種服務,包括 PlaiDay (協作式 AI)、Previs One (電影分鏡)、Zust.AI (產品攝影)、Dashtoon (視覺內容創作)、Virtual Staging AI (室內設計) 和 Hexo.AI (個性化行銷)。

關鍵技術貢獻摘要

超過 300 位貢獻者為代碼庫添加了關鍵功能,包括:

  • 模型編輯 (Model Editing):用於編輯模型隱含假設的 pipeline。
  • LDM3D:專門用於 3D 圖像的擴散模型。
  • DPMSolver:顯著提高推論速度的改進。
  • Custom Diffusion:一種使用少量主體圖像進行個性化圖像生成的技術。

Sources