# 实用工具

## 配置日志[[datasets.utils.logging.get_verbosity]]

🤗 Datasets 力求透明并明确说明其工作原理，但这有时可能显得冗长。我们提供了一系列日志记录方法，方便您轻松调整整个库的日志详细程度。目前，该库的默认日志级别设置为 `WARNING`。

要更改详细程度，请使用其中一个直接设置器。例如，以下是如何将详细程度更改为 `INFO` 级别：

```py
import datasets
datasets.logging.set_verbosity_info()
```

您还可以使用环境变量 `DATASETS_VERBOSITY` 来覆盖默认的日志详细程度，并将其设置为以下值之一：`debug`、`info`、`warning`、`error`、`critical`：

```bash
DATASETS_VERBOSITY=error ./myprogram.py
```

本日志模块的所有方法均记录如下。主要方法包括：

- 使用 [logging.get_verbosity()](/docs/datasets/main/zh/package_reference/utilities#datasets.utils.logging.get_verbosity) 获取日志记录器当前的详细程度级别
- 使用 [logging.set_verbosity()](/docs/datasets/main/zh/package_reference/utilities#datasets.utils.logging.set_verbosity) 将详细程度设置为您所需的级别

按从最简洁到最冗长的顺序排列（及其对应的 `int` 值）：

1. `logging.CRITICAL` 或 `logging.FATAL`（整数值，50）：仅报告最严重的错误。
2. `logging.ERROR`（整数值，40）：仅报告错误。
3. `logging.WARNING` 或 `logging.WARN`（整数值，30）：仅报告错误和警告。这是该库使用的默认级别。
4. `logging.INFO`（整数值，20）：报告错误、警告和基本信息。
5. `logging.DEBUG`（整数值，10）：报告所有信息。

#### datasets.utils.logging.get_verbosity[[datasets.utils.logging.get_verbosity]]

```python
datasets.utils.logging.get_verbosity()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L94)

**返回：**

日志级别，例如 `datasets.logging.DEBUG` 和 `datasets.logging.INFO`。

返回 HuggingFace datasets 库根日志记录器（root logger）的当前日志级别。

> [!TIP]
> HuggingFace datasets 库具有以下日志级别： - `datasets.logging.CRITICAL`、`datasets.logging.FATAL` - `datasets.logging.ERROR` - `datasets.logging.WARNING`、`datasets.logging.WARN` - `datasets.logging.INFO` - `datasets.logging.DEBUG`

#### datasets.utils.logging.set_verbosity[[datasets.utils.logging.set_verbosity]]

```python
datasets.utils.logging.set_verbosity(verbosity: int)
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L110)

**参数：**

verbosity : 日志级别，例如 `datasets.logging.DEBUG` 和 `datasets.logging.INFO`。

设置 Hugging Face Datasets 库根日志记录器的级别。

#### datasets.utils.logging.set_verbosity_info[[datasets.utils.logging.set_verbosity_info]]

```python
datasets.utils.logging.set_verbosity_info()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L119)

将 Hugging Face datasets 库的根日志记录器级别设置为 `INFO`。

这将显示大部分日志信息和 tqdm 进度条。

`datasets.logging.set_verbosity(datasets.logging.INFO)` 的快捷方式。

#### datasets.utils.logging.set_verbosity_warning[[datasets.utils.logging.set_verbosity_warning]]

```python
datasets.utils.logging.set_verbosity_warning()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L129)

将 Hugging Face datasets 库的根日志记录器级别设置为 `WARNING`。

这将仅显示警告和错误日志信息以及 tqdm 进度条。

`datasets.logging.set_verbosity(datasets.logging.WARNING)` 的快捷方式。

#### datasets.utils.logging.set_verbosity_debug[[datasets.utils.logging.set_verbosity_debug]]

```python
datasets.utils.logging.set_verbosity_debug()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L139)

将 Hugging Face datasets 库的根日志记录器级别设置为 `DEBUG`。

这将显示所有日志信息和 tqdm 进度条。

`datasets.logging.set_verbosity(datasets.logging.DEBUG)` 的快捷方式。

#### datasets.utils.logging.set_verbosity_error[[datasets.utils.logging.set_verbosity_error]]

```python
datasets.utils.logging.set_verbosity_error()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L149)

将 Hugging Face datasets 库的根日志记录器级别设置为 `ERROR`。

这将仅显示错误日志信息和 tqdm 进度条。

`datasets.logging.set_verbosity(datasets.logging.ERROR)` 的快捷方式。

#### datasets.utils.logging.disable_propagation[[datasets.utils.logging.disable_propagation]]

```python
datasets.utils.logging.disable_propagation()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L159)

禁用库日志输出的传播。请注意，日志传播默认处于禁用状态。

#### datasets.utils.logging.enable_propagation[[datasets.utils.logging.enable_propagation]]

```python
datasets.utils.logging.enable_propagation()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/logging.py#L166)

启用库日志输出的传播。如果已配置根日志记录器，请禁用 Hugging Face datasets 库的默认处理器，以防止重复记录日志。

## 配置进度条[[datasets.enable_progress_bars]]

默认情况下，在数据集下载和预处理过程中会显示 `tqdm` 进度条。您可以通过设置 `HF_DATASETS_DISABLE_PROGRESS_BARS` 环境变量来全局禁用它们。您也可以使用 [enable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.enable_progress_bars) 和 [disable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.disable_progress_bars) 来启用或禁用它们。如果设置了环境变量，则其优先级高于辅助函数。

#### datasets.enable_progress_bars[[datasets.enable_progress_bars]]

```python
datasets.enable_progress_bars()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/tqdm.py#L78)

启用 `datasets` 中使用的全局进度条，除非已设置 `HF_DATASETS_DISABLE_PROGRESS_BARS` 环境变量。

使用 [disable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.disable_progress_bars) 来禁用它们。

#### datasets.disable_progress_bars[[datasets.disable_progress_bars]]

```python
datasets.disable_progress_bars()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/tqdm.py#L61)

禁用 `datasets` 中全局使用的进度条，除非已设置 `HF_DATASETS_DISABLE_PROGRESS_BARS` 环境变量。

使用 [enable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.enable_progress_bars) 重新启用它们。

#### datasets.are_progress_bars_disabled[[datasets.are_progress_bars_disabled]]

```python
datasets.are_progress_bars_disabled()
```

[源代码](https://github.com/huggingface/datasets/blob/main/src/datasets/utils/tqdm.py#L95)

返回进度条是否在全局范围内被禁用。

`datasets` 中使用的进度条可以通过 [enable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.enable_progress_bars) 和 [disable_progress_bars()](/docs/datasets/main/zh/package_reference/utilities#datasets.disable_progress_bars) 全局启用或禁用，也可以通过将 `HF_DATASETS_DISABLE_PROGRESS_BARS` 设置为环境变量来实现。

