# Xet Depolama Kullanımı

## Python

`huggingface_hub`'un Xet destekli sürümüne erişmek için en son sürümü kurmanız yeterlidir:

```bash
pip install -U huggingface_hub
```

`huggingface_hub` 0.32.0 sürümünden itibaren bu işlem ayrıca `hf_xet` paketini de yükler. `hf_xet` paketi, `huggingface_hub`’ü Xet altyapısının Rust istemcisi olan [`xet-core`](https://github.com/huggingface/xet-core) ile entegre eder.

`transformers` veya `datasets` kütüphanelerini kullanıyorsanız, zaten `huggingface_hub` kullanılıyor demektir. `huggingface_hub` sürümü >= 0.32.0 ise, başka bir işlem yapmanıza gerek yoktur.

`huggingface_hub` sürümünün >= 0.30.0 ve < 0.32.0 aralığında olduğu durumlarda, `hf_xet` paketinin açıkça kurulması gerekir:

```bash
pip install -U hf-xet
```

Ve tamam! Artık hem yükleme hem de indirme işlemleri için Xet çakışma giderme avantajlarından yararlanırsınız. `huggingface_hub` sürümü < 0.30.0 olan ekip üyeleri, [LFS köprüsü tarafından sağlanan geriye dönük uyumluluk](legacy-git-lfs#backward-compatibility-with-lfs) sayesinde hâlâ depoları yükleyebilir ve indirebilir.

Daha ayrıntılı kullanım belgeleri için şunların `huggingface_hub` belgelerine başvurun:

- [Yükle](https://huggingface.co/docs/huggingface_hub/guides/upload#faster-uploads)
- [İndir](https://huggingface.co/docs/huggingface_hub/guides/download#faster-downloads)
- [`hf_xet` önbelleğini yönetme](https://huggingface.co/docs/huggingface_hub/guides/manage-cache#chunk-based-caching-xet)

## Git

Git kullanıcıları, Git Xet eklentisini indirip kurarak Xet'in avantajlarından yararlanabilir. Kurulumdan sonra, [Hub depolarını Git ile yönetmek için standart iş akışlarını](../repositories-getting-started) kullanmanız yeterlidir - ek bir değişiklik gerekmez.

### Ön koşullar

[Git](https://git-scm.com/) ve [Git LFS](https://git-lfs.com/) kurun.

### macOS veya Linux (amd64 veya aarch64) üzerinde kurulum

Terminalde aşağıdaki komutu kullanarak bir kurulum betiğiyle yükleyin (`curl` ve `unzip` gerektirir):
```
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/huggingface/xet-core/refs/heads/main/git_xet/install.sh | sh
```

Veya [Homebrew](https://brew.sh/) kullanarak yükleyin:
```
brew install git-xet
git xet install
```

Yükleme doğrulamak için şunu çalıştırın:
```
git xet --version
```

### Windows (amd64)

`winget` kullanarak:
```
winget install git-xet
```

Kurucu kullanma:
 - `git-xet-windows-installer-x86_64.zip` dosyasını indirin ([buradan](https://github.com/huggingface/xet-core/releases/download/git-xet-v0.2.0/git-xet-windows-installer-x86_64.zip) erişilebilir) ve arşivden çıkarın.
 - `msi` kurucu dosyasını çalıştırın ve yönergeleri izleyin.

Manuel kurulum:
 - `git-xet-windows-x86_64.zip` dosyasını indirin ([buradan](https://github.com/huggingface/xet-core/releases/download/git-xet-v0.2.0/git-xet-windows-x86_64.zip) erişilebilir) ve arşivi açın.
 - Çıkarılan `git-xet.exe` dosyasını bir `PATH` dizinine yerleştirin.
 - Bir terminalde `git xet install` komutunu çalıştırın.

Yükleme doğrulamak için şunu çalıştırın:
  ```
  git xet --version
  ```

### Git Xet Kullanımı

Platformunuza kurulduktan sonra, Git Xet'i kullanmak Hub'ın standart Git iş akışlarını izlemekten ibarettir.

Tüm [ön koşulların yüklendiğinden ve yapılandırıldığından](https://huggingface.co/docs/hub/repositories-getting-started#requirements) emin olun, [Hub'daki depolarla çalışmak için kurulum talimatlarını](https://huggingface.co/docs/hub/repositories-getting-started#set-up) izleyin, ardından değişikliklerinizi commit edin ve Hub'a `push` yapın:

  ```
  # Create any files you like! Then...
  git add .
  git commit -m "Uploading new models"  # You can choose any descriptive message
  git push
  ```
Arka planda, büyük dosyaları doğrudan Xet depolamasına yüklemek için [Xet protokolü](https://huggingface.co/docs/xet/index) çağrılır ve [parça düzeyinde kopya azaltma](./deduplication) gücü sayesinde yükleme hızları artırılır.

### macOS veya Linux'ta kaldırma

Homebrew kullanılarak:
```bash
git xet uninstall
brew uninstall git-xet
```
Eğer kurulum betiğini (MacOS veya Linux için) kullandıysanız, terminalinizde şunu çalıştırın:
```bash
git xet uninstall
sudo rm $(which git-xet)
```
### Windows'ta kaldırma

`winget` kullandıysanız:
```
winget uninstall git-xet
```

Kurulum aracını kullandıysanız:
-  Ayarlar -> Uygulamalar -> Yüklü uygulamalar bölümüne gidin
- "Git-Xet" öğesini bulun.
- Bağlam menüsünde bulunan "Uninstall" seçeneğini seçin.

Eğer manuel olarak kurduysanız:
- Bir terminalde `git xet uninstall` komutunu çalıştırın.
- `git-xet.exe` dosyasını, başlangıçta yerleştirildiği konumdan silin.

## Öneriler

Xet, Hub'un tüm iş akışlarıyla kusursuz bir şekilde bütünleşir. Ancak, Xet depolamasından en iyi şekilde yararlanmak için göz önünde bulundurabileceğiniz birkaç adım vardır.

Python ile yüklerken veya indirirken:

- **`hf_xet` paketinin yüklü olduğundan emin olun**: Xet, Git LFS için optimize edilmiş eski istemcilerle geriye dönük uyumlu kalmaya devam etse de, `hf_xet` ile `huggingface_hub` entegrasyonu, büyük dosyalarda optimal parça tabanlı performans ve daha hızlı yineleme sağlar.
- **Adaptif eşzamanlılık varsayılan olarak açıktır**: `hf_xet`, gerçek zamanlı ağ koşullarına göre paralel aktarım akışlarının sayısını otomatik olarak ayarlar — yapılandırma gerekmez. Varsayılan ayarlar, herhangi bir ince ayar yapılmadan çoğu ağ yolunu doyurur.
- **İndirme tamponları sistem belleğiyle ölçeklenir**: `hf_xet` 1.7.0 sürümünden itibaren, indirme tamponları `hf_xet` için kullanılabilir belleğe göre boyutlandırılır; bu, konteyner bellek sınırlarını da içerir. Küçük konteynerler indirmeler için daha az bellek kullanırken büyük makineler daha fazla bellek kullanır ve bunun için herhangi bir ayar gerekmez. [İndirme Tamponları](#download-buffers) bölümüne bakın.
- **Gelişmiş ayarlar**: İnce taneli kontrol için, `HF_XET_FIXED_DOWNLOAD_CONCURRENCY` ve `HF_XET_FIXED_UPLOAD_CONCURRENCY` eşzamanlılığı sabit bir değere sabitlemenize ve adaptif denetleyiciyi atlamaya izin verir. Tüm seçeneklerin listesi için `hf_xet`'in [ortam değişkenleri](https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables#xet) bölümüne bakın.

Git veya Python'da yükleme veya indirme sırasında:

- **Sık ve artımlı commit'lerden yararlanın**: Xet'in parça düzeyindeki kopya kaldırma özelliği sayesinde modelleri veya veri setlerini güvenle artımlı olarak güncelleyebilirsiniz. Yalnızca değişen parçalar yüklendiğinden sık commit'ler hem hızlı hem de depolama açısından verimlidir.
- **.gitattributes Dosyasında Spesifik Olun**: Xet veya LFS için desenler tanımlarken, küçük dosyaların gereksiz yere büyük dosya depolamasına yönlendirilmesini önlemek için kesin dosya uzantıları (ör. `*.safetensors`, `*.bin`) kullanın.
- **Topluluk erişimini önceliklendirin**: Xet, büyük dosya aktarımlarının verimliliğini ve ölçeğini önemli ölçüde artırır. Deponuzu toplam boyutunu (veya bireysel dosyaların boyutunu) azaltacak şekilde yapılandırmak yerine, işbirlikçilerin ve topluluk kullanıcılarının ihtiyaç duydukları içeriği kolayca bulup alabilmeleri için yapılandırın.

## Bir vekil sunucu veya güvenlik duvarı arkasında yükleme

`hf_xet` 1.8.0 sürümünden itibaren, yüklemeler verileri yalnızca Xet depolama hizmeti üzerinden değil, doğrudan Amazon S3'e de gönderebilir. Hub, her yükleme için doğrudan yükleme kullanılıp kullanılmayacağına karar verir ve bu özelliği kademeli olarak etkinleştirir. İndirmelerde değişiklik yoktur.

Ağınız giden trafiği kısıtlıyorsa, [Proxy veya güvenlik duvarı arkasında indirme](../models-downloading#downloading-behind-a-proxy-or-firewall) bölümünde listelenenlerin yanı sıra bu ana makinelere (HTTPS, 443 portu) izin verin:

| Ana bilgisayar adı                     | Amaç                                          |
|------------------------------|--------------------------------------------------|
| `s3.us-east-1.amazonaws.com` | Doğrudan yüklemeler (ABD)                              |
| `s3.eu-west-3.amazonaws.com` | AB'de depolanan depolar için doğrudan yüklemeler |

Bu ana bilgisayar adları `hf.co` veya `huggingface.co` altında değildir, bu nedenle bu soneklerin izin listesine eklenmesi onları kapsamaz.

`hf_xet` S3'e erişemezse doğrudan yüklemeyi yeniden dener ve ardından bu veriyi Xet depolama hizmeti üzerinden gönderir. Yükleme yine de tamamlanır ancak her blok önce yeniden denemelerden geçtiği için çok daha yavaş olabilir. Bu durum gerçekleştiğinde `hf_xet` [kaydı](#logging) `Upload grant URL unreachable, falling back to legacy xorb upload path (may be slower)` mesajını gösterir. S3 ana makine adlarını izin veremiyorsanız, doğrudan yüklemeleri kapatmak için `HF_XET_CLIENT_LEGACY_DIRECT_XORB_UPLOAD=1` değerini ayarlayın.

## Ortam Değişkenleri

Hem `hf_xet` hem de Git Xet, `xet-core` tarafından desteklenir ve ortam değişkenleri aracılığıyla yapılandırılabilir. Aşağıdaki tablolar, ince ayar için bireysel değişkenleri listeler. Çoğu kullanıcının bunlardan herhangi birini değiştirmesi gerekmez — varsayılanlar, çoğu ağ yolunu otomatik olarak doyuracak şekilde ayarlanmıştır.

> [!NOTE]
> `HF_XET_HIGH_PERFORMANCE=1`, birden fazla ayarı tek seferde düzenleyen bir kolaylık bayrağıdır (eşzamanlılık sınırları, tampon boyutları ve paralel dosya limitleri). Yüksek bant genişliğine ve hızlı diske sahip makineler için tasarlanmıştır. `hf_xet` 1.7.0 sürümünden itibaren, bu bayrağın ayarladığı tampon boyutları `hf_xet` için kullanılabilir belleğe dayanmaktadır (bkz. [İndirme Tamponları](#download-buffers)), bu nedenle artık 64 GB RAM gerektirmez ve kendiniz ayarladığınız herhangi bir değişken bu bayrağa öncelik kazanır. Önceki sürümlerde, bu bayrağı yalnızca en az 64 GB RAM'e sahip makinelerde kullanın.

### Genel

Çoğu kullanıcının ilk başvurduğu yüksek düzey bayraklar.

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_HIGH_PERFORMANCE` (takma ad `HF_XET_HP`) | kapalı | Ağ ve CPU kullanımını artırmak için eşzamanlılığı, tampon boyutlarını ve paralel dosya sınırlarını tek seferde yükselterek konfor sağlayan bayrak. Yukarıdaki notu inceleyin. |
| `HF_XET_CACHE` | `$HF_HOME/xet` | Xet'in verileri yerel olarak önbelleğe aldığı dizin (indirilen parçalar ve yinelenen veri parçaları). `HF_HOME` değişkenine öncelik verir. |

### Adaptif Eşzamanlılık

Varsayılan olarak `xet-core` adaptif eşzamanlılık kullanır — paralelliği gerçek zamanlı ağ koşullarına göre dinamik olarak ayarlar. Bu, çoğu durumda ihtiyaç duyulması beklenmeyen gelişmiş ayarlardır. Aşağıdaki değişkenler adaptif denetleyicinin davranışını kontrol eder:

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_CLIENT_AC_INITIAL_UPLOAD_CONCURRENCY` | `2` | Eşzamanlı yükleme akışlarının başlangıç sayısı. HP modu: `16`. |
| `HF_XET_CLIENT_AC_INITIAL_DOWNLOAD_CONCURRENCY` | `4` | Eş zamanlı indirme akışlarının başlangıç sayısı. HP modu: `16`. |
| `HF_XET_CLIENT_AC_MIN_UPLOAD_CONCURRENCY` | `1` | Yükleme eşzamanlılığı için alt sınır. HP modu: `4`. |
| `HF_XET_CLIENT_AC_MIN_DOWNLOAD_CONCURRENCY` | `1` | İndirme eşzamanlılığı için alt sınır. HP modu: `4`. |
| `HF_XET_CLIENT_AC_MAX_UPLOAD_CONCURRENCY` | `64` | Yükleme eşzamanlılığı için üst sınır. HP modu: `124`. |
| `HF_XET_CLIENT_AC_MAX_DOWNLOAD_CONCURRENCY` | `64` | İndirme eşzamanlılığı için üst sınır. HP modu: `124`. |
| `HF_XET_CLIENT_AC_TARGET_RTT` | `60s` | Hedef gidiş-dönüş süresi. Tam bir aktarım için tahmin edilen gidiş-dönüş süresi bu değerin altında olduğu sürece eşzamanlılık artar. |
| `HF_XET_CLIENT_AC_MAX_HEALTHY_RTT` | `90s` | Kabul edilebilir maksimum gidiş-dönüş süresi. Bu süreden daha uzun süren aktarmalar, adaptif denetleyici tarafından başarısız olarak sayılır. |
| `HF_XET_CLIENT_AC_HEALTHY_SUCCESS_RATIO_THRESHOLD` | `0.8` | Denetleyicinin eşzamanlılığı artırdığı başarı oranı eşiği. |
| `HF_XET_CLIENT_AC_UNHEALTHY_SUCCESS_RATIO_THRESHOLD` | `0.5` | Denetleyicinin eşzamanlılığı azalttığı başarı oranı eşiği. |
| `HF_XET_CLIENT_AC_LOGGING_INTERVAL_MS` | `10000` | Eşzamanlılık durumunun günlüğe kaydedildiği aralık (ms cinsinden). |

> [!TIP]
> Eşzamanlılığı sabit bir değere sabitlemek için (uyarlayıcı denetleyiciyi atlayarak) `HF_XET_FIXED_UPLOAD_CONCURRENCY` ve `HF_XET_FIXED_DOWNLOAD_CONCURRENCY` pratik takma adlarını kullanın. Bunlar, başlangıç, minimum ve maksimum eşzamanlılığı aynı değere ayarlar.

### Ağ ve Yeniden Deneme

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_CLIENT_RETRY_MAX_ATTEMPTS` | `5` | Başarısız istekler için maksimum yeniden deneme sayısı. |
| `HF_XET_CLIENT_RETRY_BASE_DELAY` | `3000ms` | Yeniden denemeler arasındaki temel gecikme (üstel geri çekilme ile). |
| `HF_XET_CLIENT_RETRY_MAX_DURATION` | `360s` | Tek bir yeniden deneme için maksimum bekleme süresi. Yeniden denemeler `HF_XET_CLIENT_RETRY_MAX_ATTEMPTS` sonrasında durdurulduğundan, toplam yeniden deneme süresi bu değeri aşabilir. |
| `HF_XET_CLIENT_CONNECT_TIMEOUT` | `60s` | TCP bağlantı zaman aşımı. |
| `HF_XET_CLIENT_READ_TIMEOUT` | `300s` | HTTP yanıtları için okuma zaman aşımı. |
| `HF_XET_CLIENT_IDLE_CONNECTION_TIMEOUT` | `60s` | Boşta bekleyen bağlantıların kapatılmasından önceki zaman aşımı. |
| `HF_XET_CLIENT_MAX_IDLE_CONNECTIONS` | `16` | Havuzdaki boşta bekleyen bağlantıların maksimum sayısı. |
| `HF_XET_CLIENT_RECONSTRUCTION_API_VERSION` | (kurulu değil) | İndirme (yeniden oluşturma) API sürümünü, geri dönüş olmadan `1` veya `2` olarak zorla. Ayarlanmadığında `hf_xet`, sürüm 2'yi dener ve sunucu desteklemiyorsa sürüm 1'e geri döner. |
| `HF_XET_CLIENT_SHARD_API_VERSION` | (kurulu değil) | Yükleme (shard) API sürümünü `1` veya `2` olarak zorla, geri dönüş olmadan. Ayarlanmadığında `hf_xet` önce 2. sürümü dener, sunucu desteklemiyorsa 1. sürüme geri döner. |

### Veri Transferi

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_DATA_MAX_CONCURRENT_FILE_INGESTION` | `8` | Yükleme sırasında eşzamanlı olarak işlenen dosyaların maksimum sayısı. HP modu: `100`. |
| `HF_XET_DATA_MAX_CONCURRENT_FILE_DOWNLOADS` | `8` | Eş zamanlı olarak indirilen dosyaların maksimum sayısı. |
| `HF_XET_DATA_INGESTION_BLOCK_SIZE` | `8mb` | Dosya alımı sırasında okunan blokların boyutu. |
| `HF_XET_DATA_PROGRESS_UPDATE_INTERVAL` | `200ms` | İlerleme çubuklarının ne sıklıkla güncellendiği. |
| `HF_XET_DATA_PROGRESS_UPDATE_SPEED_SAMPLING_WINDOW` | `10s` | İlerleme raporlamasında aktarım hızı ölçümlerini birleştirmek için kullanılan zaman penceresi. |
| `HF_XET_CLIENT_LEGACY_DIRECT_XORB_UPLOAD` | `false` | Tüm yükleme verilerinin S3'e doğrudan gönderilmek yerine Xet depolama hizmeti üzerinden gönderilmesi için `1` olarak ayarlayın (`hf_xet` 1.8.0+). [Proxy veya güvenlik duvarı arkasında yükleme](#uploading-behind-a-proxy-or-firewall) bölümüne bakın. |

### Tamponları İndir

Bu ayarlar, indirme sırasında bellek kullanımını kontrol eder.

`hf_xet` 1.7.0 sürümünden itibaren, üç `DOWNLOAD_BUFFER` değişkeninin varsayılan değerleri, `hf_xet`'in kullanabileceği bellek miktarına dayanır. Bu, makinenin RAM'idir; bu değer daha düşükse, konteynerin bellek sınırıdır. Her bir varsayılan değer, bu belleğin bir kesridir ve tabloda gösterilen asgari ile azami değerler arasında tutulur. HP modu, aynı asgari ve azami değerlerle, kesrin iki katını kullanır. Örneğin, 4 GB ile sınırlı bir konteyner, 1 GB sınırıyla yaklaşık 256 MB'lık bir tampon alır; 32 GB'lık bir makine ise önceki sürümlerdeki gibi yaklaşık 2 GB'lık tampon ve 8 GB'lık sınırı alır.

Daha önceki sürümler veya kullanılabilir bellek miktarını tespit edemeyen herhangi bir sürüm, `2gb`, `512mb` ve `8gb` (`16gb`, `2gb` ve `64gb` HP modunda) sabit varsayılan değerlerini kullanır. Kullanılan değerler, `hf_xet` günlük dosyası başlatıldığında bu dosyaya yazılır (bkz. [Kayıt Tutma](#logging)).

| Ortam Değişkeni | Varsayılan | HP Modu | Açıklama |
|---|---|---|---|
| `HF_XET_RECONSTRUCTION_MIN_RECONSTRUCTION_FETCH_SIZE` | `256mb` | `1gb` | Yeniden yapılandırma istekleri için minimum getirme boyutu. |
| `HF_XET_RECONSTRUCTION_MAX_RECONSTRUCTION_FETCH_SIZE` | `8gb` | `16gb` | Yeniden yapılandırma istekleri için maksimum getirme boyutu. |
| `HF_XET_RECONSTRUCTION_DOWNLOAD_BUFFER_SIZE` | Belleğin 1/16'sı, `64mb` ile `16gb` | Hafızanın 1/8'i | Paylaşılan temel tampon bütçesi. |
| `HF_XET_RECONSTRUCTION_DOWNLOAD_BUFFER_PERFILE_SIZE` | belleğin 1/64'ü, `16mb` ile `2gb` | Belleğin 1/32'si | Aktif dosya başına ek tampon bütçesi. |
| `HF_XET_RECONSTRUCTION_DOWNLOAD_BUFFER_LIMIT` | Hafızanın 1/4'ü, `264mb` ile `64gb` | Belleğin 1/2'si | Toplam indirme tampon belleği için sert sınır. `HF_XET_RECONSTRUCTION_DOWNLOAD_BUFFER_SIZE` bu değerin üzerine ayarlanırsa, sınır eşleşmek üzere yükseltilir. |
| `HF_XET_DISABLE_MEMORY_DERIVED_DOWNLOAD_BUFFERS` | kaldırıldı | — | Mevcut bellekten tampon boyutlandırma yerine sabit varsayılanları kullanmak için `1` olarak ayarlayın. |
| `HF_XET_RECONSTRUCTION_TARGET_BLOCK_COMPLETION_TIME` | `15m` | — | Bir ön yükleme bloğunun tamamlanması için hedef süre. İndirmeler sırasında ne kadar verinin önceden yükleneceğini belirlemek için kullanılır. |
| `HF_XET_RECONSTRUCTION_MIN_PREFETCH_BUFFER` | `1gb` | — | İndirme sırasında tahmini tamamlanma süresinden bağımsız olarak önceden alınmış olarak tutulacak minimum veri miktarı. |

### Shard Önbelleği

**shard cache**, disk üzerinde Xet önbellek dizini altında, yinelenen veri indeksini (zaten yüklenmiş parçaları tanımlayan "shard"ları) tutar. Daha büyük bir önbellek, istemcinin daha fazla önceki veriyle yinelenen verileri ayıklamasına olanak tanır; böylece yeniden yüklenen bayt sayısı azalır.

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_SHARD_CACHE_SIZE_LIMIT` | `16gb` | Disk üzerindeki shard önbelleği için yumuşak sınır. Önbellek, bir çalıştırmanın **başlangıcında** bu boyuta indirgenir, ancak tek bir uzun süreli oturum içinde bu sınırı aşarak büyüyebilir. Kabaca bir kılavuz olarak, boyutu *X* olan bir önbellek, yaklaşık 1000 × *X* büyüklüğündeki verilerle (16 GB → ~16 TB) çakışma giderme (dedup) yapar. Çok büyük depolar için daha iyi çakışma giderme sağlamak üzere bu değeri artırın; önbelleğin büyüyerek diskinizi doldurma riski varsa düşürün. İnsan okunabilir bir boyut (ör. `32gb`) veya ham bayt sayısı kabul eder. |
| `HF_XET_SHARD_CHUNK_INDEX_TABLE_MAX_SIZE` | `67108864` | Bellek içi yinelenen veri giderme (deduplication) dizinindeki chunk girişlerinin maksimum sayısı. `128mb` gibi bir boyut yerine tam bir sayı belirleyin. `hf_xet` 1.7.1 sürümünden itibaren, dizin dolduğunda yeni parçalar için yer açmak üzere en eski shard'lar dizinden kaldırılır; önceki sürümlerde ise dizin dolduğunda chunk eklenmesi durdurulur. |
| `HF_XET_SHARD_CACHE_SUBDIR` | `shard-cache` | Xet önbellek dizini içinde shard önbelleği için alt dizin. |

### Parça Önbelleği

`hf_xet`, indirme işlemleri için yerel bir parça önbelleği kullanmaz. İndirilen dosyalar hâlâ `huggingface_hub` dosya tabanlı önbelleğinde saklanır.

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_CHUNK_CACHE_SIZE_BYTES` | — | Artık `hf_xet` tarafından kullanılmamaktadır. Bu ayarı yapmak, indirme parça önbelleğini etkinleştirmez. |

### Kayıt Tutma

| Ortam Değişkeni | Varsayılan | Açıklama |
|---|---|---|
| `HF_XET_LOG_DEST` | (hiçbiri) | Günlük hedefi. Bir dosya yolu veya dizin yolu (sonu `/` ile biten) kabul eder. Bir dizin olarak ayarlandığında, günlük dosyaları zaman damgalı adlarla oluşturulur. Boş bir dize olarak ayarlandığında, günlükler konsola yönlendirilir. Ayarlanmadığında, günlükler Hugging Face Xet önbellek dizinindeki `logs/` alt dizinine yönlendirilir. |
| `HF_XET_LOG_FORMAT` | (hiçbiri) | Günlük kaydı biçimi. JSON biçimli günlükler için `json` olarak ayarlayın; aksi takdirde düz metin kullanılır. Varsayılan olarak, dosya günlüğü JSON, konsol günlüğü ise metin kullanır. |
| `HF_XET_LOG_PREFIX` | `xet` | Bir dizine günlük yazarken günlük dosya adları için önek. |
| `HF_XET_LOG_DIR_DISABLE_CLEANUP` | `false` | Günlük dizinindeki eski günlük dosyalarının otomatik temizlenmesini devre dışı bırakır. |
| `HF_XET_LOG_DIR_MAX_SIZE` | `250mb` | Günlük dizinindeki günlük dosyalarının toplam maksimum boyutu. Bu sınırı aşmamak için eski dosyalar budanır. |
| `HF_XET_LOG_DIR_MIN_DELETION_AGE` | `1d` | Temizlik sırasında bir günlük dosyasının silinebilmesi için gereken minimum yaş. |
| `HF_XET_LOG_DIR_MAX_RETENTION_AGE` | `14d` | Günlük dosyaları için maksimum yaş. Bundan eski dosyalar temizleme sırasında her zaman silinir. |

### Telemetri

`hf_xet`, her yükleme ve indirmeden sonra kısa bir rapor gönderir. İçeriği hakkında bilgi için [Telemetri](./telemetry) bölümüne bakın. Kapatmak için `HF_HUB_DISABLE_TELEMETRY=1` değerini ayarlayın.

## Mevcut Kısıtlamalar

Xet, Git tabanlı depolamaya ince taneli kopya azaltma (deduplication) ve geliştirilmiş performans getirirken, bazı özellikler ve platform uyumlulukları hâlâ geliştirme aşamasındadır. Bu nedenle, Xet destekli bir depo ile çalışırken aşağıdaki kısıtlamaları göz önünde bulundurun:

- **Sadece 64-bit sistemler**: Hem `hf_xet` hem de Git Xet şu anda 64-bit mimari gerektirir; 32-bit sistemler desteklenmez.

