LLM 課程文件
引言
加入 Hugging Face 社群
並獲得增強的文件體驗
開始使用
簡介
正如您在第一章中看到的,Transformer 模型通常非常龐大。它們擁有數百萬到數十億個引數,訓練和部署這些模型是一項複雜的任務。此外,新模型幾乎每天都在釋出,每個模型都有自己的實現方式,嘗試所有這些模型並非易事。
🤗 Transformers 庫的建立就是為了解決這個問題。它的目標是提供一個單一的 API,透過它任何 Transformer 模型都可以載入、訓練和儲存。該庫的主要特點是:
- 易於使用:只需兩行程式碼即可下載、載入和使用最先進的 NLP 模型進行推理。
- 靈活性:本質上,所有模型都是簡單的 PyTorch
nn.Module
類,可以像其各自的機器學習 (ML) 框架中的任何其他模型一樣處理。 - 簡潔性:庫中幾乎沒有任何抽象。“所有內容都在一個檔案中”是一個核心概念:模型的正向傳播完全在一個檔案中定義,因此程式碼本身易於理解和修改。
最後一個特點使得 🤗 Transformers 與其他 ML 庫截然不同。模型並非基於跨檔案共享的模組構建;相反,每個模型都有自己的層。除了使模型更易於理解和使用之外,這還允許您輕鬆地對一個模型進行實驗而不會影響其他模型。
本章將從一個端到端示例開始,我們將使用模型和分詞器來重現第一章中介紹的 pipeline()
函式。接下來,我們將討論模型 API:我們將深入探討模型和配置類,並向您展示如何載入模型以及它如何處理數字輸入以輸出預測。
然後,我們將研究分詞器 API,它是 pipeline()
函式的另一個主要組成部分。分詞器負責處理文字到神經網路數字輸入以及必要時將數字輸入轉換回文字的初始和最終處理步驟。最後,我們將向您展示如何透過準備好的批次將多個句子傳送透過模型,然後透過更深入地瞭解高階 tokenizer()
函式來總結所有內容。
⚠️ 為了充分利用 Model Hub 和 🤗 Transformers 的所有功能,我們建議建立一個帳戶。
< > 在 GitHub 上更新