elixir-nx/bumblebee

Pre-trained Neural Network models in Axon (+ 🤗 Models integration)

解決的問題

Bumblebee 讓 Elixir 開發者無需從零開始撰寫複雜的機器學習程式碼,即可使用預訓練的神經網路模型。它作為 Python Transformers 庫在 Elixir 中的對應物,支援從 Hugging Face Hub 加載和執行模型。

工作原理

Bumblebee 建立在 Axon 之上,並與 Hugging Face Hub 整合,用以下載模型設定與訓練參數。支援導入 PyTorch 與 Safetensors 格式的模型。為了高效執行模型,它使用 EXLA 進行即時編譯,並在 CPU 或 GPU 上執行。

適用對象

希望將文字分類、影像分類、文字生成等機器學習任務整合至其應用程式(例如 Phoenix 與 LiveView 應用)或互動式筆記本(如 Livebook)中的 Elixir 開發者。

主要特色

  • Hugging Face 整合:僅需幾行程式碼即可從 Hugging Face Hub 直接載入模型與分詞器。
  • 硬體加速:透過 EXLA 支援 GPU 執行。
  • 端對端流程:提供常見任務(例如 Bumblebee.Text.fill_mask)的高階 API 與易於部署的服務流程。
  • 廣泛模型支援:實作多種神經網路架構,包括 BERT 與 Stable Diffusion,讓使用者可載入對應的預訓練權重。

相關