Datasets documentation

Pemecahan Masalah

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v4.8.4).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Pemecahan Masalah

Panduan ini bertujuan untuk memberikan Anda alat dan pengetahuan yang diperlukan untuk menavigasi beberapa masalah umum. Jika saran yang tercantum dalam panduan ini tidak mencakup situasi Anda, silakan merujuk ke bagian Meminta Bantuan untuk mempelajari di mana Anda dapat menemukan bantuan untuk masalah spesifik Anda.

Masalah saat mengunggah dataset dengan push_to_hub

Masalah autentikasi

Jika Anda mengalami masalah autentikasi saat membagikan dataset di 🤗 Hub menggunakan Dataset.push_to_hub() dan token akses Hugging Face:

  • Pastikan bahwa token Hugging Face yang Anda gunakan untuk autentikasi adalah token dengan izin write.
  • Pada OSX, mungkin membantu untuk membersihkan semua kata sandi huggingface.co di keychain access Anda, serta mengatur ulang git config --global credential.helper osxkeychain, sebelum menggunakan hf auth login.

Sebagai alternatif, Anda dapat menggunakan kunci SSH untuk mengautentikasi diri - baca selengkapnya di dokumentasi 🤗 Hub.

Koneksi terputus saat mengunggah dataset besar

Saat mengunggah dataset besar ke Hub, jika jumlah shard dataset sangat besar, hal ini dapat membuat terlalu banyak commit untuk Hub dalam waktu singkat. Hal ini akan menyebabkan error koneksi. Error koneksi juga dapat disebabkan oleh error HTTP 500 yang dikembalikan oleh bucket AWS S3 yang digunakan secara internal oleh Hub. Dalam kedua situasi tersebut, Anda dapat menjalankan ulang Dataset.push_to_hub() untuk melanjutkan pengunggahan dataset. Hub akan memeriksa SHA dari shard yang sudah diunggah untuk menghindari pengunggahan ulang. Kami sedang bekerja untuk membuat proses pengunggahan lebih tahan terhadap error sementara, sehingga memperbarui ke versi pustaka terbaru selalu menjadi ide yang baik.

Terlalu Banyak Permintaan

Mengunggah dataset besar melalui push_to_hub() dapat menyebabkan error:

HfHubHTTPError: 429 Client Error: Too Many Requests for url: ...
You have exceeded our hourly quotas for action: commit. We invite you to retry later.

Jika Anda menemui masalah ini, Anda perlu memperbarui pustaka datasets ke versi terbaru (atau setidaknya 2.15.0).

Masalah saat membuat dataset dari data kustom

Memuat gambar dan audio dari folder

Saat membuat dataset dari folder, salah satu masalah yang paling umum adalah struktur file tidak mengikuti format yang diharapkan, atau ada masalah pada file metadata.

Pelajari lebih lanjut tentang struktur folder yang diperlukan di halaman dokumentasi yang sesuai:

Masalah pickling

Masalah pickling saat menggunakan Dataset.from_generator

Saat membuat dataset, IterableDataset.from_generator() dan Dataset.from_generator() mengharapkan fungsi generator yang “picklable”. Hal ini diperlukan untuk melakukan hash pada fungsi menggunakan pickle agar dataset dapat di-cache di disk.

Meskipun fungsi generator umumnya dapat “di-pickle”, perhatikan bahwa objek generator tidak dapat. Jadi, jika Anda menggunakan objek generator, Anda akan menemui TypeError seperti ini:

TypeError: cannot pickle 'generator' object

Kesalahan ini juga dapat terjadi saat menggunakan fungsi generator yang memakai objek global yang tidak dapat “picklable”, seperti koneksi DB, misalnya. Jika demikian, Anda dapat menginisialisasi objek tersebut langsung di dalam fungsi generator untuk menghindari kesalahan ini.

Masalah Pickling dengan Dataset.map

Kesalahan pickling juga dapat terjadi pada Dataset.map() multiproses - objek di-pickle untuk diteruskan ke proses anak. Jika objek yang digunakan dalam transformasi tidak dapat di-pickle, maka tidak mungkin untuk meng-cache hasil dari map, yang menyebabkan error muncul.

Berikut adalah beberapa cara untuk mengatasi masalah ini:

  • Solusi universal untuk masalah pickle adalah memastikan bahwa objek (atau kelas generator) dapat di-pickle secara manual dengan mengimplementasikan __getstate__ / __setstate__ / __reduce__.
  • Anda juga dapat menyediakan hash unik Anda sendiri di map dengan argumen new_fingerprint.
  • Anda juga dapat menonaktifkan cache dengan memanggil datasets.disable_caching(), namun hal ini tidak diinginkan - baca lebih lanjut tentang pentingnya cache

Minta bantuan

Jika saran pemecahan masalah di atas tidak membantu Anda menyelesaikan masalah Anda, hubungi komunitas dan tim untuk mendapatkan bantuan.

Forum

Minta bantuan di forum Hugging Face - posting pertanyaan Anda di kategori 🤗Datasets Pastikan untuk menulis postingan yang deskriptif dengan konteks yang relevan tentang setup Anda dan kode yang dapat direproduksi untuk memaksimalkan kemungkinan masalah Anda terselesaikan!

Discord

Ajukan pertanyaan di Discord, dan biarkan tim serta komunitas membantu Anda.

Diskusi Komunitas di 🤗 Hub

Jika Anda mengalami masalah saat membuat dataset kustom di Hub, Anda dapat meminta bantuan tim Hugging Face dengan membuka diskusi di tab Community dari dataset Anda dengan pesan berikut:

# Dataset rewiew request for <Dataset name>

## Description

<brief description of the dataset>

## Files to review

- file1
- file2
- ...

cc @lhoestq @albertvillanova

GitHub Issues

Terakhir, jika Anda mencurigai telah menemukan bug yang terkait dengan pustaka itu sendiri, buatlah Issue di repositori GitHub 🤗 Datasets. Sertakan konteks mengenai bug tersebut: potongan kode untuk mereproduksi, detail tentang lingkungan dan data Anda, dll., untuk membantu kami memahami apa yang salah dan bagaimana kami dapat memperbaikinya.

Update on GitHub