Instal paket kagglehub
dengan pip:
pip install kagglehub
Otentikasi hanya diperlukan untuk mengakses sumber daya publik yang memerlukan persetujuan pengguna atau sumber daya pribadi.
Pertama, Anda memerlukan akun Kaggle. Anda dapat mendaftar di sini.
Setelah login, Anda dapat mengunduh kredensial Kaggle API Anda di https://www.kaggle.com/settings dengan mengklik tombol "Buat Token Baru" di bawah bagian "API".
Anda memiliki 3 opsi berbeda untuk diautentikasi.
Ini akan meminta Anda memasukkan nama pengguna dan token Anda:
import kagglehub
kagglehub . login ()
Anda juga dapat memilih untuk mengekspor nama pengguna dan token Kaggle Anda ke lingkungan:
export KAGGLE_USERNAME=datadinosaur
export KAGGLE_KEY=xxxxxxxxxxxxxx
kaggle.json
Simpan file kredensial kaggle.json
Anda di ~/.kaggle/kaggle.json
.
Alternatifnya, Anda dapat mengatur variabel lingkungan KAGGLE_CONFIG_DIR
untuk mengubah lokasi ini menjadi $KAGGLE_CONFIG_DIR/kaggle.json
.
Catatan untuk pengguna Windows: Direktori default adalah %HOMEPATH%/kaggle.json
.
Simpan nama pengguna dan token kunci Anda sebagai rahasia Colab KAGGLE_USERNAME
dan KAGGLE_KEY
.
Petunjuk tentang menambahkan rahasia di Colab dan Colab Enterprise dapat ditemukan di artikel ini.
Contoh berikut mendownload variasi answer-equivalence-bem
dari model Kaggle ini: https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem
import kagglehub
# Download the latest version.
kagglehub . model_download ( 'google/bert/tensorFlow2/answer-equivalence-bem' )
# Download a specific version.
kagglehub . model_download ( 'google/bert/tensorFlow2/answer-equivalence-bem/1' )
# Download a single file.
kagglehub . model_download ( 'google/bert/tensorFlow2/answer-equivalence-bem' , path = 'variables/variables.index' )
# Download a model or file, even if previously downloaded to cache.
kagglehub . model_download ( 'google/bert/tensorFlow2/answer-equivalence-bem' , force_download = True )
Mengupload variasi baru (atau versi variasi baru jika sudah ada).
import kagglehub
# For example, to upload a new variation to this model:
# - https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem
#
# You would use the following handle: `google/bert/tensorFlow2/answer-equivalence-bem`
handle = '///'
local_model_dir = 'path/to/local/model/dir'
kagglehub . model_upload ( handle , local_model_dir )
# You can also specify some version notes (optional)
kagglehub . model_upload ( handle , local_model_dir , version_notes = 'improved accuracy' )
# You can also specify a license (optional)
kagglehub . model_upload ( handle , local_model_dir , license_name = 'Apache 2.0' )
# You can also specify a list of patterns for files/dirs to ignore.
# These patterns are combined with `kagglehub.models.DEFAULT_IGNORE_PATTERNS`
# to determine which files and directories to exclude.
# To ignore entire directories, include a trailing slash (/) in the pattern.
kagglehub . model_upload ( handle , local_model_dir , ignore_patterns = [ "original/" , "*.tmp" ])
Contoh berikut mengunduh kumpulan data Spotify Recommendation
Kaggle: https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation
import kagglehub
# Download the latest version.
kagglehub . dataset_download ( 'bricevergnou/spotify-recommendation' )
# Download a specific version.
kagglehub . dataset_download ( 'bricevergnou/spotify-recommendation/versions/1' )
# Download a single file
kagglehub . dataset_download ( 'bricevergnou/spotify-recommendation' , path = 'data.csv' )
# Download a dataset or file, even if previously downloaded to cache.
kagglehub . dataset_download ( 'bricevergnou/spotify-recommendation' , force_download = True )
Mengunggah kumpulan data baru (atau versi baru jika sudah ada).
import kagglehub
# For example, to upload a new dataset (or version) at:
# - https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation
#
# You would use the following handle: `bricevergnou/spotify-recommendation`
handle = ' < KAGGLE_USERNAME > / < DATASET >
local_dataset_dir = 'path/to/local/dataset/dir'
# Create a new dataset
kagglehub . dataset_upload ( handle , local_dataset_dir )
# You can then create a new version of this existing dataset and include version notes (optional).
kagglehub . dataset_upload ( handle , local_dataset_dir , version_notes = 'improved data' )
# You can also specify a list of patterns for files/dirs to ignore.
# These patterns are combined with `kagglehub.datasets.DEFAULT_IGNORE_PATTERNS`
# to determine which files and directories to exclude.
# To ignore entire directories, include a trailing slash (/) in the pattern.
kagglehub . dataset_upload ( handle , local_dataset_dir , ignore_patterns = [ "original/" , "*.tmp" ])
Berikut contoh download kompetisi Digit Recognizer
Kaggle : https://www.kaggle.com/competitions/digit-recognizer
import kagglehub
# Download the latest version.
kagglehub . competition_download ( 'digit-recognizer' )
# Download a single file
kagglehub . competition_download ( 'digit-recognizer' , path = 'train.csv' )
# Download a competition or file, even if previously downloaded to cache.
kagglehub . competition_download ( 'digit-recognizer' , force_download = True )
Kami menggunakan hatch untuk mengelola proyek ini.
Ikuti petunjuk ini untuk menginstalnya.
# Run all tests for current Python version.
hatch test
# Run all tests for all Python versions.
hatch test --all
# Run all tests for a specific Python version.
hatch test -py 3.11
# Run a single test file
hatch test tests/test_ < SOME_FILE > .py
Untuk menjalankan pengujian integrasi pada mesin lokal, Anda perlu menyiapkan kredensial Kaggle API Anda. Anda dapat melakukannya dengan salah satu dari dua cara yang dijelaskan di bagian awal dokumen ini. Lihat bagian:
Setelah menyiapkan kredensial Anda dengan salah satu metode berikut, Anda dapat menjalankan pengujian integrasi sebagai berikut:
# Run all tests
hatch test integration_tests
kagglehub
dari sumber # Download a model & print the path
hatch run python -c " import kagglehub; print('path: ', kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem')) "
# Lint check
hatch run lint:style
hatch run lint:typing
hatch run lint:all # for both
# Format
hatch run lint:fmt
hatch test --cover
hatch build
hatch
di dalam DockerIni berguna untuk dijalankan di lingkungan yang konsisten dan dengan mudah beralih antar versi Python.
Berikut ini menunjukkan cara menjalankan hatch run lint:all
tetapi ini juga berfungsi untuk perintah hatch lainnya:
# Use default Python version
./docker-hatch run lint:all
# Use specific Python version (Must be a valid tag from: https://hub.docker.com/_/python)
./docker-hatch -v 3.9 run lint:all
# Run test in docker with specific Python version
./docker-hatch -v 3.9 test
Instal ekstensi yang disarankan.
Konfigurasikan hatch untuk membuat virtual env di folder proyek.
hatch config set dirs.env.virtual .env
Setelah itu, buat semua lingkungan python yang diperlukan dengan menjalankan hatch -e all run tests
.
Terakhir, konfigurasikan vscode untuk menggunakan salah satu lingkungan yang dipilih: cmd + shift + p
-> python: Select Interpreter
-> Pilih salah satu folder di ./.env
Pustaka kagglehub telah mengonfigurasi logging otomatis yang disimpan dalam folder log. Tujuan log diselesaikan melalui os.path.expanduser
Tabel di bawah berisi kemungkinan lokasi:
os | jalur log |
---|---|
osx | /pengguna/$USERNAME/.kaggle/logs/kagglehub.log |
linux | ~/.kaggle/logs/kagglehub.log |
jendela | C:Users%USERNAME%.kagglelogskagglehub.log |
Harap sertakan log untuk membantu memecahkan masalah.