Transformers documentation

Journalisation

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Journalisation

🤗 Transformers dispose d'un système de journalisation centralisé, ce qui vous permet de configurer facilement le niveau de détail de la bibliothèque.

Actuellement, le niveau de verbosité par défaut de la bibliothèque est WARNING.

Pour modifier le niveau de verbosité, utilisez simplement l'un des setters directs. Par exemple, voici comment passer la verbosité au niveau INFO.

import transformers

transformers.logging.set_verbosity_info()

Vous pouvez également utiliser la variable d'environnement TRANSFORMERS_VERBOSITY pour remplacer le niveau de verbosité par défaut. Vous pouvez la définir sur l'une des valeurs suivantes : debug, info, warning, error, critical, fatal. Par exemple :

TRANSFORMERS_VERBOSITY=error ./myprogram.py

De plus, certains warnings peuvent être désactivés en définissant la variable d’environnement TRANSFORMERS_NO_ADVISORY_WARNINGS sur une valeur vraie, comme 1. Cela désactivera tout avertissement journalisé via logger.warning_advice. Par exemple :

TRANSFORMERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py

Voici un exemple d'utilisation du même journaliseur que la bibliothèque dans votre propre module ou script :

from transformers.utils import logging

logging.set_verbosity_info()
logger = logging.get_logger("transformers")
logger.info("INFO")
logger.warning("WARN")

Toutes les méthodes de ce module de journalisation sont documentées ci-dessous. Les principales sont logging.get_verbosity() pour obtenir le niveau de verbosité actuel du journaliseur et logging.set_verbosity() pour définir la verbosité au niveau de votre choix. Dans l'ordre (du moins verbeux au plus verbeux), ces niveaux (avec leurs valeurs int correspondantes entre parenthèses) sont :

  • transformers.logging.CRITICAL ou transformers.logging.FATAL (valeur entière, 50) : ne signale que les erreurs les plus critiques.
  • transformers.logging.ERROR (valeur int, 40) : ne signale que les erreurs.
  • transformers.logging.WARNING ou transformers.logging.WARN (valeur entière, 30) : ne signale que les erreurs et les avertissements. C'est le niveau par défaut utilisé par la bibliothèque.
  • transformers.logging.INFO (valeur int, 20) : signale les erreurs, les avertissements et les informations de base.
  • transformers.logging.DEBUG (valeur int, 10) : signale toutes les informations.

Par défaut, les barres de progression tqdm sont affichées pendant le téléchargement du modèle. logging.disable_progress_bar() et logging.enable_progress_bar() peuvent être utilisés pour supprimer ou réactiver ce comportement.

journalisation et avertissements

Python dispose de deux systèmes de journalisation souvent utilisés conjointement : logging, décrit ci-dessus, et warnings, qui permet de classer les avertissements dans des catégories spécifiques, par exemple FutureWarning pour une fonctionnalité ou un chemin déjà obsolète et DeprecationWarning pour signaler une obsolescence à venir.

Nous utilisons les deux dans la bibliothèque transformers. Nous exploitons et adaptons la méthode captureWarnings de logging pour permettre la gestion de ces messages d’avertissement par les paramètres de verbosité ci-dessus.

Que signifie cela pour les développeurs de la bibliothèque ? Nous devons respecter les heuristiques suivantes :

  • warnings doivent être privilégiés par les développeurs de la bibliothèque et des bibliothèques dépendantes de transformers
  • logging doit être utilisé par les utilisateurs finaux de la bibliothèque qui l’emploient dans leurs projets au quotidien

Voir la référence de la méthode captureWarnings ci-dessous.

transformers.utils.logging.captureWarnings

< >

( capture )

Appelle la méthode captureWarnings de la bibliothèque de journalisation pour permettre la gestion des avertissements émis par la bibliothèque warnings.

En savoir plus sur cette méthode ici : https://docs.python.org/3/library/logging.html#integration-with-the-warnings-module

Tous les avertissements seront journalisés via le journal py.warnings.

Attention : cette méthode ajoute également un gestionnaire à ce journal s’il n’en possède pas déjà un, et met à jour le niveau de journalisation de ce journal vers le journal racine de la bibliothèque.

Définitions de base

transformers.utils.logging.set_verbosity_error

< >

( )

Définissez la verbosité au niveau ERROR.

transformers.utils.logging.set_verbosity_warning

< >

( )

Définissez la verbosité au niveau WARNING.

transformers.utils.logging.set_verbosity_info

< >

( )

Définissez la verbosité au niveau INFO.

transformers.utils.logging.set_verbosity_debug

< >

( )

Définissez la verbosité au niveau DEBUG.

Autres fonctions

transformers.utils.logging.get_verbosity

< >

( ) → int

Retourne

int

Le niveau de journalisation.

Retourne le niveau actuel du journal racine de 🤗 Transformers en tant qu'entier.

🤗 Transformers dispose des niveaux de journalisation suivants :

  • 50 : transformers.logging.CRITICAL ou transformers.logging.FATAL
  • 40: transformers.logging.ERROR
  • 30 : transformers.logging.WARNING ou transformers.logging.WARN
  • 20: transformers.logging.INFO
  • 10: transformers.logging.DEBUG

transformers.utils.logging.set_verbosity

< >

( verbosity: int )

Paramètres

  • verbosity (int) — Niveau de journalisation, par exemple l'un des suivants :
    • transformers.logging.CRITICAL ou transformers.logging.FATAL
    • transformers.logging.ERROR
    • transformers.logging.WARNING ou transformers.logging.WARN
    • transformers.logging.INFO
    • transformers.logging.DEBUG

Définissez le niveau de verbosité du journal racine de 🤗 Transformers.

transformers.utils.logging.get_logger

< >

( name: str | None = None )

Retourne un journal avec le nom spécifié.

Cette fonction n'est pas censée être accédée directement, sauf si vous écrivez un module transformers personnalisé.

transformers.utils.logging.enable_default_handler

< >

( )

Activer le gestionnaire par défaut du journal racine de HuggingFace Transformers.

transformers.utils.logging.disable_default_handler

< >

( )

Désactiver le gestionnaire par défaut du journal racine de HuggingFace Transformers.

transformers.utils.logging.enable_explicit_format

< >

( )

Activer le formatage explicite pour chaque journal de HuggingFace Transformers. Le formatteur explicite est le suivant :

    [LEVELNAME|FILENAME|LINE NUMBER] TIME >> MESSAGE
All handlers currently bound to the root logger are affected by this method.

transformers.utils.logging.reset_format

< >

( )

Réinitialise la mise en forme des journalisateurs de HuggingFace Transformers.

Tous les gestionnaires actuellement liés à l'enregistreur racine sont affectés par cette méthode.

transformers.utils.logging.enable_progress_bar

< >

( )

Activer la barre de progression tqdm.

transformers.utils.logging.disable_progress_bar

< >

( )

Désactiver la barre de progression tqdm.

Update on GitHub