Hub documentation

Arquivos de dados Configuração

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Arquivos de dados Configuração

Não há restrições sobre como estruturar repositórios de conjuntos de dados.

No entanto, se você quiser que o Dataset Viewer exiba determinados arquivos de dados ou separe seu dataset em splits de train/validation/test, você precisa estruturar seu dataset de acordo. Muitas vezes, basta nomear seus arquivos de dados de acordo com os nomes dos splits, por exemplo, train.csv e test.csv.

O que são splits e subsets?

Conjuntos de dados de machine learning geralmente possuem splits e podem também ter subsets. Um dataset é geralmente composto por splits (por exemplo, train e test) que são usados em diferentes etapas de treinamento e avaliação de um modelo. Um subset (também chamado de configuration) é um subconjunto de dados contido em um dataset maior. Subsets são especialmente comuns em conjuntos de dados de fala multilíngues, onde pode haver um subset diferente para cada idioma. Se você tiver interesse em aprender mais sobre splits e subsets, confira o guia Splits and subsets!

split-configs-server

Detecção automática de splits

Os splits são detectados automaticamente com base nos nomes dos arquivos e diretórios. Por exemplo, este é um conjunto de dados com os splits train, test e validation:

my_dataset_repository/
├── README.md
├── train.csv
├── test.csv
└── validation.csv

Para estruturar seu dataset nomeando seus arquivos ou diretórios de dados de acordo com os nomes de seus splits, consulte a documentação Nomes de arquivos e splits e a coleção de exemplos de datasets.

Configuração manual de divisões e subconjuntos

Você pode escolher os arquivos de dados a serem exibidos no Dataset Viewer para o seu conjunto de dados usando YAML. Isso é útil se você quiser especificar manualmente qual arquivo vai para qual split.

Você também pode definir vários subconjuntos para seu conjunto de dados e passar parâmetros de construção do conjunto de dados (por exemplo, o separador a ser usado para arquivos CSV).

Aqui está um exemplo de uma configuração que define um subconjunto chamado “benchmark” com uma divisão test.

configs:
- config_name: benchmark
  data_files:
  - split: test
    path: benchmark.csv

Consulte a documentação sobre Configuração manual para mais informações. Consulte também os conjuntos de dados de exemplo.

Formatos de arquivo suportados

Consulte a página de documentação Formatos de arquivo para encontrar a lista de formatos suportados e recomendações para o seu conjunto de dados. Se o seu conjunto de dados usa arquivos CSV ou TSV, você pode encontrar mais informações nos conjuntos de dados de exemplo.

Erros de limite de tamanho do Dataset Viewer (TooBigContentError)

Se você vir Error code: TooBigContentError, o visualizador de conjuntos de dados não conseguiu ler uma pré-visualização dentro de seus limites. Mensagens comuns incluem Parquet error: Scan size limit exceeded e The size of the content of the first rows exceeds the maximum supported size.

O que você pode fazer:

  • Para arquivos Parquet, use grupos de linhas menores e inclua um índice de página (write_page_index=True) para que o Viewer possa ler apenas o que precisa.
  • Evite valores muito grandes nas primeiras linhas (strings muito longas, blobs JSON grandes, payloads base64). Mova payloads grandes para arquivos separados sempre que possível.
  • Divida arquivos muito grandes em shards ou splits menores e, em seguida, faça o re-upload.
  • Se o problema persistir, revise Configure the Dataset Viewer e abra uma discussão na página do seu conjunto de dados com o texto completo do erro.

Conjuntos de dados de imagem, áudio e vídeo

Para conjuntos de dados de classificação de imagem/áudio/vídeo, você também pode usar diretórios para nomear as classes de imagem/áudio/vídeo. E se seus arquivos de imagem/áudio/vídeo tiverem metadados (por exemplo, legendas, caixas delimitadoras, transcrições, etc.), você pode ter arquivos de metadados ao lado deles.

Oferecemos dois guias que você pode consultar:

Update on GitHub