# Xet: nosso backend de armazenamento

Os repositórios no Hugging Face Hub são diferentes dos das plataformas de desenvolvimento de software. Eles contêm arquivos que são:

- Large - os arquivos de modelo ou dataset estão na faixa de GB e acima. Temos alguns arquivos em escala de TB!
- Binário - não está em um formato legível por humanos por padrão (por exemplo, [Safetensors](https://huggingface.co/docs/safetensors/en/index) ou [Parquet](https://huggingface.co/docs/dataset-viewer/en/parquet#what-is-parquet))

Embora o Hub utilize controle de versão moderno com o suporte do Git, essas diferenças tornam os repositórios de [Model](https://huggingface.co/docs/hub/models) e [Dataset](https://huggingface.co/docs/hub/datasets) bastante diferentes daqueles que contêm apenas código-fonte.

Armazenar esses arquivos diretamente em um repositório Git puro é impraticável. Não apenas os sistemas de armazenamento típicos por trás dos repositórios Git não são adequados para esse tipo de arquivo, mas, ao clonar um repositório, o Git recupera todo o histórico, incluindo todas as revisões dos arquivos. Isso pode ser proibitivamente grande para binários massivos, forçando você a baixar gigabytes de dados históricos que talvez você nunca precise.

Em vez disso, no Hub, esses arquivos grandes são rastreados usando "arquivos ponteiro" e identificados por meio de um arquivo `.gitattributes` (ambos discutidos em mais detalhes abaixo), que permanecem no repositório Git, enquanto os dados reais são armazenados em armazenamento remoto (como [Amazon S3](https://aws.amazon.com/s3/)). Como resultado, o repositório permanece pequeno e os fluxos de trabalho típicos do Git permanecem eficientes.

Historicamente, os repositórios do Hub dependiam do [Git LFS](https://git-lfs.com/) para esse mecanismo. Embora o Git LFS continue sendo suportado (veja [Compatibilidade com versões anteriores & Legado](./legacy-git-lfs)), o Hub adotou o Xet, um sistema de armazenamento moderno e personalizado, construído especificamente para o desenvolvimento de IA/ML. Ele permite deduplicação em nível de chunk, uploads menores e downloads mais rápidos do que o Git LFS.

## Protocolo Xet de Código Aberto

Se você deseja entender o protocolo Xet subjacente ou está buscando criar uma nova biblioteca de cliente para acessar o Xet Storage, confira a [Especificação do Protocolo Xet](https://huggingface.co/docs/xet/index).

Nessas páginas você vai começar a usar o Xet Storage.

## Conteúdos

- [Histórico e visão geral do Xet](./overview)
- [Usando o armazenamento Xet](./using-xet-storage)
- [Segurança](./security)
- [Telemetria](./telemetry)
- [Compatibilidade reversa e legado](./legacy-git-lfs)
- [Desduplicação](./deduplication)

