# Kayıt Tutma

🤗 Transformers merkezi bir günlük tutma sistemine sahiptir, böylece kütüphanenin ayrıntı düzeyini kolayca yapılandırabilirsiniz.

Şu anda kütüphanenin varsayılan ayrıntı düzeyi `WARNING`'dir.

Ayrıntı düzeyini değiştirmek için doğrudan ayarlayıcılardan birini kullanmanız yeterlidir. Örneğin, ayrıntı düzeyini INFO düzeyine nasıl değiştireceğiniz aşağıda gösterilmektedir.

```python
import transformers

transformers.logging.set_verbosity_info()
```

Varsayılan ayrıntı düzeyini geçersiz kılmak için `TRANSFORMERS_VERBOSITY` ortam değişkenini de kullanabilirsiniz. Bunu aşağıdakilerden birine ayarlayabilirsiniz: `debug`, `info`, `warning`, `error`, `critical`, `fatal`. Örneğin:

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

Ayrıca, bazı `warnings`, `TRANSFORMERS_NO_ADVISORY_WARNINGS` ortam değişkenini *1* gibi bir doğru değerine ayarlayarak devre dışı bırakılabilir. Bu, `logger.warning_advice` kullanılarak kaydedilen tüm uyarıları devre dışı bırakır. Örneğin:

```bash
TRANSFORMERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py
```

Kendi modülünüzde veya betiğinizde kütüphaneyle aynı kayıtçının nasıl kullanılacağına dair bir örnek:

```python
from transformers.utils import logging

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

Bu kayıt modülündeki tüm yöntemler aşağıda belgelenmiştir; başlıcaları, kayıtçının (logger) mevcut ayrıntı düzeyini almak için [logging.get_verbosity()](/docs/transformers/main/tr/main_classes/logging#transformers.utils.logging.get_verbosity) ve ayrıntı düzeyini istediğiniz seviyeye ayarlamak için [logging.set_verbosity()](/docs/transformers/main/tr/main_classes/logging#transformers.utils.logging.set_verbosity) şeklindedir. Bu düzeyler (az ayrıntılıdan en ayrıntılıya doğru sıralanmış, parantez içinde ilgili tamsayı değerleriyle) şunlardır:

- `transformers.logging.CRITICAL` veya `transformers.logging.FATAL` (int değeri, 50): yalnızca en kritik hataları raporlar.
- `transformers.logging.ERROR` (int değeri, 40): yalnızca hataları raporlar.
- `transformers.logging.WARNING` veya `transformers.logging.WARN` (int değeri, 30): yalnızca hata ve uyarıları raporlar. Bu, kütüphanenin varsayılan olarak kullandığı seviyedir.
- `transformers.logging.INFO` (int değeri, 20): hataları, uyarıları ve temel bilgileri raporlar.
- `transformers.logging.DEBUG` (int değeri, 10): tüm bilgileri raporlar.

Varsayılan olarak, model indirme sırasında `tqdm` ilerleme çubukları görüntülenir. Bu davranışı bastırmak veya kaldırmak için [logging.disable_progress_bar()](/docs/transformers/main/tr/main_classes/logging#transformers.utils.logging.disable_progress_bar) ve [logging.enable_progress_bar()](/docs/transformers/main/tr/main_classes/logging#transformers.utils.logging.enable_progress_bar) kullanılabilir.

## `logging` ve `warnings`[[transformers.utils.logging.captureWarnings]]

Python'da genellikle birlikte kullanılan iki kayıt sistemi vardır: yukarıda açıklanan `logging` ve belirli kategorilerde uyarı sınıflandırmasına olanak tanıyan `warnings`. Örneğin, artık kullanımdan kaldırılmış bir özellik veya yol için `FutureWarning` ve yaklaşan bir kullanımdan kaldırma durumunu belirtmek için `DeprecationWarning` kullanılır.

Her ikisini de `transformers` kütüphanesinde kullanıyoruz. `logging`'in `captureWarnings` yönteminden yararlanarak ve uyarlayarak, bu uyarı mesajlarının yukarıdaki ayrıntılık ayarlayıcıları tarafından yönetilmesine olanak tanıyoruz.

Bu, kütüphanenin geliştiricileri için ne anlama geliyor? Aşağıdaki heuristiklere saygı göstermeliyiz:

- `warnings`, `transformers` kütüphanesinin ve bu kütüphaneye bağımlı kütüphanelerin geliştiricileri için tercih edilmelidir
- `logging`, kütüphaneyi günlük projelerinde kullanan son kullanıcılar için kullanılmalıdır

Aşağıdaki `captureWarnings` yönteminin referansına bakın.

#### transformers.utils.logging.captureWarnings[[transformers.utils.logging.captureWarnings]]

```python
transformers.utils.logging.captureWarnings(capture)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L136)

Günlükleme kütüphanesinden `captureWarnings` metodunu çağırarak `warnings` kütüphanesinin yayınladığı uyarıların yönetimini etkinleştirir.

