Buckets:

HuggingFaceDocBuilder's picture
|
download
raw
9.69 kB
# λ‘œκΉ… [[logging]]
πŸ€— νŠΈλžœμŠ€ν¬λ¨ΈλŠ” 쀑앙 집쀑식 λ‘œκΉ… μ‹œμŠ€ν…œμ„ μ œκ³΅ν•˜μ—¬ 라이브러리의 좜λ ₯ λ ˆλ²¨μ„ μ‰½κ²Œ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
ν˜„μž¬ 라이브러리의 κΈ°λ³Έ 좜λ ₯ λ ˆλ²¨μ€ `WARNING`으둜 μ„€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
좜λ ₯ λ ˆλ²¨μ„ λ³€κ²½ν•˜λ €λ©΄ 직접적인 μ„€μ • λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 좜λ ₯ λ ˆλ²¨μ„ INFO μˆ˜μ€€μœΌλ‘œ λ³€κ²½ν•˜λŠ” 방법은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
```python
import transformers
transformers.logging.set_verbosity_info()
```
ν™˜κ²½ λ³€μˆ˜ `TRANSFORMERS_VERBOSITY`λ₯Ό μ‚¬μš©ν•˜μ—¬ κΈ°λ³Έ 좜λ ₯ λ ˆλ²¨μ„ μž¬μ •μ˜ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό `debug`, `info`, `warning`, `error`, `critical`, `fatal` 쀑 ν•˜λ‚˜λ‘œ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
```bash
TRANSFORMERS_VERBOSITY=error ./myprogram.py
```
λ˜ν•œ, 일뢀 `warnings`λŠ” ν™˜κ²½ λ³€μˆ˜ `TRANSFORMERS_NO_ADVISORY_WARNINGS`λ₯Ό 1κ³Ό 같은 true κ°’μœΌλ‘œ μ„€μ •ν•˜μ—¬ λΉ„ν™œμ„±ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ `logger.warning_advice`λ₯Ό μ‚¬μš©ν•˜μ—¬ 기둝된 κ²½κ³ κ°€ λΉ„ν™œμ„±ν™”λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
```bash
TRANSFORMERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py
```
λ‹€μŒμ€ λΌμ΄λΈŒλŸ¬λ¦¬μ™€ λ™μΌν•œ 둜거λ₯Ό μžμ‹ μ˜ λͺ¨λ“ˆμ΄λ‚˜ μŠ€ν¬λ¦½νŠΈμ—μ„œ μ‚¬μš©ν•˜λŠ” 방법에 λŒ€ν•œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
```python
from transformers.utils import logging
logging.set_verbosity_info()
logger = logging.get_logger("transformers")
logger.info("INFO")
logger.warning("WARN")
```
이 λ‘œκΉ… λͺ¨λ“ˆμ˜ λͺ¨λ“  λ©”μ„œλ“œλŠ” μ•„λž˜μ— λ¬Έμ„œν™”λ˜μ–΄ 있으며, μ£Όμš” λ©”μ„œλ“œλŠ” ν˜„μž¬ 둜거의 좜λ ₯ μˆ˜μ€€μ„ κ°€μ Έμ˜€λŠ” [logging.get_verbosity()](/docs/transformers/main/ko/main_classes/logging#transformers.utils.logging.get_verbosity)와 μ›ν•˜λŠ” 좜λ ₯ μˆ˜μ€€μœΌλ‘œ μ„€μ •ν•˜λŠ” [logging.set_verbosity()](/docs/transformers/main/ko/main_classes/logging#transformers.utils.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()](/docs/transformers/main/ko/main_classes/logging#transformers.utils.logging.disable_progress_bar)와 [logging.enable_progress_bar()](/docs/transformers/main/ko/main_classes/logging#transformers.utils.logging.enable_progress_bar)λ₯Ό μ‚¬μš©ν•˜μ—¬ 이 λ™μž‘μ„ μˆ¨κΈ°κ±°λ‚˜ λ‹€μ‹œ ν‘œμ‹œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
## `logging` vs `warnings`[[transformers.utils.logging.captureWarnings]][[transformers.utils.logging.captureWarnings]]
Pythonμ—λŠ” μ’…μ’… ν•¨κ»˜ μ‚¬μš©λ˜λŠ” 두 κ°€μ§€ λ‘œκΉ… μ‹œμŠ€ν…œμ΄ μžˆμŠ΅λ‹ˆλ‹€. μœ„μ—μ„œ μ„€λͺ…ν•œ `logging`κ³Ό `warnings`μž…λ‹ˆλ‹€. `warnings`λŠ” νŠΉμ • λ²”μ£Όλ‘œ κ²½κ³ λ₯Ό μ„ΈλΆ„ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 이미 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” κΈ°λŠ₯μ΄λ‚˜ κ²½λ‘œμ— λŒ€ν•΄ `FutureWarning`이 μ‚¬μš©λ˜κ³ , κ³§ μ‚¬μš© 쀑단될 κΈ°λŠ₯을 μ•Œλ¦¬κΈ° μœ„ν•΄ `DeprecationWarning`이 μ‚¬μš©λ©λ‹ˆλ‹€.
트랜슀포머 λΌμ΄λΈŒλŸ¬λ¦¬μ—μ„œλŠ” 두 μ‹œμŠ€ν…œ λͺ¨λ‘λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. `logging`의 `captureWarnings` λ©”μ„œλ“œλ₯Ό ν™œμš©ν•˜κ³  이λ₯Ό μ‘°μ •ν•˜μ—¬ μœ„μ—μ„œ μ„€λͺ…ν•œ 좜λ ₯ μˆ˜μ€€ μ„€μ •μžλ“€μ„ 톡해 μ΄λŸ¬ν•œ κ²½κ³  λ©”μ‹œμ§€λ“€μ„ 관리할 수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.
라이브러리 κ°œλ°œμžλŠ” λ‹€μŒκ³Ό 같은 지침을 λ”°λ₯΄λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.
- `warnings`λŠ” 라이브러리 κ°œλ°œμžμ™€ `transformers`에 μ˜μ‘΄ν•˜λŠ” 라이브러리 κ°œλ°œμžλ“€μ—κ²Œ μœ λ¦¬ν•©λ‹ˆλ‹€.
- `logging`은 일반적인 ν”„λ‘œμ νŠΈ 라이브러리 κ°œλ°œμžλ³΄λ‹€λŠ”, 라이브러리λ₯Ό μ‚¬μš©ν•˜λŠ” μ΅œμ’… μ‚¬μš©μžλ“€μ—κ²Œ μœ λ¦¬ν•  κ²ƒμž…λ‹ˆλ‹€.
μ•„λž˜μ—μ„œ `captureWarnings` λ©”μ†Œλ“œμ— λŒ€ν•œ μ°Έκ³  사항을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
#### transformers.utils.logging.captureWarnings[[transformers.utils.logging.captureWarnings]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L136)
Calls the `captureWarnings` method from the logging library to enable management of the warnings emitted by the
`warnings` library.
Read more about this method here:
https://docs.python.org/3/library/logging.html#integration-with-the-warnings-module
All warnings will be logged through the `py.warnings` logger.
Careful: this method also adds a handler to this logger if it does not already have one, and updates the logging
level of that logger to the library's root logger.
## κΈ°λ³Έ μ„€μ •μž [[transformers.utils.logging.set_verbosity_error]][[transformers.utils.logging.set_verbosity_error]]
#### transformers.utils.logging.set_verbosity_error[[transformers.utils.logging.set_verbosity_error]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L230)
Set the verbosity to the `ERROR` level.
#### transformers.utils.logging.set_verbosity_warning[[transformers.utils.logging.set_verbosity_warning]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L220)
Set the verbosity to the `WARNING` level.
#### transformers.utils.logging.set_verbosity_info[[transformers.utils.logging.set_verbosity_info]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L215)
Set the verbosity to the `INFO` level.
#### transformers.utils.logging.set_verbosity_debug[[transformers.utils.logging.set_verbosity_debug]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L225)
Set the verbosity to the `DEBUG` level.
## 기타 ν•¨μˆ˜ [[transformers.utils.logging.get_verbosity]][[transformers.utils.logging.get_verbosity]]
#### transformers.utils.logging.get_verbosity[[transformers.utils.logging.get_verbosity]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L173)
Return the current level for the πŸ€— Transformers's root logger as an int.
πŸ€— Transformers has following logging levels:
- 50: `transformers.logging.CRITICAL` or `transformers.logging.FATAL`
- 40: `transformers.logging.ERROR`
- 30: `transformers.logging.WARNING` or `transformers.logging.WARN`
- 20: `transformers.logging.INFO`
- 10: `transformers.logging.DEBUG`
**Returns:**
``int``
The logging level.
#### transformers.utils.logging.set_verbosity[[transformers.utils.logging.set_verbosity]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L196)
Set the verbosity level for the πŸ€— Transformers's root logger.
**Parameters:**
verbosity (`int`) : Logging level, e.g., one of: - `transformers.logging.CRITICAL` or `transformers.logging.FATAL` - `transformers.logging.ERROR` - `transformers.logging.WARNING` or `transformers.logging.WARN` - `transformers.logging.INFO` - `transformers.logging.DEBUG`
#### transformers.utils.logging.get_logger[[transformers.utils.logging.get_logger]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L159)
Return a logger with the specified name.
This function is not supposed to be directly accessed unless you are writing a custom transformers module.
#### transformers.utils.logging.enable_default_handler[[transformers.utils.logging.enable_default_handler]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L244)
Enable the default handler of the HuggingFace Transformers's root logger.
#### transformers.utils.logging.disable_default_handler[[transformers.utils.logging.disable_default_handler]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L235)
Disable the default handler of the HuggingFace Transformers's root logger.
#### transformers.utils.logging.enable_explicit_format[[transformers.utils.logging.enable_explicit_format]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L290)
Enable explicit formatting for every HuggingFace Transformers's logger. The explicit formatter is as follows:
```
[LEVELNAME|FILENAME|LINE NUMBER] TIME >> MESSAGE
```
All handlers currently bound to the root logger are affected by this method.
#### transformers.utils.logging.reset_format[[transformers.utils.logging.reset_format]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L305)
Resets the formatting for HuggingFace Transformers's loggers.
All handlers currently bound to the root logger are affected by this method.
#### transformers.utils.logging.enable_progress_bar[[transformers.utils.logging.enable_progress_bar]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L410)
Enable tqdm progress bar.
#### transformers.utils.logging.disable_progress_bar[[transformers.utils.logging.disable_progress_bar]]
[Source](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L417)
Disable tqdm progress bar.

Xet Storage Details

Size:
9.69 kB
Β·
Xet hash:
4053007710e8e5031be0697f3be9a3bddcd90864592b034e8d10e250d11fb382

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.