Transformers documentation

Registro

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

Registro

🤗 O Transformers possui um sistema de log centralizado, para que você possa configurar a verbosidade da biblioteca com facilidade.

Atualmente, o nível de detalhamento padrão da biblioteca é WARNING.

Para alterar o nível de verbosidade, basta usar um dos setters diretos. Por exemplo, veja como alterar a verbosidade para o nível INFO.

import transformers

transformers.logging.set_verbosity_info()

Você também pode usar a variável de ambiente TRANSFORMERS_VERBOSITY para substituir a verbosidade padrão. Você pode configurá-la com um dos seguintes valores: debug, info, warning, error, critical, fatal. Por exemplo:

TRANSFORMERS_VERBOSITY=error ./myprogram.py

Além disso, alguns warnings podem ser desativados definindo a variável de ambiente TRANSFORMERS_NO_ADVISORY_WARNINGS para um valor verdadeiro, como 1. Isso desativará qualquer aviso registrado usando logger.warning_advice. Por exemplo:

TRANSFORMERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py

Aqui está um exemplo de como usar o mesmo logger da biblioteca no seu próprio módulo ou script:

from transformers.utils import logging

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

Todos os métodos deste módulo de log estão documentados abaixo; os principais são logging.get_verbosity() para obter o nível de verbosidade atual do logger e logging.set_verbosity() para definir a verbosidade no nível de sua escolha. Em ordem (do menos verboso ao mais verboso), esses níveis (com seus valores int correspondentes entre parênteses) são:

  • transformers.logging.CRITICAL ou transformers.logging.FATAL (valor int, 50): relata apenas os erros mais críticos.
  • transformers.logging.ERROR (valor int, 40): relata apenas erros.
  • transformers.logging.WARNING ou transformers.logging.WARN (valor int, 30): relata apenas erros e avisos. Este é o nível padrão usado pela biblioteca.
  • transformers.logging.INFO (valor int, 20): relata erros, avisos e informações básicas.
  • transformers.logging.DEBUG (valor int, 10): relata todas as informações.

Por padrão, as barras de progresso tqdm são exibidas durante o download do modelo. logging.disable_progress_bar() e logging.enable_progress_bar() podem ser usados para suprimir ou reverter esse comportamento.

logging vs warnings

O Python possui dois sistemas de log que são frequentemente usados em conjunto: logging, explicado acima, e warnings, que permite classificar ainda mais os avisos em categorias específicas, por exemplo, FutureWarning para um recurso ou caminho que já foi descontinuado e DeprecationWarning para indicar uma descontinuação futura.

Utilizamos ambos na biblioteca transformers. Aproveitamos e adaptamos o método captureWarnings do logging para permitir o gerenciamento dessas mensagens de aviso pelos definidores de verbosidade acima.

O que isso significa para os desenvolvedores da biblioteca? Devemos respeitar as seguintes heurísticas:

  • warnings devem ser preferidos para desenvolvedores da biblioteca e de bibliotecas dependentes de transformers
  • logging deve ser usado por usuários finais da biblioteca em projetos do dia a dia

Veja a referência do método captureWarnings abaixo.

transformers.utils.logging.captureWarnings

< >

( capture )

Chama o método captureWarnings da biblioteca de logging para permitir o gerenciamento dos avisos emitidos pela biblioteca warnings.

Saiba mais sobre este método aqui: https://docs.python.org/3/library/logging.html#integration-with-the-warnings-module

Todos os avisos serão registrados por meio do logger py.warnings.

Atenção: este método também adiciona um manipulador a este logger, caso ele ainda não tenha um, e atualiza o nível de log desse logger para o logger raiz da biblioteca.

Setters de base

transformers.utils.logging.set_verbosity_error

< >

( )

Defina a verbosidade para o nível ERROR.

transformers.utils.logging.set_verbosity_warning

< >

( )

Defina a verbosidade para o nível WARNING.

transformers.utils.logging.set_verbosity_info

< >

( )

Defina a verbosidade para o nível INFO.

transformers.utils.logging.set_verbosity_debug

< >

( )

Defina a verbosidade para o nível DEBUG.

Outras funções

transformers.utils.logging.get_verbosity

< >

( ) → int

Retorna

int

O nível de log.

Retorna o nível atual do logger raiz do 🤗 Transformers como um int.

O 🤗 Transformers possui os seguintes níveis de log:

  • 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 )

Parâmetros

  • verbosity (int) — Nível de log, por exemplo, um dos seguintes:
    • transformers.logging.CRITICAL ou transformers.logging.FATAL
    • transformers.logging.ERROR
    • transformers.logging.WARNING ou transformers.logging.WARN
    • transformers.logging.INFO
    • transformers.logging.DEBUG

Defina o nível de verbosidade do logger raiz do 🤗 Transformers.

transformers.utils.logging.get_logger

< >

( name: str | None = None )

Retorna um logger com o nome especificado.

Esta função não deve ser acessada diretamente, a menos que você esteja escrevendo um módulo personalizado de transformers.

transformers.utils.logging.enable_default_handler

< >

( )

Ative o manipulador padrão do logger raiz do HuggingFace Transformers.

transformers.utils.logging.disable_default_handler

< >

( )

Desative o manipulador padrão do logger raiz do HuggingFace Transformers.

transformers.utils.logging.enable_explicit_format

< >

( )

Ative o formato explícito para cada logger do HuggingFace Transformers. O formatador explícito é o seguinte:

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

transformers.utils.logging.reset_format

< >

( )

Redefine o formato dos registradores do HuggingFace Transformers.

Todos os handlers atualmente vinculados ao logger raiz são afetados por este método.

transformers.utils.logging.enable_progress_bar

< >

( )

Ative a barra de progresso do tqdm.

transformers.utils.logging.disable_progress_bar

< >

( )

Desative a barra de progresso do tqdm.

Update on GitHub