Transformers 文件
安裝
並獲得增強的文件體驗
開始使用
安裝
Transformers 可與 PyTorch、TensorFlow 2.0 和 Flax 配合使用。它已在 Python 3.9+、PyTorch 2.1+、TensorFlow 2.6+ 和 Flax 0.4.1+ 上進行過測試。
虛擬環境
虛擬環境有助於管理不同的專案並避免依賴項之間的相容性問題。如果您不熟悉 Python 虛擬環境,請參閱使用 pip 和 venv 在虛擬環境中安裝軟體包指南。
使用 venv 在專案目錄中建立並激活虛擬環境。
python -m venv .env
source .env/bin/activate
Python
您可以使用 pip 或 uv 安裝 Transformers。
pip 是 Python 的包安裝程式。在您新建立的虛擬環境中,使用 pip 安裝 Transformers。
pip install transformers
對於 GPU 加速,請為 PyTorch 和 TensorFlow 安裝相應的 CUDA 驅動程式。
執行以下命令檢查您的系統是否檢測到 NVIDIA GPU。
nvidia-smi
要安裝僅限 CPU 版本的 Transformers 和機器學習框架,請執行以下命令。
pip install 'transformers[torch]'
uv pip install 'transformers[torch]'
使用以下命令測試安裝是否成功。它應該返回所提供文字的標籤和分數。
python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('hugging face is the best'))"
[{'label': 'POSITIVE', 'score': 0.9998704791069031}]
從原始碼安裝
從原始碼安裝會安裝庫的*最新*版本,而不是*穩定*版本。它確保您擁有 Transformers 中最新的更改,並且對於試驗最新功能或修復尚未在穩定版本中正式釋出的錯誤很有用。
缺點是最新版本可能不總是穩定的。如果您遇到任何問題,請開啟一個 GitHub Issue,以便我們儘快修復。
使用以下命令從原始碼安裝。
pip install git+https://github.com/huggingface/transformers
使用以下命令檢查安裝是否成功。它應該返回所提供文字的標籤和分數。
python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('hugging face is the best'))"
[{'label': 'POSITIVE', 'score': 0.9998704791069031}]
可編輯安裝
可編輯安裝在您使用 Transformers 進行本地開發時很有用。它將您的本地 Transformers 副本連結到 Transformers 儲存庫,而不是複製檔案。檔案被新增到 Python 的匯入路徑中。
git clone https://github.com/huggingface/transformers.git
cd transformers
pip install -e .
您必須保留本地 Transformers 資料夾才能繼續使用它。
使用以下命令更新您的本地 Transformers 版本,使其與主儲存庫中的最新更改同步。
cd ~/transformers/
git pull
conda
conda 是一個與語言無關的包管理器。在您新建立的虛擬環境中,從 conda-forge 頻道安裝 Transformers。
conda install conda-forge::transformers
設定
安裝後,您可以配置 Transformers 快取位置或設定庫以供離線使用。
快取目錄
當您使用 from_pretrained() 載入預訓練模型時,模型會從 Hub 下載並本地快取。
每次載入模型時,它都會檢查快取的模型是否是最新的。如果相同,則載入本地模型。如果不同,則下載並快取較新的模型。
由 shell 環境變數 `TRANSFORMERS_CACHE` 給出的預設目錄是 `~/.cache/huggingface/hub`。在 Windows 上,預設目錄是 `C:\Users\username\.cache\huggingface\hub`。
透過更改以下 shell 環境變數中的路徑(按優先順序排序)將模型快取到不同的目錄中。
- HF_HUB_CACHE 或 `TRANSFORMERS_CACHE`(預設)
- HF_HOME
- XDG_CACHE_HOME + `/huggingface`(僅當 `HF_HOME` 未設定時)
舊版本的 Transformers 使用 shell 環境變數 `PYTORCH_TRANSFORMERS_CACHE` 或 `PYTORCH_PRETRAINED_BERT_CACHE`。除非您指定較新的 shell 環境變數 `TRANSFORMERS_CACHE`,否則應保留這些變數。
離線模式
要在離線或防火牆環境中使用 Transformers,需要提前下載並快取檔案。使用 snapshot_download 方法從 Hub 下載模型儲存庫。
有關從 Hub 下載檔案的更多選項,請參閱 從 Hub 下載檔案指南。您可以從特定修訂版本下載檔案,從 CLI 下載,甚至過濾要從儲存庫下載的檔案。
from huggingface_hub import snapshot_download
snapshot_download(repo_id="meta-llama/Llama-2-7b-hf", repo_type="model")
設定環境變數 `HF_HUB_OFFLINE=1` 以防止在載入模型時向 Hub 發出 HTTP 呼叫。
HF_HUB_OFFLINE=1 \ python examples/pytorch/language-modeling/run_clm.py --model_name_or_path meta-llama/Llama-2-7b-hf --dataset_name wikitext ...
只加載快取檔案的另一個選項是在 from_pretrained() 中設定 `local_files_only=True`。
from transformers import LlamaForCausalLM
model = LlamaForCausalLM.from_pretrained("./path/to/local/directory", local_files_only=True)