Hugging Face Inference Endpoints 入門:從 Hub 部署模型並設定存取方式
Hugging Face 推出 Inference Endpoints,讓用户可從 Hugging Face Hub 將機器學習模型部署至所選雲端的受管基礎設施。
推薦理由:文章逐步展示從 Hugging Face Hub 將模型部署至 AWS,並比較 Protected 與 Private 端點的存取範圍和 VPC 設定。
Hugging Face 推出 Inference Endpoints,讓用户可從 Hugging Face Hub 將機器學習模型部署至所選雲端的受管基礎設施。
推薦理由:文章逐步展示從 Hugging Face Hub 將模型部署至 AWS,並比較 Protected 與 Private 端點的存取範圍和 VPC 設定。
Hugging Face 團隊記錄了為 BLOOM 建置推理伺服器的優化過程,稱數週內將延遲降低 5x、吞吐量提升 50x。改用 Tensor Parallelism 後,延遲由 300ms/token 降至 91ms/token,吞吐量升至 10RPS;其後透過 torch.jit.script 和自訂 kernel 將延遲再降至 71ms/token。
推薦理由:文章以 BLOOM 的實測串連並行策略、算子融合和批次服務的取捨,呈現大型模型推理優化中如何平衡延遲與吞吐量。
Hugging Face 示範如何使用離線強化學習資料,從零訓練 Decision Transformer,使其學習 Gym HalfCheetah 環境中的奔跑行為。
Megatron-LM 可在 NVIDIA GPU 上用於訓練 GPT2,並可將訓練後的模型轉換為 Transformers 支援的格式。教程以 110M 參數的 CodeParrot 為例,涵蓋資料預處理、8 張 GPU 訓練(約需 12 小時)及權重轉換。文章指出額外的預處理和轉換會增加時間開銷,建議將 Megatron-LM 用於預訓練或較長時間微調,而非中型模型的短期微調。
這篇教程示範如何在 Hugging Face Spaces 中使用 3Dmol.js 和 Gradio HTML 區塊呈現蛋白質結構。示例應用接受 4 位 PDB code 或上傳的 PDB 檔案,並透過 iframe 顯示結構。2024 年 5 月更新建議使用 Molecule3D Gradio Custom Component,讓用户可即時修改蛋白質可視化,亦更容易設定預設可視化。
Hugging Face 文章示範如何用 Diffusers 的 StableDiffusionPipeline 執行 Stable Diffusion 文生圖,並介紹模型原理及自訂推理流程。
推薦理由:文章從 Stable Diffusion 的基礎生成示例延伸至參數設定與自訂推理流程,並解釋 VAE、U-Net 和文字編碼器在潛在空間生成中的分工,提供拆解 Diffusers pipeline 的實用脈絡。
Hugging Face Blog 示範將 🤗 Transformers 中以 TensorFlow 實作的 ViT B/16 部署至 Vertex AI,並透過 Python SDK 建立端點及發送預測請求。文章説明模型版本管理、流量分配、監控與資源設定,並記錄 Locust 本機負載測試約發出 17230 次請求,平均延遲為 646 Milliseconds。
Hugging Face 將 LLM.int8() 整合至 Transformers 與 Accelerate,透過混合 INT8/FP16 矩陣乘法降低大型語言模型推理所需的記憶體。
推薦理由:文章串連 LLM.int8() 的離羣特徵處理、效能比較與 Transformers 整合細節,呈現 8-bit 量化降低大型模型記憶體需求的實作脈絡。
Hugging Face 説明 Transformers 的 TensorFlow 設計取向,將模型和層設為 Keras Model 與 Keras Layer,讓使用者可直接調用 fit()、compile() 和 predict()。
推薦理由:文章梳理 Hugging Face Transformers 對 TensorFlow 的六項設計取向,並以 Keras 訓練、資料管線、XLA 與部署示例,呈現這些取捨如何落實到模型訓練和部署流程。
Hugging Face Blog 示範如何以 Docker 和 TensorFlow Serving,將 🤗 Transformers 的 Vision Transformer(ViT)部署至 Kubernetes。
Hugging Face 深度強化學習課程第 8 單元講解 PPO(近端策略優化),説明其透過裁剪策略概率比限制更新幅度,以提升訓練穩定性。文章介紹裁剪替代目標函數,並以 PyTorch 從零實作 PPO,在 CartPole-v1 和 LunarLander-v2 測試;示例裁剪範圍為 [0.8,1.2](ϵ=0.2)。
Hugging Face Transformers 的 Vision Transformer(ViT)圖像分類模型,可使用 TensorFlow Serving 在本機部署並透過 REST 或 gRPC 提供服務。教程將圖像解碼、縮放至 224×224、正規化及分類後處理整合至 SavedModel,使其接收 base64 編碼圖像並輸出分類標籤和信心度。
Hugging Face 深度強化學習課程第 7 單元講解 Advantage Actor Critic(A2C),以 Actor 和 Critic 結合政策式與價值式方法,降低 Reinforce 策略梯度估計的方差並穩定訓練。課程使用 Stable-Baselines3,在 PyBullet 機械人模擬環境訓練雙足步行者和蜘蛛智能體。
Hugging Face 的教學以 MNIST 手寫數字識別示範,如何動態收集人類生成的對抗樣本並用於模型訓練。示範模型訓練 20 epochs 後,在測試集準確率為 89%;用户可在 Spaces 畫布書寫 0-9,並標記能騙過模型的樣本。樣本累積至門檻後會用來再訓練模型,並重複多輪,以提高模型穩健性。
作者以 Sentence Transformers 和 Gradio 構建歌單生成器,透過對歌詞嵌入向量進行語義搜索,按文字提示找出相關歌曲。由於所選模型的最大序列長度為 512 word pieces,歌曲歌詞先按 verse 切分並逐段嵌入;設置 top_k=20 時,作者實測幾乎總能得到至少 9 首不同歌曲。
Hugging Face 提供 Twitter 情感分析入門指南,示範適用於程式開發者與非程式開發者的操作流程。程式開發者可用 Tweepy 收集推文,透過 Inference API 分析正面、負面或中性情緒,並將結果視覺化;非程式開發者則可用 Zapier 分析推文,並將結果傳送至 Google Sheets。
Hugging Face 深度強化學習課程第 5 單元以 PyTorch 從零實作 REINFORCE,並在 CartPole-v1、PixelCopter 和 Pong 測試其穩健性。策略梯度以梯度上升直接最佳化策略,毋須先學習價值函數;隨機策略可促進探索,在高維及連續動作空間中亦較有效。其限制包括可能收斂至局部極值、訓練時間較長及高方差。
這篇入門指南以 Sentence Transformers 為例,介紹初學者如何理解文本嵌入向量與語義搜尋,並規劃首個自主機器學習項目。文章建議先盤點工具能力、挑選感興趣的資料集,再配合一項熟悉的輔助工具構思項目。
Hugging Face Blog 以 Medicare FAQ 示範語義搜尋流程,使用 Inference API 生成嵌入向量,再以使用者查詢比對相似 FAQ。示範選用 sentence-transformers/all-MiniLM-L6-v2 將 13 條 FAQ 編碼為 384 維向量,並把向量資料集上載至 Hub,以餘弦相似度找出最相近的 5 條 FAQ。
Hugging Face 示範了將 Transformers 模型匯出為 ONNX 的三種方法,涵蓋低階 `torch.onnx`、中階 `transformers.onnx` 和高階 Optimum。
Hugging Face 深度強化學習課程第 3 單元介紹 Deep Q-Learning,並以 Space Invaders 説明神經網絡如何取代 Q-table,估算各動作的 Q 值。
Cohere、OpenAI 與 AI21 Labs 制定了一套初步最佳實踐,適用於任何開發或部署大型語言模型的組織。
Hugging Face 的 Deep Reinforcement Learning Class 第二部分講解 Q-Learning,並帶領學員從零實作強化學習智能體。
Hugging Face 深度強化學習課程第 2 單元第 1 部分講解價值型強化學習方法,為 Q-Learning 作鋪墊。內容説明狀態價值函數與動作價值函數,並比較蒙地卡羅學習和時間差分學習。本單元第二部分將介紹 Q-Learning 演算法,從零實作智能體,並在 Frozen-Lake-v1 及自動的士環境中訓練。
Hugging Face Hub 接入 fastai,讓 fastai 使用者可用單行 Python 程式碼上傳 Learner,亦可從 Hub 載入模型。文章介紹 `push_to_hub_fastai` 和 `from_pretrained_fastai`,並示範 fastai 與 Blurr 的模型分享流程。
Hugging Face 的 Deep Reinforcement Learning Class 第一章介紹深度強化學習的基本框架,説明智能體如何透過與環境互動、採取行動並接收獎勵來學習。
作者結合 Kili 與 Hugging Face AutoTrain,為 Google Play 上 Medium 應用程式的評論建立主動學習分類流程,並對分類結果進行情感分析。
文章示範以 amazon_reviews_multi 的英文資料微調 microsoft/deberta-v3-base,建立五類情感分類模型以篩選最不滿意的客户訊息。測試中,模型識別出約 95% 的極度不滿意訊息,並把約 12% 的中立或滿意訊息誤判為需要回覆。按每日 10,000 則訊息的假設估算,人工工作量可減少約 83%;文章指出,實際應用需要貼近業務情境的高質素訓練數據。
推薦理由:文章由任務界定、資料集篩選延伸至微調與業務指標設計,展示如何把模型評估對準客服實際處理目標。
Hugging Face Hub 可用 huggingface_hub 的 emissions_thresholds 按模型訓練 CO2 排放篩選模型,Transformers 則可透過 CodeCarbonCallback 記錄訓練排放。
Hugging Face Blog 提供以自訂資料集微調 SegFormer 語義分割模型的教程,涵蓋資料準備、訓練和推理。示例使用自建的人行道標註資料集微調預訓練的 SegFormer B0,並以 mIoU 評估分割結果。教程亦介紹將模型推送至 Hugging Face Hub,並透過推理小工具試用。
🤗 datasets 教程示範為 10,000 張來自 British Library 數碼化書籍的插圖建立文字搜圖流程。作者使用 sentence_transformers 的 CLIP 將圖片和文字提示詞轉成嵌入向量,再以 FAISS 檢索相似圖片;完整數據集網址為 https://doi.org/10.21250/db17。
Hugging Face 提供端到端教程,示範如何以 Hugging Face Transformers、Amazon SageMaker 和 AWS Inferentia 加速 BERT 文本分類推理。
OpenAI 分享對已部署模型的安全與濫用問題的最新思考,期望協助其他 AI 開發者應對相關問題。
這篇教程示範使用 🤗 Datasets 與 🤗 Transformers,將預訓練模型 google/vit-base-patch16-224-in21k 微調為豆類葉片圖像分類器。
推薦理由:文章以 beans 葉片分類串起資料載入、ViT 圖像預處理、Trainer 微調與評估,並展示資料即時轉換及訓練參數設定。
Hugging Face 宣佈課程第二部分將於 11 月 15 日推出,並於 11 月 15 日至 16 日舉辦社羣活動。課程涵蓋 token 分類、因果與遮罩語言建模、翻譯、摘要和問答,並深入介紹 🤗 Datasets 與 🤗 Tokenizers。活動包括兩日演講及以 NLP 任務微調模型的團隊項目;AWS 將透過 Amazon SageMaker 向參與者提供免費運算資源。
Hugging Face 首篇系列文章以 BERT 為例,測試並分析 CPU 核心配置、NUMA 親和性與多模型實例如何影響推理延遲及吞吐量。結果顯示,小型及中型問題使用單一 socket 通常延遲較佳,大型問題則可利用雙 socket;多實例方案的吞吐量接近線性擴展。文中舉例,8 核實例為 0.808$/h,48 核機器則為 4.848$/h,前者成本降低 6x。
Hugging Face 教學示範如何使用 Transformers 將預訓練的 Wav2Vec2 base 微調為英語自動語音辨識模型。示範使用含 5h 訓練資料的 TIMIT,並在不使用語言模型的情況下以 CTC 訓練。模型在 TIMIT 測試集的 WER 為 0.221(22.1%)。
推薦理由:這篇教學把資料清理、詞彙表與處理器設定、音訊取樣率處理、CTC 訓練及 WER 評估串成完整流程,並以 5h 的 TIMIT 訓練資料示範英語 ASR 微調。
Hugging Face 介紹以 PyTorch / XLA 在 Cloud TPU 訓練 Transformers 的整合方式,並保留 Hugging Face Trainer 原有介面。
推薦理由:文章梳理 PyTorch / XLA 接入 Hugging Face Trainer 的設備選擇、梯度同步與輸入流水線,並説明固定張量形狀對減少編譯成本的作用。
Hugging Face 團隊提升了 Transformers 中 BERT、RoBERTa、ELECTRA 和 MPNet 的 TensorFlow 模型運算速度。
Hugging Face 的 Transformers 教程以 GPT2 示範如何實作多種文字生成解碼方法。文章介紹貪心搜尋、束搜尋、temperature、Top-K 及 Top-p 採樣,説明各方法對重複、流暢度與隨機性的影響,並指出沒有一種方法適用所有開放式生成場景。
推薦理由:文章以 GPT2 和 Transformers 範例比較貪心搜尋、Beam search 與 Top-K、Top-p 採樣,呈現各方法在生成重複、流暢度與隨機性上的取捨。