Transformers 文件
日誌記錄
並獲得增強的文件體驗
開始使用
日誌記錄
🤗 Transformers 有一個集中的日誌記錄系統,因此您可以輕鬆設定庫的詳細程度。
當前庫的預設詳細程度是 WARNING
。
要更改詳細級別,只需使用其中一個直接設定器。例如,以下是如何將詳細級別更改為 INFO 級別。
import transformers
transformers.logging.set_verbosity_info()
您還可以使用環境變數 TRANSFORMERS_VERBOSITY
來覆蓋預設的詳細程度。您可以將其設定為以下值之一:debug
、info
、warning
、error
、critical
、fatal
。例如:
TRANSFORMERS_VERBOSITY=error ./myprogram.py
此外,透過將環境變數 TRANSFORMERS_NO_ADVISORY_WARNINGS
設定為真值(如 *1*),可以停用某些 warnings
。這將停用任何使用 logger.warning_advice
記錄的警告。例如:
TRANSFORMERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py
以下是如何在您自己的模組或指令碼中使用與庫相同的日誌記錄器的示例:
from transformers.utils import logging
logging.set_verbosity_info()
logger = logging.get_logger("transformers")
logger.info("INFO")
logger.warning("WARN")
此日誌記錄模組的所有方法都在下面記錄,主要的是 logging.get_verbosity() 用於獲取日誌記錄器中當前的詳細級別,以及 logging.set_verbosity() 用於將詳細級別設定為您選擇的級別。按順序(從最不詳細到最詳細),這些級別(及其對應的整數值在括號中)是:
transformers.logging.CRITICAL
或transformers.logging.FATAL
(整數值,50):僅報告最關鍵的錯誤。transformers.logging.ERROR
(整數值, 40): 只報告錯誤。transformers.logging.WARNING
或transformers.logging.WARN
(整數值,30):僅報告錯誤和警告。這是庫使用的預設級別。transformers.logging.INFO
(整數值, 20): 報告錯誤、警告和基本資訊。transformers.logging.DEBUG
(整數值, 10): 報告所有資訊。
預設情況下,在模型下載期間將顯示 tqdm
進度條。可以使用 logging.disable_progress_bar() 和 logging.enable_progress_bar() 來抑制或取消抑制此行為。
logging vs warnings
Python 有兩個經常結合使用的日誌記錄系統:logging
(如上所述)和 warnings
,後者允許將警告進一步分類到特定的桶中,例如,FutureWarning
用於已棄用的功能或路徑,DeprecationWarning
用於指示即將到來的棄用。
我們在 `transformers` 庫中同時使用這兩種方法。我們利用並調整 `logging` 的 `captureWarnings` 方法,以允許透過上述詳細程度設定器管理這些警告訊息。
這對庫的開發者意味著什麼?我們應該遵循以下啟發式方法:
- 對於庫的開發者和依賴於 `transformers` 的庫,應優先使用 `warnings`。
- 對於在日常專案中使用該庫的終端使用者,應使用 `logging`。
請參閱下面 `captureWarnings` 方法的參考資料。
呼叫日誌庫中的 `captureWarnings` 方法,以啟用對 `warnings` 庫發出的警告的管理。
在此處閱讀有關此方法的更多資訊:https://docs.python.club.tw/3/library/logging.html#integration-with-the-warnings-module
所有警告都將透過 `py.warnings` 日誌記錄器進行記錄。
注意:如果該日誌記錄器尚無處理程式,此方法也會為其新增一個,並將該日誌記錄器的日誌級別更新為庫的根日誌記錄器。
基本設定器
將詳細程度設定為 ERROR
級別。
將詳細程度設定為 WARNING
級別。
將詳細程度設定為 INFO
級別。
將詳細程度設定為 DEBUG
級別。
其他函式
以整數形式返回 🤗 Transformers 根日誌記錄器的當前級別。
🤗 Transformers 具有以下日誌記錄級別
- 50:
transformers.logging.CRITICAL
或transformers.logging.FATAL
- 40:
transformers.logging.ERROR
- 30:
transformers.logging.WARNING
或transformers.logging.WARN
- 20:
transformers.logging.INFO
- 10:
transformers.logging.DEBUG
transformers.utils.logging.set_verbosity
< 源 >( verbosity: int )
為 🤗 Transformers 的根日誌記錄器設定詳細級別。
返回具有指定名稱的日誌記錄器。
除非您正在編寫自定義的 transformers 模組,否則不應直接訪問此函式。
啟用 HuggingFace Transformers 的根日誌記錄器的預設處理程式。
停用 HuggingFace Transformers 的根日誌記錄器的預設處理程式。
重置 HuggingFace Transformers 日誌記錄器的格式。
所有當前繫結到根日誌記錄器的處理程式都會受此方法影響。
啟用 tqdm 進度條。
停用 tqdm 進度條。