Bu yöntem hakkında daha fazla bilgiyi burada okuyabilirsiniz: https://docs.python.org/3/library/logging.html#integration-with-the-warnings-module

Tüm uyarılar `py.warnings` kayıtçısı aracılığıyla günlüğe kaydedilir.

Dikkat: Bu yöntem, bu kayıtçıda (logger) henüz bir işlemci (handler) yoksa bir işlemci ekler ve o kayıtçının kayıt seviyesini (logging level) kütüphanenin kök kayıtçısına (root logger) göre günceller.

## Temel ayarlayıcılar[[transformers.utils.logging.set_verbosity_error]]

#### transformers.utils.logging.set_verbosity_error[[transformers.utils.logging.set_verbosity_error]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L230)

Ayrıntı düzeyini `ERROR` seviyesine ayarlayın.

#### transformers.utils.logging.set_verbosity_warning[[transformers.utils.logging.set_verbosity_warning]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L220)

Ayrıntı düzeyini `WARNING` seviyesine ayarlayın.

#### transformers.utils.logging.set_verbosity_info[[transformers.utils.logging.set_verbosity_info]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L215)

Ayrıntı düzeyini `INFO` seviyesine ayarlayın.

#### transformers.utils.logging.set_verbosity_debug[[transformers.utils.logging.set_verbosity_debug]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L225)

Ayrıntı düzeyini `DEBUG` seviyesine ayarlayın.

## Diğer işlevler[[transformers.utils.logging.get_verbosity]]

#### transformers.utils.logging.get_verbosity[[transformers.utils.logging.get_verbosity]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L173)

**Dönüş:** `int`

Günlükleme düzeyi.

🤗 Transformers'ın kök kayıtçısının (root logger) mevcut seviyesini bir int olarak döndürür.

🤗 Transformers aşağıdaki kayıt seviyelerine sahiptir:

- 50: `transformers.logging.CRITICAL` veya `transformers.logging.FATAL`
- 40: `transformers.logging.ERROR`
- 30: `transformers.logging.WARNING` veya `transformers.logging.WARN`
- 20: `transformers.logging.INFO`
- 10: `transformers.logging.DEBUG`

#### transformers.utils.logging.set_verbosity[[transformers.utils.logging.set_verbosity]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L196)

**Parametreler:**

verbosity (`int`) : Kayıt seviyesi, örneğin şunlardan biri: - `transformers.logging.CRITICAL` veya `transformers.logging.FATAL` - `transformers.logging.ERROR` - `transformers.logging.WARNING` veya `transformers.logging.WARN` - `transformers.logging.INFO` - `transformers.logging.DEBUG`

🤗 Transformers'ın kök kayıt birimi için ayrıntı düzeyini ayarlayın.

#### transformers.utils.logging.get_logger[[transformers.utils.logging.get_logger]]

```python
transformers.utils.logging.get_logger(name: str | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L159)

Belirtilen adla bir kayıtçı döndürür.

Bu fonksiyon, özel bir transformers modülü yazmıyorsanız doğrudan erişilmemesi gereken bir fonksiyondur.

#### transformers.utils.logging.enable_default_handler[[transformers.utils.logging.enable_default_handler]]

```python
transformers.utils.logging.enable_default_handler()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L244)

HuggingFace Transformers'ın kök kayıt biriminin (root logger) varsayılan işleyicisini etkinleştirin.

#### transformers.utils.logging.disable_default_handler[[transformers.utils.logging.disable_default_handler]]

```python
transformers.utils.logging.disable_default_handler()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L235)

HuggingFace Transformers'ın kök kayıt biriminin (root logger) varsayılan işleyicisini devre dışı bırakın.

#### transformers.utils.logging.enable_explicit_format[[transformers.utils.logging.enable_explicit_format]]

```python
transformers.utils.logging.enable_explicit_format()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L290)

HuggingFace Transformers'ın her kayıtçısı için açık biçimlendirmeyi etkinleştirin. Açık biçimlendirici aşağıdaki gibidir:
```
    [LEVELNAME|FILENAME|LINE NUMBER] TIME >> MESSAGE
```

Bu yöntem, kök kayıt defterine (root logger) şu anda bağlı olan tüm işleyicileri etkiler.

#### transformers.utils.logging.reset_format[[transformers.utils.logging.reset_format]]

```python
transformers.utils.logging.reset_format()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L305)

HuggingFace Transformers'ın kayıtçılarının biçimlendirmesini sıfırlar.

Bu yöntem, kök kayıt defterine (root logger) şu anda bağlı olan tüm işleyicileri etkiler.

#### transformers.utils.logging.enable_progress_bar[[transformers.utils.logging.enable_progress_bar]]

```python
transformers.utils.logging.enable_progress_bar()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L410)

tqdm ilerleme çubuğunu etkinleştirin.

#### transformers.utils.logging.disable_progress_bar[[transformers.utils.logging.disable_progress_bar]]

```python
transformers.utils.logging.disable_progress_bar()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py#L417)

tqdm ilerleme çubuğunu devre dışı bırakır.

