# Tokenizörler için yardımcı programlar

Bu sayfa, [PreTrainedTokenizer](/docs/transformers/main/tr/main_classes/tokenizer#transformers.PythonBackend) ve [PreTrainedTokenizerFast](/docs/transformers/main/tr/main_classes/tokenizer#transformers.TokenizersBackend) arasındaki ortak yöntemleri uygulayan [PreTrainedTokenizerBase](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase) sınıfı başta olmak üzere, tokenizörler tarafından kullanılan tüm yardımcı işlevleri listeler.

Bunların çoğu, kütüphanedeki tokenizörlerin kodunu inceliyorsanız işe yarar.

## PreTrainedTokenizerBase[[transformers.PreTrainedTokenizerBase]]

#### transformers.PreTrainedTokenizerBase[[transformers.PreTrainedTokenizerBase]]

```python
transformers.PreTrainedTokenizerBase(**kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L968)

**Parametreler:**

model_max_length (`int`, *isteğe bağlı*) : Transformer modeline girecek girdilerin maksimum uzunluğu (token sayısı cinsinden). Tokenizer [from_pretrained()](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.from_pretrained) ile yüklendiğinde, bu değer `max_model_input_sizes` içinde ilgili model için saklanan değere ayarlanır (bkz. yukarı). Bir değer sağlanmazsa, varsayılan olarak VERY_LARGE_INTEGER (`int(1e30)`) kullanılır.

padding_side (`str`, *isteğe bağlı*) : Modelin padding uygulanması gereken tarafı. ['right', 'left'] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden alınır.

truncation_side (`str`, *isteğe bağlı*) : Modelde kırpmanın uygulanması gereken taraf. ['right', 'left'] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özniteliğinden alınır.

chat_template (`str`, *isteğe bağlı*) : Sohbet mesajı listelerini biçimlendirmek için kullanılacak bir Jinja şablon dizesi. Tam açıklama için https://huggingface.co/docs/transformers/chat_templating adresine bakın.

model_input_names (`list[string]`, *isteğe bağlı*) : Modelin ileri geçişinin kabul ettiği girdilerin listesi (örneğin `"token_type_ids"` veya `"attention_mask"`). Varsayılan değer, aynı ada sahip sınıf özniteliğinden seçilir.

bos_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Bir cümlenin başlangıcını temsil eden özel bir belirteç.

eos_token (`str` veya `tokenizers.AddedToken`, *opsiyonel*) : Bir cümlenin sonunu temsil eden özel bir belirteç.

unk_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Sözlük dışı bir token'ı temsil eden özel bir token.

sep_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Aynı girdideki iki farklı cümleyi ayıran özel bir belirteç (örneğin BERT tarafından kullanılır).

pad_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Toplu işleme (batching) amacıyla token dizilerini aynı boyuta getirmek için kullanılan özel bir token. Dikkat mekanizmaları veya kayıp (loss) hesaplaması tarafından yok sayılır.

cls_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Girdinin sınıfını temsil eden özel bir jeton (örneğin BERT tarafından kullanılır).

mask_token (`str` veya `tokenizers.AddedToken`, *isteğe bağlı*) : Maskelenmiş bir token'ı temsil eden özel bir token (BERT gibi maskeli dil modelleme ön eğitim hedeflerinde kullanılır). `self.mask_token` ve `self.mask_token_id` ile ilişkilendirilecektir.

extra_special_tokens (`str` veya `tokenizers.AddedToken` listesi, *isteğe bağlı*) : Modelle ilgili ek özel tokenların listesi. `skip_special_tokens` True olarak ayarlandığında çözümleme sırasında bunların atlanmasını sağlamak için buraya ekleyin. Sözlüğün bir parçası değillerse, sözlüğün sonuna eklenirler.

split_special_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Özel jetonların tokenizasyon işlemi sırasında bölünüp bölünmeyeceğini belirtir. Değer geçilmesi, tokenizer'ın iç durumunu etkiler. Varsayılan davranış, özel jetonları bölmemektir. Bu, `<s>` `bos_token` ise `tokenizer.tokenize("<s>") = ['<s>`]' sonucunu verir. Aksi halde, `split_special_tokens=True` ise `tokenizer.tokenize("<s>")` `['<','s', '>']` sonucunu verir.

Tüm tokenizer arka uçları için temel sınıf.

Sınıf özellikleri (türetilen sınıflar tarafından geçersiz kılınır)

- **vocab_files_names** (`dict[str, str]`) -- Modelin gerektirdiği her sözlük dosyasının `__init__` anahtar kelime adını anahtar olarak, ilgili dosyanın kaydedileceği dosya adını (string) ise değer olarak içeren bir sözlük.
- **pretrained_vocab_files_map** (`dict[str, dict[str, str]]`) -- Bir sözlüklerin sözlüğü; üst düzey anahtarlar, modelin gerektirdiği her sözlük dosyasının `__init__` anahtar kelime adını, alt düzey anahtarlar ise ön eğitilmiş modellerin `short-cut-names` kısaltmalarını içerir ve ilişkili değerler olarak ilgili ön eğitilmiş sözlük dosyasına giden `url` adresini taşır.
- **model_input_names** (`list[str]`) -- Modelin ileri geçişinde beklenen girdilerin listesi.
- **padding_side** (`str`) -- Modelin padding uygulanması gereken tarafı için varsayılan değer. `'right'` veya `'left'` olmalıdır.
- **truncation_side** (`str`) -- Modelde kırpmanın uygulanacağı taraf için varsayılan değer. `'right'` veya `'left'` olmalıdır.

#### __call__[[transformers.PreTrainedTokenizerBase.__call__]]

```python
__call__(text: TextInput | PreTokenizedInput | list[TextInput] | list[PreTokenizedInput] | None = None, text_pair: TextInput | PreTokenizedInput | list[TextInput] | list[PreTokenizedInput] | None = None, text_target: TextInput | PreTokenizedInput | list[TextInput] | list[PreTokenizedInput] | None = None, text_pair_target: TextInput | PreTokenizedInput | list[TextInput] | list[PreTokenizedInput] | None = None, add_special_tokens: bool = True, padding: bool | str | PaddingStrategy = False, truncation: bool | str | TruncationStrategy | None = None, max_length: int | None = None, stride: int = 0, is_split_into_words: bool = False, pad_to_multiple_of: int | None = None, padding_side: str | None = None, return_tensors: str | TensorType | None = None, return_token_type_ids: bool | None = None, return_attention_mask: bool | None = None, return_overflowing_tokens: bool = False, return_special_tokens_mask: bool = False, return_offsets_mapping: bool = False, return_length: bool = False, verbose: bool = True, tokenizer_kwargs: dict[str, Any] | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2449)

**Parametreler:**

text (`str`, `list[str]`, `list[list[str]]`, *opsiyonel*) : Kodlanacak dizi veya dizi partisi. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Diziler metin listesi (önceden tokenize edilmiş) olarak sağlanıyorsa, `is_split_into_words=True` değerini ayarlamanız gerekir (dizi partisiyle olan belirsizliği gidermek için).

text_pair (`str`, `list[str]`, `list[list[str]]`, *opsiyonel*) : Kodlanacak dizi veya dizi partisi. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Diziler metin listesi (önceden tokenize edilmiş) olarak sağlanıyorsa, `is_split_into_words=True` değerini ayarlamanız gerekir (dizi partisiyle olan belirsizliği gidermek için).

text_target (`str`, `list[str]`, `list[list[str]]`, *opsiyonel*) : Hedef metinler olarak kodlanacak dizi veya dizi grubu. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Diziler metin listesi (önceden tokenize edilmiş) olarak sağlanıyorsa, `is_split_into_words=True` değerini ayarlamanız gerekir (dizi grubu ile belirsizliği gidermek için).

text_pair_target (`str`, `list[str]`, `list[list[str]]`, *isteğe bağlı*) : Hedef metinler olarak kodlanacak dizi veya dizi grubu. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Diziler metin listesi (önceden tokenize edilmiş) olarak sağlanıyorsa, `is_split_into_words=True` değerini ayarlamanız gerekir (dizi grubu ile belirsizliği gidermek için).

tokenizer_kwargs (`dict[str, Any]`, *isteğe bağlı*) : Tokenizöre iletilecek ek kwargs'lar. Bunlar, açık parametreler ve diğer kwargs'larla birleştirilir; açık parametreler önceliklidir.

add_special_tokens (`bool`, *isteğe bağlı*, varsayılan `True`) : Dizileri kodlarken özel jetonların eklenip eklenmeyeceğini belirtir. Bu, girdi kimliklerine otomatik olarak eklenen jetonları tanımlayan alttaki `PretrainedTokenizerBase.build_inputs_with_special_tokens` işlevini kullanır. `bos` veya `eos` jetonlarını otomatik olarak eklemek istiyorsanız bu işe yarar.

padding (`bool`, `str` veya [PaddingStrategy](/docs/transformers/main/tr/internal/file_utils#transformers.utils.PaddingStrategy), *isteğe bağlı*, varsayılan `False`) : Dolguyu (padding) etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:  - `True` veya `'longest'`: Batch'teki en uzun diziye kadar doldurur (yalnızca tek bir dizi sağlanırsa dolgu yapılmaz). - `'max_length'`: `max_length` argümanı ile belirtilen maksimum uzunluğa kadar veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum girdi uzunluğuna kadar doldurur. - `False` veya `'do_not_pad'` (varsayılan): Dolgu yapılmaz (yani, farklı uzunluklarda diziler içeren bir batch çıktısı alınabilir).

truncation (`bool`, `str` veya [TruncationStrategy](/docs/transformers/main/tr/internal/tokenization_utils#transformers.tokenization_utils_base.TruncationStrategy), *opsiyonel*, varsayılan `False`) : Kısaltmayı etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:  - `True` veya `'longest_first'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, çiftteki en uzun diziden token token kısaltma yapar. - `'only_first'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, yalnızca çiftin ilk dizisini kısaltır. - `'only_second'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, yalnızca çiftin ikinci dizisini kısaltır. - `False` veya `'do_not_truncate'` (varsayılan): Kısaltma yapılmaz (yani, modelin kabul edebileceği maksimum giriş boyutundan daha uzun dizi uzunluklarına sahip partiler üretebilir).

max_length (`int`, *opsiyonel*) : Kırpma/doldurma parametrelerinden biri tarafından kullanılacak olan maksimum uzunluğu kontrol eder. Ayarlanmaz veya `None` olarak ayarlanırsa, kırpma/doldurma parametrelerinden biri maksimum uzunluk gerektiriyorsa, önceden tanımlanmış modelin maksimum uzunluğu kullanılır. Modelin belirli bir maksimum giriş uzunluğu yoksa (XLNet gibi) maksimum uzunluğa kırpma/doldurma devre dışı bırakılır.

stride (`int`, *opsiyonel*, varsayılan 0) : `max_length` ile birlikte bir sayıya ayarlanırsa, `return_overflowing_tokens=True` olduğunda döndürülen taşan jetonlar, kısaltılmış ve taşan diziler arasında bir örtüşme sağlamak amacıyla kısaltılmış dizinin sonundan döndürülen bazı jetonları içerir. Bu argümanın değeri, örtüşen jetonların sayısını belirler.

is_split_into_words (`bool`, *isteğe bağlı*, varsayılan `False`) : Girdinin önceden tokenize edilip edilmediğini (örneğin, kelimelere ayrılmış olup olmadığını) belirtir. `True` olarak ayarlanırsa, tokenizer girdinin zaten kelimelere ayrılmış olduğunu (örneğin, boşluklara göre bölünmüş) varsayar ve bunları tokenize eder. Bu, NER veya token sınıflandırma için faydalıdır.

pad_to_multiple_of (`int`, *isteğe bağlı*) : Ayarlanırsa, diziyi verilen değerin katına kadar doldurur. Bunun için `padding` etkinleştirilmelidir. Bu, hesaplama yeteneği `>= 7.5` (Volta) olan NVIDIA donanımlarında Tensor Cores kullanımını etkinleştirmek için özellikle faydalıdır.

padding_side (`str`, *isteğe bağlı*) : Modelin padding uygulanması gereken tarafı. ['right', 'left'] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden alınır.

return_tensors (`str` veya [TensorType](/docs/transformers/main/tr/internal/file_utils#transformers.TensorType), *opsiyonel*) : Ayarlanırsa, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler:  - `'pt'`: PyTorch `torch.Tensor` nesnelerini döndürür. - `'np'`: Numpy `np.ndarray` nesnelerini döndürür.

return_token_type_ids (`bool`, *isteğe bağlı*) : Token türü kimliklerinin döndürülüp döndürülmeyeceğini belirtir. Varsayılan bırakılırsa, `return_outputs` özniteliği tarafından tanımlanan, ilgili tokenizer'ın varsayılanına göre token türü kimlikleri döndürülür.  [Token türü kimlikleri nelerdir?](../glossary#token-type-ids)

return_attention_mask (`bool`, *isteğe bağlı*) : Dikkat maskesinin (attention mask) döndürülüp döndürülmeyeceğini belirtir. Varsayılan bırakılırsa, `return_outputs` özniteliğiyle tanımlanan, ilgili tokenizer'ın varsayılanına göre dikkat maskesi döndürülür.  [Dikkat maskeleri nelerdir?](../glossary#attention-mask)

return_overflowing_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Taşan token dizilerinin döndürülüp döndürülmeyeceğini belirtir. Girdi kimlikleri için bir dizi çifti (veya bir çiftler partisi) `truncation_strategy = longest_first` veya `True` ile sağlanırsa, taşan tokenlar döndürülmek yerine bir hata oluşturulur.

return_special_tokens_mask (`bool`, *isteğe bağlı*, varsayılan `False`) : Özel jeton maskesi bilgisinin döndürülüp döndürülmeyeceği.

return_offsets_mapping (`bool`, *isteğe bağlı*, varsayılan `False`) : Her token için `(char_start, char_end)` döndürülecek mi. Bu yalnızca [PreTrainedTokenizerFast](/docs/transformers/main/tr/main_classes/tokenizer#transformers.TokenizersBackend)'ten türeyen hızlı tokenizer'lar için kullanılabilir; Python tokenizer'ı kullanılıyorsa bu yöntem `NotImplementedError` fırlatır.

return_length  (`bool`, *isteğe bağlı*, varsayılan `False`) : Kodlanmış girdilerin uzunluklarının döndürülüp döndürülmeyeceğini belirtir.

verbose (`bool`, *isteğe bağlı*, varsayılan `True`) : Daha fazla bilgi ve uyarı basılıp basılmayacağı.

- ****kwargs** : `self.tokenize()` yöntemine iletilir

**Dönüş:** [BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding)

Aşağıdaki alanlara sahip bir [BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding):

- **input_ids** -- Bir modele verilecek token kimliklerinin listesi.

  [Girdi kimlikleri nelerdir?](../glossary#input-ids)

- **token_type_ids** -- Bir modele verilecek token türü kimlikleri listesi (`return_token_type_ids=True` olduğunda veya `self.model_input_names` içinde *"token_type_ids"* varsa).

  [Token type ID'leri nelerdir?](../glossary#token-type-ids)

- **attention_mask** -- Modelin hangi token'lara dikkat etmesi gerektiğini belirleyen indeks listesi (`return_attention_mask=True` olduğunda veya *"attention_mask"* `self.model_input_names` içinde olduğunda).

  [Dikkat maskeleri nedir?](../glossary#attention-mask)

- **overflowing_tokens** -- Taşan token dizileri listesi (`max_length` belirtildiğinde ve `return_overflowing_tokens=True` olduğunda).
- **num_truncated_tokens** -- Kırpılan token sayısı (`max_length` belirtildiğinde ve `return_overflowing_tokens=True` olduğunda).
- **special_tokens_mask** -- 0 ve 1'lerden oluşan liste; 1 eklenen özel tokenları, 0 ise normal dizi tokenlarını belirtir (`add_special_tokens=True` ve `return_special_tokens_mask=True` olduğunda).
- **length** -- Girdilerin uzunluğu (`return_length=True` olduğunda)

Bir veya birden fazla diziyi veya bir veya birden fazla dizi çiftini model için belirteçlere ayırmak ve hazırlamak için kullanılan ana yöntem.

#### add_special_tokens[[transformers.PreTrainedTokenizerBase.add_special_tokens]]

```python
add_special_tokens(special_tokens_dict: dict[str, str | AddedToken | Sequence[str | AddedToken]], replace_extra_special_tokens = True)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1113)

**Parametreler:**

special_tokens_dict (*str*'den *str*, `tokenizers.AddedToken` veya `Sequence[Union[str, AddedToken]]` türünde bir sözlük) : Anahtarlar, önceden tanımlanmış özel özniteliklerin listesinde olmalıdır: [`bos_token`, `eos_token`, `unk_token`, `sep_token`, `pad_token`, `cls_token`, `mask_token`, `extra_special_tokens`]. Tokenlar yalnızca sözlükte henüz yoklarsa eklenir (tokenizer'ın onlara `unk_token` indeksini atayıp atamadığını kontrol ederek test edilir).

replace_extra_special_tokens (`bool`, *isteğe bağlı*, varsayılan `True`) : `True` ise, mevcut ek özel token listesi, `special_tokens_dict` içinde sağlanan listeyle değiştirilir. Aksi halde `extra_special_tokens` genişletilir. Önceki durumda, tokenlar tokenizer'ın tam sözlüğünden KALDIRILMAZ - yalnızca özel olmayan token olarak işaretlenir. Unutmayın, bu yalnızca çözümleme sırasında atlanan tokenları etkiler, `added_tokens_encoder` ve `added_tokens_decoder` etkilenmez. Bu, önceki `extra_special_tokens`'in hâlâ eklenmiş tokenlar olduğu ve model tarafından bölünmeyeceği anlamına gelir.

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

Sözlüğe eklenen token sayısı.

Özel tokenler (eos, pad, cls vb.) sözlüğünü ekleyiciye ekleyin ve bunları sınıf özniteliklerine bağlayın. Özel tokenler sözlükte (vocabulary) yoksa, mevcut sözlüğün son indeksinden başlayarak indekslenerek sözlüğe eklenir.

Sözlüğe yeni token eklerken, modelin token gömme matrisini yeniden boyutlandırmanız ve gömme matrisinin tokenizer ile eşleşmesini sağlamanız gerekir.

Bunu yapmak için lütfen [resize_token_embeddings()](/docs/transformers/main/tr/main_classes/model#transformers.PreTrainedModel.resize_token_embeddings) yöntemini kullanın.

`add_special_tokens` kullanmak, özel jetonlarınızın çeşitli şekillerde kullanılmasını sağlar:

- Özel jetonlar, `skip_special_tokens = True` kullanılarak çözümlenirken atlanabilir.
- Özel jetonlar, `AddedTokens` benzeri şekilde, tokenizer tarafından dikkatle işlenir (asla bölünmezler).
- Özel jetonlara `tokenizer.cls_token` gibi tokenizer sınıf öznitelikleri aracılığıyla kolayca başvurabilirsiniz. Bu, modelden bağımsız eğitim ve ince ayar betikleri geliştirmeyi kolaylaştırır.

Mümkün olduğunda, sağlanan önceden eğitilmiş modeller için özel jetonlar zaten kayıtlıdır (örneğin [BertTokenizer](/docs/transformers/main/tr/model_doc/lxmert#transformers.BertTokenizer) `cls_token` zaten `'[CLS]'` olarak kayıtlıdır ve XLM'ninkisi de `'</s>'` olarak kayıtlıdır).

Örnekler:

```python
# Let's see how to add a new classification token to GPT-2
tokenizer = GPT2Tokenizer.from_pretrained("openai-community/gpt2")
model = GPT2Model.from_pretrained("openai-community/gpt2")

special_tokens_dict = {"cls_token": "<CLS>"}

num_added_toks = tokenizer.add_special_tokens(special_tokens_dict)
print("We have added", num_added_toks, "tokens")
# Notice: resize_token_embeddings expect to receive the full size of the new vocabulary, i.e., the length of the tokenizer.
model.resize_token_embeddings(len(tokenizer))

assert tokenizer.cls_token == "<CLS>"
```

#### add_tokens[[transformers.PreTrainedTokenizerBase.add_tokens]]

```python
add_tokens(new_tokens: str | AddedToken | Sequence[str | AddedToken], special_tokens: bool = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1218)

**Parametreler:**

new_tokens (`str`, `tokenizers.AddedToken` veya *str* ya da `tokenizers.AddedToken` dizisi) : Tokenler yalnızca sözlükte henüz yoklarsa eklenir. `tokenizers.AddedToken`, bir dize token'ı sarmalayarak davranışını kişiselleştirmenizi sağlar: bu token'ın yalnızca tek bir kelimeyle eşleşip eşleşmeyeceği, sol taraftaki tüm olası boşlukları kaldırıp kaldırmayacağı, sağ taraftaki tüm olası boşlukları kaldırıp kaldırmayacağı vb.

special_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Token'ın özel olup olmadığını belirtir. Bu, büyük ölçüde normalizasyon davranışını değiştirir. HuggingFace tokenizers kütüphanesindeki `tokenizers.AddedToken` için ayrıntılara bakın.

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

Sözlüğe eklenen token sayısı.

#TODO buradan kaldır! PreTrainedTokenizerBase, AddedToken'dan bağımsız olmalıdır.

Yeni token listesini ekleyin. Yeni tokenler sözlükte yoksa, sonuna eklenir. Bu nedenle eklenen tokenler ile tokenizasyon algoritmasının sözlüğündeki tokenler aynı şekilde ele alınmaz.

`Metaspace` ön-ayırıcısını `prepend_scheme="always"` ile kullanan hızlı ayırıcılar (ör. NLLB), eklenmiş bir token'ın ardından gelen metne `"▁"` ekler. `tokenizer.add_tokens(["abcd"])` çağrısından sonra `"abcdgym"`, `["abcd", "▁gym"]` olarak ayrılır ve `"abcd gym"` olarak çözümlenir. Eklenmiş token'lar kelime içlerinde görünebiliyorsa, ön-ayırıcıyı değiştirin

sadece girdinin başına eklenmesi için `prepend_scheme="first"` olarak

```python
from tokenizers import pre_tokenizers

pre_tokenizer = tokenizer.backend_tokenizer.pre_tokenizer
tokenizer.backend_tokenizer.pre_tokenizer = pre_tokenizers.Metaspace(
    replacement=pre_tokenizer.replacement, prepend_scheme="first", split=pre_tokenizer.split
)
```

Örnekler:

```python
# Let's see how to increase the vocabulary of Bert model and tokenizer
tokenizer = BertTokenizerFast.from_pretrained("google-bert/bert-base-uncased")
model = BertModel.from_pretrained("google-bert/bert-base-uncased")

num_added_toks = tokenizer.add_tokens(["new_tok1", "my_new-tok2"])
print("We have added", num_added_toks, "tokens")
# Notice: resize_token_embeddings expect to receive the full size of the new vocabulary, i.e., the length of the tokenizer.
model.resize_token_embeddings(len(tokenizer))
```

#### apply_chat_template[[transformers.PreTrainedTokenizerBase.apply_chat_template]]

```python
apply_chat_template(conversation: list[dict[str, str]] | list[list[dict[str, str]]], tools: list[dict | Callable] | None = None, documents: list[dict[str, str]] | None = None, chat_template: str | None = None, add_generation_prompt: bool = False, continue_final_message: bool | str = False, tokenize: bool = True, sanitize_control_tokens: bool = False, padding: bool | str | PaddingStrategy = False, truncation: bool = False, max_length: int | None = None, return_tensors: str | TensorType | None = None, return_dict: bool = True, return_assistant_tokens_mask: bool = False, tokenizer_kwargs: dict[str, Any] | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3021)

**Parametreler:**

conversation (Union[list[dict[str, str]], list[list[dict[str, str]]]]) : Şu ana kadarki sohbet geçmişini temsil eden, "role" ve "content" anahtarlarına sahip sözlüklerden oluşan bir liste.

tools (`list[Union[Dict, Callable]]`, *isteğe bağlı*) : Modelin erişebileceği araçların (çağrılabilir fonksiyonların) listesi. Şablon fonksiyon çağrısını desteklemiyorsa bu argüman hiçbir etki yaratmaz. Her araç, aracın adını, açıklamasını ve argüman türlerini belirten bir JSON Şeması olarak geçirilmelidir. Daha fazla bilgi için [araç kullanımı kılavuzumuza](https://huggingface.co/docs/transformers/en/chat_extras#passing-tools) göz atın.

documents (`list[dict[str, str]]`, *isteğe bağlı*) : RAG (arama destekli üretim) gerçekleştiriyorsa modelin erişebileceği belgeleri temsil eden sözlüklerden oluşan bir liste. Şablon RAG'i desteklemiyorsa bu argümanın bir etkisi olmaz. Her belgenin "title" ve "text" anahtarlarını içeren bir sözlük olmasını öneririz.

chat_template (`str`, *isteğe bağlı*) : Bu dönüştürme için kullanılacak bir Jinja şablonu. Modelin şablonu varsayılan olarak kullanıldığından, bu argümana bir şey geçirmek genellikle gerekmez.

add_generation_prompt (bool, *optional*) : Bu ayarlanırsa, asistan mesajının başlangıcını gösteren token(lar)ı içeren bir istemci, biçimlendirilmiş çıktıya eklenecektir. Bu, modelden bir yanıt üretmek istediğinizde faydalıdır. Dikkat edin, bu argüman sohbet şablonuna (chat template) aktarılacağından, bu argümanın herhangi bir etki yaratabilmesi için şablon tarafından desteklenmesi gerekir.

continue_final_message (bool or str, *isteğe bağlı*) : Bu ayarlanırsa, sohbet, sohbetin son mesajının açık uçlu olacak şekilde biçimlendirilir ve herhangi bir EOS token'ı içermez. Model, yeni bir mesaj başlatmak yerine bu mesajı devam ettirir. Bu, modelin yanıtının bir kısmını "ön doldurmanıza" olanak tanır. Bir dize geçirilirse, devam edilecek alanın anahtarı olarak kullanılır (ör. "reasoning_content"). `add_generation_prompt` ile aynı anda kullanılamaz.

tokenize (`bool`, varsayılan `True`) : Çıktının tokenize edilip edilmeyeceğini belirtir. `False` ise çıktı bir dize olur.

sanitize_control_tokens (`bool`, varsayılan `False`) : Ayarlandığında, mesajlarda, araçlarda veya belgelerde görünen kontrol jetonları sıradan metin olarak kodlanır; böylece yalnızca sohbet şablonunun kendisi tarafından yazılan kontrol jetonları jeton olarak kodlanır. Kontrol jetonları, tokenizer'ın özel jetonları ile `tokenizer.chat_control_tokens` içindeki eklenen jetonlardır. Bu değişken ayarlanmamışsa, kontrol jetonları sohbet şablonunun metninde ve dizge sabitlerinde görünen eklenen jetonlardan çıkarılır. Yalnızca bütün kontrol jetonları temizlenir; bu nedenle şablon, girdiden dizgeleri kontrol jetonlarına birleştiriyorsa (örneğin `'<|' + message['role'] + '|>'`), bu dizgelerin ayrı ayrı doğrulanması gerekir. Sözlük anahtarları da temizlenmez.

padding (`bool`, `str` veya [PaddingStrategy](/docs/transformers/main/tr/internal/file_utils#transformers.utils.PaddingStrategy), *opsiyonel*, varsayılan `False`) : Dönen dizilerin dolgusunu (modelin dolgu tarafına ve dolgu indeksine göre) aşağıdakilerden birini seçerek belirleyin: - `True` veya `'longest'`: Batch'teki en uzun diziye kadar dolgu yapın (yalnızca tek bir dizi sağlandıysa dolgu yapılmaz). - `'max_length'`: `max_length` argümanı ile belirtilen maksimum uzunluğa kadar veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kadar dolgu yapın. - `False` veya `'do_not_pad'` (varsayılan): Dolgu yapılmaz (yani, farklı uzunluklarda dizilere sahip bir batch çıktısı verilebilir).

truncation (`bool`, varsayılan `False`) : Dizilerin maksimum uzunlukta kırpilip kırpılmayacağını belirtir. tokenize `False` ise etkisi yoktur.

max_length (`int`, *isteğe bağlı*) : Dolgu veya kırpma için kullanılacak maksimum uzunluk (token cinsinden). tokenize `False` ise etkisi yoktur. Belirtilmezse, tokenizer'ın `max_length` özniteliği varsayılan olarak kullanılır.

return_tensors (`str` veya [TensorType](/docs/transformers/main/tr/internal/file_utils#transformers.TensorType), *opsiyonel*) : Ayarlanırsa, belirli bir çerçeveye ait tensörleri döndürür. tokenize `False` ise etkisi yoktur. Kabul edilen değerler: - `'pt'`: PyTorch `torch.Tensor` nesnelerini döndürür. - `'np'`: NumPy `np.ndarray` nesnelerini döndürür.

return_dict (`bool`, varsayılan `True`) : Adlandırılmış çıktılar içeren bir sözlük döndürülüp döndürülmeyeceğini belirtir. tokenize `False` ise etkisi yoktur.

tokenizer_kwargs (`dict[str : Any]`, *isteğe bağlı*): Tokenizöre iletilecek ek kwargs.

return_assistant_tokens_mask (`bool`, varsayılan `False`) : Asistan tarafından üretilen token'ların bir maskesini döndürüp döndürmeyeceğini belirtir. Asistan tarafından üretilen token'lar için maske 1 içerir. Kullanıcı ve sistem token'ları için maske 0 içerir. Bu özellik, yalnızca `{% generation %}` anahtar kelimesi üzerinden bunu destekleyen sohbet şablonları için kullanılabilir.

- ****kwargs** : Şablon işleyicisine (template renderer) iletilecek ek kwargs. Sohbet şablonu tarafından erişilebilir olacaktır.

**Dönüş:** `Union[list[int], Dict]`

Şimdiye kadar tokenize edilmiş sohbeti, kontrol tokenları dahil olmak üzere temsil eden token kimliği listesi. Bu çıktı, doğrudan veya `generate()` gibi yöntemler aracılığıyla modele iletmeye hazırdır. `return_dict` ayarlanırsa, bunun yerine tokenizer çıktılarından oluşan bir sözlük döner.

`"role"` ve `"content"` anahtarlarına sahip sözlük listesini, token kimliği listesine dönüştürür. Bu yöntem, sohbet modelleriyle kullanım için tasarlanmıştır ve dönüştürme sırasında kullanılacak biçimi ve kontrol tokenlarını belirlemek için tokenizer'ın chat_template özniteliklerini okur.

#### batch_decode[[transformers.PreTrainedTokenizerBase.batch_decode]]

```python
batch_decode(sequences: list[int] | list[list[int]] | np.ndarray | torch.Tensor, skip_special_tokens: bool = False, clean_up_tokenization_spaces: bool | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2933)

**Parametreler:**

sequences (`Union[list[int], list[list[int]], np.ndarray, torch.Tensor]`) : Tokenize edilmiş girdi kimliklerinin listesi. `__call__` yöntemi kullanılarak elde edilebilir.

skip_special_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Çözümleme sırasında özel jetonların kaldırılıp kaldırılmayacağı.

clean_up_tokenization_spaces (`bool`, *isteğe bağlı*) : Tokenizasyon boşluklarının temizlenip temizlenmeyeceğini belirtir. `None` ise, varsayılan olarak `self.clean_up_tokenization_spaces` kullanılır.

kwargs (ek anahtar kelime argümanları, *isteğe bağlı*) : Altta yatan modele özgü decode yöntemine aktarılacaktır.

**Dönüş:** `list[str]`

Çözümlenmiş cümlelerin listesi.

decode çağrısı yaparak token kimlikleri içeren listelerin listesini, dizelerin listesine dönüştürün.

Bu yöntem geriye dönük uyumluluk için sağlanmıştır. `decode` yöntemi artık toplu (batched) girdileri yerel olarak işler, bu nedenle `batch_decode` yerine doğrudan `decode` kullanabilirsiniz.

#### clean_up_tokenization[[transformers.PreTrainedTokenizerBase.clean_up_tokenization]]

```python
clean_up_tokenization(text: str)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2204)

Verilen metindeki tokenizasyon boşluklarını temizler. Bu yöntem büyük ölçüde uzaktan kod desteği içindir.

#### convert_ids_to_tokens[[transformers.PreTrainedTokenizerBase.convert_ids_to_tokens]]

```python
convert_ids_to_tokens(ids: int | list[int], skip_special_tokens: bool = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1499)

**Parametreler:**

ids (`int` veya `list[int]`) : Tokenlere dönüştürülecek token kimliği (veya token kimlikleri).

skip_special_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Çözümleme sırasında özel jetonların kaldırılıp kaldırılmayacağı.

**Dönüş:** `str` veya `list[str]`

Çözümlenmiş token(lar).

Sözlüğü ve eklenen token'ları kullanarak tek bir token'da veya token dizisinde tek bir indeks veya indeks dizisini dönüştürür.

#### convert_tokens_to_ids[[transformers.PreTrainedTokenizerBase.convert_tokens_to_ids]]

```python
convert_tokens_to_ids(tokens: str | list[str])
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1483)

**Parametreler:**

tokens (`str` veya `list[str]`) : Token id'sine dönüştürülecek bir veya birden fazla token.

**Dönüş:** `int` veya `list[int]`

Token kimliği veya token kimliği listesi.

Sözlüğü kullanarak bir token dizgisini (veya token dizisini) tek bir tamsayı kimliğine (veya kimlik dizisine) dönüştürür.

#### convert_tokens_to_string[[transformers.PreTrainedTokenizerBase.convert_tokens_to_string]]

```python
convert_tokens_to_string(tokens: list[str])
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2872)

**Parametreler:**

tokens (`list[str]`) : Bir dizgede birleştirilecek token.

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

Birleştirilen jetonlar.

Tek bir dizideki token dizisini dönüştürür. Bunu yapmanın en basit yolu `" ".join(tokens)` ifadesini kullanmaktır ancak genellikle aynı anda alt kelime tokenizasyonundan kaynaklanan kalıntıları da kaldırmak isteriz.

#### decode[[transformers.PreTrainedTokenizerBase.decode]]

```python
decode(token_ids: int | list[int] | list[list[int]] | np.ndarray | torch.Tensor, skip_special_tokens: bool = False, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2885)

**Parametreler:**

token_ids (`Union[int, list[int], list[list[int]], np.ndarray, torch.Tensor]`) : Tokenize edilmiş girdi kimliklerinin tek bir dizisi veya bir partisi (diziler listesi). `__call__` yöntemi kullanılarak elde edilebilir.

skip_special_tokens (`bool`, *isteğe bağlı*, varsayılan `False`) : Çözümleme sırasında özel jetonların kaldırılıp kaldırılmayacağı.

kwargs (ek anahtar kelime argümanları, *isteğe bağlı*) : Altta yatan modele özgü decode yöntemine aktarılacaktır.

**Dönüş:** `Union[str, list[str]]`

Tek bir dizi için çözümlenmiş dize veya bir dizi grubu için çözümlenmiş dizeler listesi.

Özel token'ları kaldırma ve tokenizasyon boşluklarını temizleme seçenekleriyle, tokenizer ve sözlük kullanarak bir id dizisini bir metne veya diziler listesini metinler listesine dönüştürür.

`self.convert_tokens_to_string(self.convert_ids_to_tokens(token_ids))` işlemine benzer.

#### encode[[transformers.PreTrainedTokenizerBase.encode]]

```python
encode(text: TextInput | PreTokenizedInput | EncodedInput, text_pair: TextInput | PreTokenizedInput | EncodedInput | None = None, add_special_tokens: bool = True, padding: bool | str | PaddingStrategy = False, truncation: bool | str | TruncationStrategy | None = None, max_length: int | None = None, stride: int = 0, padding_side: str | None = None, return_tensors: str | TensorType | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2263)

**Parametreler:**

text (`str`, `list[str]` veya `list[int]`) : Kodlanacak ilk dizi. Bu, bir dize, bir dize listesi (`tokenize` yöntemiyle tokenize edilmiş dize) veya bir tamsayı listesi (`convert_tokens_to_ids` yöntemiyle tokenize edilmiş dize kimlikleri) olabilir.

text_pair (`str`, `list[str]` veya `list[int]`, *isteğe bağlı*) : Kodlanacak isteğe bağlı ikinci dizi. Bu, bir dize, bir dize listesi (`tokenize` yöntemiyle tokenize edilmiş dize) veya bir tamsayı listesi (`convert_tokens_to_ids` yöntemiyle tokenize edilmiş dize kimlikleri) olabilir.

add_special_tokens (`bool`, *isteğe bağlı*, varsayılan `True`) : Dizileri kodlarken özel jetonların eklenip eklenmeyeceğini belirtir. Bu, girdi kimliklerine otomatik olarak eklenen jetonları tanımlayan alttaki `PretrainedTokenizerBase.build_inputs_with_special_tokens` işlevini kullanır. `bos` veya `eos` jetonlarını otomatik olarak eklemek istiyorsanız bu işe yarar.

padding (`bool`, `str` veya [PaddingStrategy](/docs/transformers/main/tr/internal/file_utils#transformers.utils.PaddingStrategy), *isteğe bağlı*, varsayılan `False`) : Dolguyu (padding) etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:  - `True` veya `'longest'`: Batch'teki en uzun diziye kadar doldurur (yalnızca tek bir dizi sağlanırsa dolgu yapılmaz). - `'max_length'`: `max_length` argümanı ile belirtilen maksimum uzunluğa kadar veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum girdi uzunluğuna kadar doldurur. - `False` veya `'do_not_pad'` (varsayılan): Dolgu yapılmaz (yani, farklı uzunluklarda diziler içeren bir batch çıktısı alınabilir).

truncation (`bool`, `str` veya [TruncationStrategy](/docs/transformers/main/tr/internal/tokenization_utils#transformers.tokenization_utils_base.TruncationStrategy), *opsiyonel*, varsayılan `False`) : Kısaltmayı etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:  - `True` veya `'longest_first'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, çiftteki en uzun diziden token token kısaltma yapar. - `'only_first'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, yalnızca çiftin ilk dizisini kısaltır. - `'only_second'`: `max_length` argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır. Bir dizi çifti (veya çiftlerin bir partisi) sağlanırsa, yalnızca çiftin ikinci dizisini kısaltır. - `False` veya `'do_not_truncate'` (varsayılan): Kısaltma yapılmaz (yani, modelin kabul edebileceği maksimum giriş boyutundan daha uzun dizi uzunluklarına sahip partiler üretebilir).

max_length (`int`, *opsiyonel*) : Kırpma/doldurma parametrelerinden biri tarafından kullanılacak olan maksimum uzunluğu kontrol eder. Ayarlanmaz veya `None` olarak ayarlanırsa, kırpma/doldurma parametrelerinden biri maksimum uzunluk gerektiriyorsa, önceden tanımlanmış modelin maksimum uzunluğu kullanılır. Modelin belirli bir maksimum giriş uzunluğu yoksa (XLNet gibi) maksimum uzunluğa kırpma/doldurma devre dışı bırakılır.

stride (`int`, *opsiyonel*, varsayılan 0) : `max_length` ile birlikte bir sayıya ayarlanırsa, `return_overflowing_tokens=True` olduğunda döndürülen taşan jetonlar, kısaltılmış ve taşan diziler arasında bir örtüşme sağlamak amacıyla kısaltılmış dizinin sonundan döndürülen bazı jetonları içerir. Bu argümanın değeri, örtüşen jetonların sayısını belirler.

is_split_into_words (`bool`, *isteğe bağlı*, varsayılan `False`) : Girdinin önceden tokenize edilip edilmediğini (örneğin, kelimelere ayrılmış olup olmadığını) belirtir. `True` olarak ayarlanırsa, tokenizer girdinin zaten kelimelere ayrılmış olduğunu (örneğin, boşluklara göre bölünmüş) varsayar ve bunları tokenize eder. Bu, NER veya token sınıflandırma için faydalıdır.

pad_to_multiple_of (`int`, *isteğe bağlı*) : Ayarlanırsa, diziyi verilen değerin katına kadar doldurur. Bunun için `padding` etkinleştirilmelidir. Bu, hesaplama yeteneği `>= 7.5` (Volta) olan NVIDIA donanımlarında Tensor Cores kullanımını etkinleştirmek için özellikle faydalıdır.

padding_side (`str`, *isteğe bağlı*) : Modelin padding uygulanması gereken tarafı. ['right', 'left'] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden alınır.

return_tensors (`str` veya [TensorType](/docs/transformers/main/tr/internal/file_utils#transformers.TensorType), *opsiyonel*) : Ayarlanırsa, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler:  - `'pt'`: PyTorch `torch.Tensor` nesnelerini döndürür. - `'np'`: Numpy `np.ndarray` nesnelerini döndürür.

- ****kwargs** : `.tokenize()` yöntemine iletilir.

**Dönüş:** `list[int]`, `torch.Tensor` veya `np.ndarray`

Metnin tokenize edilmiş kimlikleri.

Dizgiyi, belirteç ayrıştırıcı ve sözlük kullanarak kimlik (tamsay) dizisine dönüştürür.

`self.convert_tokens_to_ids(self.tokenize(text))` işlemiyle aynıdır.

#### encode_message_with_chat_template[[transformers.PreTrainedTokenizerBase.encode_message_with_chat_template]]

```python
encode_message_with_chat_template(message: dict[str, str], conversation_history: list[dict[str, str]] | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3260)

**Parametreler:**

message (`dict`) : Tokenize edilecek mesajı temsil eden, "role" ve "content" anahtarlarına sahip bir sözlük.

conversation_history (`list[dict]`, *isteğe bağlı*) : Şu ana kadarki sohbet geçmişini temsil eden, "role" ve "content" anahtarlarına sahip sözlüklerden oluşan bir liste. Mesajları tek tek işliyorsanız, konuşmadaki önceki mesajları buradan geçirmelisiniz.

- ****kwargs** : `apply_chat_template` yöntemine iletilecek ek kwargs.

**Dönüş:** `list[int]`

Tokenize edilmiş mesajı temsil eden token kimlikleri listesi.

Tek bir mesajı tokenleştirin. Bu yöntem, `apply_chat_template` etrafında bir kolaylık sarmalayıcısıdır ve mesajları tek tek tokenleştirmenizi sağlar. Bu, token-token akış gibi işlemler için faydalıdır. Bu yöntemin kusursuz olması garanti edilemez. Bazı modellerde tekil mesajları sağlam bir şekilde tokenleştirmek imkansız olabilir. Örneğin, sohbet şablonu her mesajın ardından token eklerse ancak tüm sohbete eklenen bir öneki de varsa, sohbet-başlangıç-tokeni ile mesaj-başlangıç-tokeni arasındaki ayrımı yapmak imkansız hale gelir. Bu durumlarda, bu yöntem doğru tokenleştirmeyi bulmak için elinden geleni yapar, ancak kusursuz olmayabilir. **Not:** Bu yöntem `add_generation_prompt` parametresini desteklemez. Bir üretim istemi eklemek istiyorsanız, bunu sohbeti tokenleştirdikten sonra ayrı olarak yapmalısınız.

#### from_pretrained[[transformers.PreTrainedTokenizerBase.from_pretrained]]

```python
from_pretrained(pretrained_model_name_or_path: str | os.PathLike, *init_inputs, cache_dir: str | os.PathLike | None = None, force_download: bool = False, local_files_only: bool = False, token: str | bool | None = None, revision: str = 'main', trust_remote_code = False, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1515)

**Parametreler:**

pretrained_model_name_or_path (`str` veya `os.PathLike`) : Şu değerlerden biri olabilir:  - huggingface.co üzerindeki bir model deposunda barındırılan, önceden tanımlanmış bir *model kimliği* (model id) içeren bir dize. - Tokenizer'ın gerektirdiği sözlük dosyalarını içeren bir *dizin* yolu, örneğin [save_pretrained()](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.save_pretrained) yöntemi kullanılarak kaydedilenler, örn. `./my_model_directory/`. - (**Kullanımdan kaldırıldı**, tüm türetilmiş sınıflar için geçerli değildir) tek bir kaydedilmiş sözlük dosyasına giden bir yol (yalnızca ve ancak tokenizer'ın Bert veya XLNet gibi tek bir sözlük dosyası gerektirmesi durumunda), örn. `./my_model_directory/vocab.txt`.

cache_dir (`str` veya `os.PathLike`, *isteğe bağlı*) : Standart önbellek kullanılmayacaksa, indirilen önceden tanımlı tokenizer sözlük dosyalarının önbelleğe alınacağı dizinin yolu.

force_download (`bool`, *isteğe bağlı*, varsayılan `False`) : Varsa önbellekteki sürümleri geçersiz kılarak sözlük dosyalarının (yeniden) indirilmesini zorlayıp zorlamayacağı.

proxies (`dict[str, str]`, *isteğe bağlı*) : Protokol veya uç nokta bazında kullanılacak vekil sunucuların sözlüğü, örn. `{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}`. Vekiller her istekte kullanılır.

token (`str` veya *bool*, *isteğe bağlı*) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak belirteç. `True` ise, `hf auth login` çalıştırıldığında oluşturulan belirteç ( `~/.huggingface` içinde saklanır) kullanılır.

local_files_only (`bool`, *isteğe bağlı*, varsayılan `False`) : Sadece yerel dosyalara mı güvenileceği ve dosya indirmeye çalışılmayacağı.

revision (`str`, *isteğe bağlı*, varsayılan `"main"`) : Kullanılacak belirli model sürümü. huggingface.co üzerinde modelleri ve diğer artefaktları depolamak için git tabanlı bir sistem kullandığımız için, bir dal adı, bir etiket adı veya bir commit id olabilir; bu nedenle `revision`, git tarafından izin verilen herhangi bir tanımlayıcı olabilir.

subfolder (`str`, *isteğe bağlı*) : İlgili dosyalar huggingface.co üzerindeki model deposunun bir alt klasöründe konumlanıyorsa (ör. facebook/rag-token-base için), bunu burada belirtin.

inputs (ek konumsal argümanlar, *isteğe bağlı*) : Tokenizer'ın `__init__` yöntemine aktarılır.

trust_remote_code (`bool`, *isteğe bağlı*, varsayılan `False`) : Hub'da kendi modelleme dosyalarında tanımlanan özel modellere izin verilip verilmeyeceğini belirtir. Bu seçenek, yalnızca güvendiğiniz ve kodunu incelediğiniz depolar için `True` olarak ayarlanmalıdır; çünkü bu, Hub'da bulunan kodun yerel makinenizde çalıştırılmasına neden olur.

kwargs (ek anahtar kelime argümanları, *isteğe bağlı*) : Tokenizer'ın `__init__` yöntemine aktarılır. `bos_token`, `eos_token`, `unk_token`, `sep_token`, `pad_token`, `cls_token`, `mask_token`, `extra_special_tokens` gibi özel token'ları ayarlamak için kullanılabilir. Daha fazla ayrıntı için `__init__` içindeki parametrelere bakın.

Önceden tanımlı bir tokenizer'dan [PreTrainedTokenizerBase](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase) (veya türetilmiş bir sınıf) örneği oluşturun.

Özel bir model kullanmak istediğinizde `token=True` parametresini geçmek zorunludur.

Örnekler:

```python
# We can't instantiate directly the base class *PreTrainedTokenizerBase* so let's show our examples on a derived class: BertTokenizer
# Download vocabulary from huggingface.co and cache.
tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-uncased")

# Download vocabulary from huggingface.co (user-uploaded) and cache.
tokenizer = BertTokenizer.from_pretrained("dbmdz/bert-base-german-cased")

# If vocabulary files are in a directory (e.g. tokenizer was saved using *save_pretrained('./test/saved_model/')*)
tokenizer = BertTokenizer.from_pretrained("./test/saved_model/")

# If the tokenizer uses a single vocabulary file, you can point directly to this file
tokenizer = BertTokenizer.from_pretrained("./test/saved_model/my_vocab.txt")

# You can link tokens to special vocabulary when instantiating
tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-uncased", unk_token="<unk>")
# You should be sure '<unk>' is in the vocabulary when doing that.
# Otherwise use tokenizer.add_special_tokens({'unk_token': '<unk>'}) instead)
assert tokenizer.unk_token == "<unk>"
```

#### get_chat_template[[transformers.PreTrainedTokenizerBase.get_chat_template]]

```python
get_chat_template(chat_template: str | None = None, tools: list[dict] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3320)

**Parametreler:**

chat_template (`str`, *isteğe bağlı*) : Bu dönüştürme için kullanılacak bir Jinja şablonu veya bir şablonun adı. Modelin şablonu varsayılan olarak kullanıldığından, bu argümana bir şey geçmek genellikle gerekmez.

tools (`list[Dict]`, *isteğe bağlı*) : Modelin erişebileceği araçların (çağrılabilir işlevlerin) listesi. Şablon işlev çağrısını desteklemiyorsa bu argüman hiçbir etki yaratmaz. Her araç, aracın adını, açıklamasını ve argüman türlerini belirten bir JSON Şeması olarak geçirilmelidir. Daha fazla bilgi için [sohbet şablonlama kılavuzumuza](https://huggingface.co/docs/transformers/main/en/chat_templating#automated-function-conversion-for-tool-use) bakın.

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

Sohbet şablonu dizesi.

Sohbet mesajlarını belirteçleştirmek için kullanılan sohbet şablonu dizesini getirir. Bu şablon, `apply_chat_template` metodu tarafından dahili olarak kullanılır ve ayrıca daha iyi üretim takibi için modelin sohbet şablonunu dışarıdan almak amacıyla da kullanılabilir.

#### get_response_parser[[transformers.PreTrainedTokenizerBase.get_response_parser]]

```python
get_response_parser(response_template: dict | None = None, prefix: str | list[int] | np.ndarray | torch.Tensor | None = None, tools: list[dict | Callable] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3517)

Akış olarak iletilen bir yanıtı kademeli olarak ayrıştırmak için durumlu bir `ResponseParser` döndürür. Aksi belirtilmedikçe, tokenizer'ın `response_template` özniteliğini kullanır.

`prefix` (bir dize, token kimliği listesi veya 1B tensör) zorunludur: akış, sohbet istemci bağlamının ima ettiği durumda (spesifikasyondaki `start_anchor` noktasından sağa doğru kırpılmış olarak) başlatılır; bu sayede `stream.feed()` üzerinden beslenen üretilen parçalar, sohbet şablonu modelin devam ettiği asistan turu içeriği (ör. `<think>\n`) yayımlamış olsa bile doğru şekilde sınıflandırılır. Bu parametrenin atlanması bir hata fırlatır; akış gerçekten temiz bir asistan turundan başlıyorsa, bu davranıştan kaçınmak için `prefix=""` geçin.

`tools` (`list[Union[Dict, Callable]]`, *isteğe bağlı*): `apply_chat_template`'in kabul ettiği formatta, modelin kullanabileceği araçlar. Ayarlandığında, her bölge kapatıldıkça araç çağrısı argümanları, çağrılan aracın JSON şeması kullanılarak dönüştürülür; bu sayede `region_close` olayları tiplemiş argümanları taşır.

#### get_special_tokens_mask[[transformers.PreTrainedTokenizerBase.get_special_tokens_mask]]

```python
get_special_tokens_mask(token_ids_0: list[int], token_ids_1: list[int] | None = None, already_has_special_tokens: bool = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1338)

**Parametreler:**

token_ids_0 : (muhtemelen biçimlendirilmiş) dizinin kimlik listesi.

token_ids_1 `already_has_special_tokens=True` olduğunda kullanılmaz. Bu durumda None olmalıdır.

already_has_special_tokens : Dizi, özel jetonlarla zaten biçimlendirilmiş mi?

**Dönüş:** [0, 1] aralığında tamsayılar listesi

özel bir jeton için 1, bir dizi jetonu için 0.

Özel tokenlar eklenmemiş bir token listesinden dizi kimliklerini (sequence ids) alın.

Hızlı tokenizörler için veri toplayıcılar, biçimlendirilmiş bir dizinin üzerine bir maske oluşturmak üzere bunu `already_has_special_tokens=True` ile çağırır. Bu durumda, maskenin hesaplanması `all_special_ids` içinde üyelik kontrolü yapılarak gerçekleştirilir.

#### get_vocab[[transformers.PreTrainedTokenizerBase.get_vocab]]

```python
get_vocab()
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L1471)

**Dönüş:** `dict[str, int]`

Kelime dağarcığı.

Sözlüğü, belirteçten indekse giden bir sözlük olarak döndürür.

`token` sözlükte olduğunda `tokenizer.get_vocab()[token]`, `tokenizer.convert_tokens_to_ids(token)` ile eşdeğerdir.

#### pad[[transformers.PreTrainedTokenizerBase.pad]]

```python
pad(encoded_inputs: BatchEncoding | list[BatchEncoding] | dict[str, EncodedInput] | dict[str, list[EncodedInput]] | list[dict[str, EncodedInput]], padding: bool | str | PaddingStrategy = True, max_length: int | None = None, pad_to_multiple_of: int | None = None, padding_side: str | None = None, return_attention_mask: bool | None = None, return_tensors: str | TensorType | None = None, verbose: bool = True)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2600)

**Parametreler:**

encoded_inputs ([BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding), [BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding) listesi, `dict[str, list[int]]`, `dict[str, list[list[int]]` veya `list[dict[str, list[int]]]`) : Tokenize edilmiş girdiler. Tek bir girdiyi ([BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding) veya `dict[str, list[int]]`) ya da tokenize edilmiş girdilerden oluşan bir partiyi ([BatchEncoding](/docs/transformers/main/tr/main_classes/tokenizer#transformers.BatchEncoding) listesi, *dict[str, list[list[int]]]* veya *list[dict[str, list[int]]]*) temsil edebilir; bu sayede bu yöntemi hem ön işleme sırasında hem de bir PyTorch Dataloader collate işlevinde kullanabilirsiniz. `list[int]` yerine tensörler (numpy dizileri veya PyTorch tensörleri) bulunabilir; dönüş tipi için yukarıdaki notu inceleyin.

padding (`bool`, `str` veya [PaddingStrategy](/docs/transformers/main/tr/internal/file_utils#transformers.utils.PaddingStrategy), *isteğe bağlı*, varsayılan `True`) : Dönen dizilerin (modelin dolgusu tarafına ve dolgu indeksine göre) aşağıdakilerden birine göre dolgu stratejisi seçin:  - `True` veya `'longest'` (varsayılan): Batch'teki en uzun diziye kadar doldurun (yalnızca tek bir dizi sağlandıysa dolgu yapılmaz). - `'max_length'`: `max_length` argümanı ile belirtilen maksimum uzunluğa kadar veya bu argüman sağlanmadıysa model için kabul edilebilir maksimum giriş uzunluğuna kadar doldurun. - `False` veya `'do_not_pad'`: Dolgu yok (yani, farklı uzunluklarda dizilere sahip bir batch çıktı olarak verilebilir).

max_length (`int`, *isteğe bağlı*) : Dönen listenin maksimum uzunluğu ve isteğe bağlı dolgu uzunluğu (bkz. yukarıda).

pad_to_multiple_of (`int`, *opsiyonel*) : Ayarlanırsa, diziyi verilen değerin katına kadar doldurur. Bu, hesaplama yeteneği `>= 7.5` (Volta) olan NVIDIA donanımlarında Tensor Core kullanımını etkinleştirmek için özellikle faydalıdır.

padding_side (`str`, *isteğe bağlı*) : Modelin padding uygulanması gereken tarafı. ['right', 'left'] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden alınır.

return_attention_mask (`bool`, *isteğe bağlı*) : Dikkat maskesinin (attention mask) döndürülüp döndürülmeyeceğini belirtir. Varsayılan bırakılırsa, `return_outputs` özniteliğiyle tanımlanan, ilgili tokenizer'ın varsayılanına göre dikkat maskesi döndürülür.  [Dikkat maskeleri nelerdir?](../glossary#attention-mask)

return_tensors (`str` veya [TensorType](/docs/transformers/main/tr/internal/file_utils#transformers.TensorType), *opsiyonel*) : Ayarlanırsa, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler:  - `'pt'`: PyTorch `torch.Tensor` nesnelerini döndürür. - `'np'`: Numpy `np.ndarray` nesnelerini döndürür.

verbose (`bool`, *isteğe bağlı*, varsayılan `True`) : Daha fazla bilgi ve uyarı basılıp basılmayacağı.

Tek bir kodlanmış girdiyi veya kodlanmış girdilerden oluşan bir partiyi, önceden tanımlanmış uzunluğa veya parti içindeki en uzun dizi uzunluğuna kadar doldurun.

Doldurma tarafı (sol/sağ) doldurma belirteç kimlikleri, belirteçleştirici düzeyinde tanımlanır (`self.padding_side`, `self.pad_token_id` ve `self.pad_token_type_id` ile).

Hızlı bir tokenizer kullanıldığında, `__call__` metodunu kullanmak, metni kodlamak için bir metot çağırıp ardından dolgulu bir kodlama almak için `pad` metodunu çağırmaktan daha hızlıdır.

`encoded_inputs` olarak numpy dizileri sözlüğü veya PyTorch tensörleri geçirilirse, `return_tensors` ile farklı bir tensör türü belirtmedikçe sonuç aynı türü kullanır. PyTorch tensörleri durumunda, tensörlerinizin belirli cihazını kaybedersiniz.

#### parse_response[[transformers.PreTrainedTokenizerBase.parse_response]]

```python
parse_response(response: str | list[int] | list[str] | list[list[int]] | np.ndarray | torch.Tensor, schema: dict | None = None, prefix: str | list[int] | list[str] | list[list[int]] | np.ndarray | torch.Tensor | None = None, tools: list[dict | Callable] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3432)

**Parametreler:**

response (`str`, token kimlikleri, 1B/2B tensör veya bunlardan oluşan bir liste) : Model tarafından üretilen çıktı. Tek bir dizi (`str` / `list[int]` / 1B dizi / 1B tensör) veya bir parti (`list[str]` / `list[list[int]]` / 2B dizi / 2B tensör) olarak çözümlenmiş metin veya token kimlikleri. Bunun yalnızca model çıktısını, herhangi bir önceki istem metnini içermemesi gerektiğine dikkat edin (bu, `prefix` alanına gider).

schema (`dict`, *isteğe bağlı*) : Beklenen çıktı biçimini ve ayrıştırmanın nasıl yapılacağını gösteren bir yanıt şablonu. Sağlanmazsa, tokenizer'ın `response_template` özniteliği kullanılır.

prefix (`str`, token kimlikleri, 1B/2B tensör veya bunlardan oluşan bir liste) : Üretimden önce gelen istem. Birçok sohbet şablonu mesajın bir kısmını önceden yazdığından, doğru ayrıştırma için istemi görmemiz gerekir. Toplu `response` için, tek bir önek (her öğeye yayılır) veya öğe başına bir önek geçirin.

tools (`list[Union[Dict, Callable]]`, *isteğe bağlı*) : `apply_chat_template`'in kabul ettiği biçimde, modelin kullanabileceği araçlar. Bu parametre verildiğinde, araç çağrısı argümanları çağrılan aracın JSON şemasına göre dönüştürülür: bir tamsayı parametresi için `"7"` `7` olurken, bir dize parametresi için `"7"` olarak kalır.

**Dönüş:**

Tek bir dizi için ayrıştırılmış bir mesaj `dict`'i veya bir parti için bu tür dict'lerin bir `list`'i.

Bir modelden metin üretilerek oluşturulan çıktı dizgesini, ayrıştırılmış bir mesaj sözlüğüne dönüştürür. Bu yöntem, sohbet modelleriyle kullanım için tasarlanmıştır ve doğrudan bir `schema` argümanı geçirilmediği sürece ayrıştırma işlemini kontrol etmek için tokenizer'ın `response_template` özniteliğini okur.

Tek bir dizi veya bir parti kabul eder. Tek bir dizi (bir dize veya token kimliklerinden oluşan 1B bir dizi) tek bir ayrıştırılmış mesaj `dict` döndürür; bir parti (dizeler listesi, token kimliği dizileri listesi veya 2B bir tensör/dizi) ise her öğe için bir tane olmak üzere ayrıştırılmış mesaj dict'lerinden oluşan bir `list` döndürür.

#### push_to_hub[[transformers.PreTrainedTokenizerBase.push_to_hub]]

```python
push_to_hub(repo_id: str, commit_message: str | None = None, commit_description: str | None = None, private: bool | None = None, token: bool | str | None = None, revision: str | None = None, create_pr: bool = False, max_shard_size: int | str | None = '50GB', tags: list[str] | None = None)
```

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

**Parametreler:**

repo_id (`str`) : Tokenizer'ınızı itmek istediğiniz deposunun adı. Belirli bir organizasyona itme işlemi sırasında organizasyon adınızı içermelidir.

commit_message (`str`, *isteğe bağlı*) : İterilirken taahhüt edilecek mesaj. Varsayılan olarak `"Upload tokenizer"` olur.

commit_description (`str`, *isteğe bağlı*) : Oluşturulacak commit'in açıklaması

private (`bool`, *isteğe bağlı*) : Deponun özel yapılıp yapılmayacağını belirtir. `None` (varsayılan) ise, organizasyonun varsayılanı özel değilse depo herkese açık olur. Depo zaten mevcutsa bu değer yok sayılır.

token (`bool` veya `str`, *isteğe bağlı*) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak belirteç. `True` (varsayılan) ise, `hf auth login` çalıştırıldığında oluşturulan belirteç ( `~/.huggingface` içinde saklanır) kullanılır.

revision (`str`, *isteğe bağlı*) : Yüklenen dosyaların itileceği dal.

create_pr (`bool`, *isteğe bağlı*, varsayılan `False`) : Yüklenen dosyalarla bir PR oluşturulup oluşturulmayacağı veya doğrudan commit atılıp atılmayacağı.

max_shard_size (`int` veya `str`, *isteğe bağlı*, varsayılan `"50GB"`) : Yalnızca modeller için geçerlidir. Bir checkpoint'in parçalanmadan önceki maksimum boyutu. Parçalanan checkpoint'lerin her biri bu boyuttan küçük olacaktır. Dize olarak ifade ediliyorsa, birimle (örneğin `"5MB"`) birlikte rakamlardan oluşmalıdır.

tags (`list[str]`, *isteğe bağlı*) : Hub'a itilecek etiketlerin listesi.

Tokenizer dosyalarını 🤗 Model Hub'a yükleyin.

Örnekler:

```python
from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("google-bert/bert-base-cased")

# Push the tokenizer to your namespace with the name "my-finetuned-bert".
tokenizer.push_to_hub("my-finetuned-bert")

# Push the tokenizer to an organization with the name "my-finetuned-bert".
tokenizer.push_to_hub("huggingface/my-finetuned-bert")
```

#### register_for_auto_class[[transformers.PreTrainedTokenizerBase.register_for_auto_class]]

```python
register_for_auto_class(auto_class = 'AutoTokenizer')
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3001)

**Parametreler:**

auto_class (`str` veya `type`, *opsiyonel*, varsayılan `"AutoTokenizer"`) : Bu yeni tokenizer'ın kaydedileceği otomatik sınıf.

Bu sınıfı, verilen bir otomatik sınıfa kaydedin. Bu, kütüphanedeki `AutoTokenizer` ile zaten eşlenmiş olanlar dışında yalnızca özel tokenizörler için kullanılmalıdır.

#### save_chat_templates[[transformers.PreTrainedTokenizerBase.save_chat_templates]]

```python
save_chat_templates(save_directory: str | os.PathLike, tokenizer_config: dict, filename_prefix: str | None, save_jinja_files: bool)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L3374)

Yeni format kullanılıyorsa sohbet şablonlarını kayıt dizinine yazar ve varsa tokenizer yapılandırmasından kaldırır. Eski format kullanılıyorsa hiçbir dosya yazmaz; bunun yerine şablonları doğru formatta tokenizer yapılandırmasına yazar.

#### save_pretrained[[transformers.PreTrainedTokenizerBase.save_pretrained]]

```python
save_pretrained(save_directory: str | os.PathLike, legacy_format: bool | None = None, filename_prefix: str | None = None, push_to_hub: bool = False, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2006)

**Parametreler:**

save_directory (`str` veya `os.PathLike`) : Tokenizer'ın kaydedileceği dizinin yolu.

legacy_format (`bool`, *isteğe bağlı*) : Yalnızca hızlı bir tokenizer için geçerlidir. Ayarlanmazsa (varsayılan), tokenizer hem birleşik JSON biçiminde hem de mevcut ise eski biçimde (yani tokenizer'a özgü sözlük ve ayrı bir added_tokens dosyasıyla) kaydedilir. `False` ise, tokenizer yalnızca birleşik JSON biçiminde kaydedilir. Bu biçim, "yavaş" tokenizer'larla (*tokenizers* kütüphanesi tarafından desteklenmeyenler) uyumsuzdur, bu nedenle tokenizer ilgili "yavaş" tokenizer'da yüklenemez. `True` ise, tokenizer eski biçimde kaydedilir. "Yavaş" tokenizer mevcut değilse, bir değer hatası (value error) oluşturulur.

filename_prefix (`str`, *isteğe bağlı*) : Tokenizer tarafından kaydedilen dosya adlarına eklenecek bir önek.

push_to_hub (`bool`, *isteğe bağlı*, varsayılan `False`) : Modeli kaydettikten sonra Hugging Face model hub'ına gönderip göndermeyeceğinizi belirtir. Göndermek istediğiniz depoyu `repo_id` ile belirleyebilirsiniz (varsayılan olarak ad alanınızdaki `save_directory` adı kullanılır).

kwargs (`dict[str, Any]`, *isteğe bağlı*) : [push_to_hub()](/docs/transformers/main/tr/main_classes/model#transformers.utils.PushToHubMixin.push_to_hub) yöntemine iletilen ek anahtar kelime argümanları.

**Dönüş:** `str` türünde bir demet

Kaydedilen dosyalar.

Tam tokenizer durumunu kaydedin.

Bu yöntem, tam tokenizer'ın `~tokenization_utils_base.PreTrainedTokenizer.from_pretrained` sınıf yöntemi kullanılarak yeniden yüklenebileceğinden emin olur.

Uyarı, None Bu, örneklemeyi (instantiation) gerçekleştirdikten sonra tokenizer'a uygulayabileceğiniz değişiklikleri (örneğin, oluşturulduktan sonra `tokenizer.do_lower_case`'i değiştirmek) kaydetmeyecektir.

#### save_vocabulary[[transformers.PreTrainedTokenizerBase.save_vocabulary]]

```python
save_vocabulary(save_directory: str, filename_prefix: str | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2225)

**Parametreler:**

save_directory (`str`) : Sözlüğün kaydedileceği dizin.

filename_prefix (`str`, *isteğe bağlı*) : Kaydedilen dosyaların adlarına eklenecek isteğe bağlı bir önek.

**Dönüş:** `tuple(str)`

Kaydedilen dosyaların yolları.

Sadece tokenizer'ın sözlüğünü (sözlük + eklenen tokenlar) kaydedin.

Bu yöntem, tokenizer'ın yapılandırmasını ve özel token eşlemelerini kaydetmez. Tokenizer'ın tüm durumunu kaydetmek için `_save_pretrained()` kullanın.

#### tokenize[[transformers.PreTrainedTokenizerBase.tokenize]]

```python
tokenize(text: str, pair: str | None = None, add_special_tokens: bool = False, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L2243)

**Parametreler:**

text (`str`) : Kodlanacak dizi.

pair (`str`, *isteğe bağlı*) : Birincisiyle birlikte kodlanacak ikinci dizi.

add_special_tokens (`bool`, *opsiyonel*, varsayılan `False`) : İlgili modele ait özel token'ların eklenip eklenmeyeceğini belirtir.

kwargs (ek anahtar kelime argümanları, *isteğe bağlı*) : Altta yatan modele özgü encode yöntemine aktarılır. Ayrıntılar için [__call__()](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) bölümüne bakın.

**Dönüş:** `list[str]`

Tokenların listesi.

Bir dizeyi token dizisine dönüştürür, bilinmeyen tokenları `unk_token` ile değiştirir.

## Sayıtlar ve adlandırılmış demetler[[transformers.tokenization_utils_base.TruncationStrategy]]

#### transformers.tokenization_utils_base.TruncationStrategy[[transformers.tokenization_utils_base.TruncationStrategy]]

```python
transformers.tokenization_utils_base.TruncationStrategy(value, names = None, module = None, qualname = None, type = None, start = 1, boundary = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L160)

[PreTrainedTokenizerBase.__call__()](/docs/transformers/main/tr/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.__call__) içindeki `truncation` argümanı için olası değerler. Bir IDE'de sekme tamamlama (tab-completion) için faydalıdır.

#### transformers.CharSpan[[transformers.CharSpan]]

```python
transformers.CharSpan(start: ForwardRef('int'), end: ForwardRef('int'))
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L172)

**Parametreler:**

start (`int`) : Orijinal dizideki ilk karakterin indeksi.

end (`int`) : Orijinal dizideki son karakterin ardından gelen karakterin indeksi.

Orijinal dizideki karakter aralığı.

#### transformers.TokenSpan[[transformers.TokenSpan]]

```python
transformers.TokenSpan(start: ForwardRef('int'), end: ForwardRef('int'))
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/tokenization_utils_base.py#L185)

**Parametreler:**

start (`int`) : Aralıktaki ilk token'in indeksi.

end (`int`) : Aralıktaki son token'ı takip eden token'ın indeksi.

Kodlanmış bir dizideki (token listesi) token aralığı.

