Logging
🤗 Transformersには、ライブラリの詳細度を簡単に設定できる中央集中型のロギングシステムがあります。
現在、ライブラリのデフォルトの詳細度は「WARNING」です。
詳細度を変更するには、直接設定メソッドの1つを使用するだけです。例えば、詳細度をINFOレベルに変更する方法は以下の通りです。
import transformers
transformers.logging.set_verbosity_info()
環境変数 TRANSFORMERS_VERBOSITY を使用して、デフォルトの冗長性をオーバーライドすることもできます。設定できます
debug、info、warning、error、critical のいずれかに変更します。例えば:
TRANSFORMERS_VERBOSITY=error ./myprogram.py
さらに、一部の「警告」は環境変数を設定することで無効にできます。
TRANSFORMERS_NO_ADVISORY_WARNINGS を 1 などの true 値に設定します。これにより、次を使用してログに記録される警告が無効になります。
[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] を使用して、冗長性を選択したレベルに設定します。順番に(少ないものから)
冗長から最も冗長まで)、それらのレベル (括弧内は対応する int 値) は次のとおりです。
transformers.logging.CRITICALまたはtransformers.logging.FATAL(int 値、50): 最も多いもののみをレポートします。 重大なエラー。transformers.logging.ERROR(int 値、40): エラーのみを報告します。transformers.logging.WARNINGまたはtransformers.logging.WARN(int 値、30): エラーと 警告。これはライブラリで使用されるデフォルトのレベルです。transformers.logging.INFO(int 値、20): エラー、警告、および基本情報をレポートします。transformers.logging.DEBUG(int 値、10): すべての情報をレポートします。
デフォルトでは、モデルのダウンロード中に「tqdm」進行状況バーが表示されます。 [logging.disable_progress_bar] および [logging.enable_progress_bar] を使用して、この動作を抑制または抑制解除できます。
logging vs warnings
Python には、よく組み合わせて使用される 2 つのロギング システムがあります。上で説明した logging と warnings です。
これにより、特定のバケット内の警告をさらに分類できます (例: 機能またはパスのFutureWarning)
これはすでに非推奨になっており、DeprecationWarningは今後の非推奨を示します。
両方ともtransformersライブラリで使用します。 loggingのcaptureWarningメソッドを活用して適応させて、
これらの警告メッセージは、上記の冗長設定ツールによって管理されます。
それはライブラリの開発者にとって何を意味しますか?次のヒューリスティックを尊重する必要があります。
warningsは、ライブラリおよびtransformersに依存するライブラリの開発者に優先されるべきです。loggingは、日常のプロジェクトでライブラリを使用するライブラリのエンドユーザーに使用する必要があります。
以下のcaptureWarningsメソッドのリファレンスを参照してください。
[[autodoc]] logging.captureWarnings
Base setters
[[autodoc]] logging.set_verbosity_error
[[autodoc]] logging.set_verbosity_warning
[[autodoc]] logging.set_verbosity_info
[[autodoc]] logging.set_verbosity_debug
Other functions
[[autodoc]] logging.get_verbosity
[[autodoc]] logging.set_verbosity
[[autodoc]] logging.get_logger
[[autodoc]] logging.enable_default_handler
[[autodoc]] logging.disable_default_handler
[[autodoc]] logging.enable_explicit_format
[[autodoc]] logging.reset_format
[[autodoc]] logging.enable_progress_bar
[[autodoc]] logging.disable_progress_bar