Installez le package kagglehub
avec pip :
pip install kagglehub
L'authentification n'est nécessaire que pour accéder aux ressources publiques nécessitant le consentement de l'utilisateur ou aux ressources privées.
Tout d’abord, vous aurez besoin d’un compte Kaggle. Vous pouvez vous inscrire ici.
Après vous être connecté, vous pouvez télécharger vos informations d'identification API Kaggle sur https://www.kaggle.com/settings en cliquant sur le bouton « Créer un nouveau jeton » sous la section « API ».
Vous disposez de 3 options différentes pour vous authentifier.
Cela vous demandera de saisir votre nom d'utilisateur et votre jeton :
importer kagglehubkagglehub.login()
Vous pouvez également choisir d'exporter votre nom d'utilisateur et votre token Kaggle vers l'environnement :
export KAGGLE_USERNAME=datadinosaurexport KAGGLE_KEY=xxxxxxxxxxxxxxx
kaggle.json
Stockez votre fichier d'informations d'identification kaggle.json
dans ~/.kaggle/kaggle.json
.
Vous pouvez également définir la variable d'environnement KAGGLE_CONFIG_DIR
pour modifier cet emplacement en $KAGGLE_CONFIG_DIR/kaggle.json
.
Remarque pour les utilisateurs Windows : le répertoire par défaut est %HOMEPATH%/kaggle.json
.
Stockez votre nom d'utilisateur et votre jeton de clé en tant que secrets Colab KAGGLE_USERNAME
et KAGGLE_KEY
.
Des instructions sur l'ajout de secrets dans Colab et Colab Enterprise sont disponibles dans cet article.
Les exemples suivants téléchargent la answer-equivalence-bem
de ce modèle Kaggle : https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem
import kagglehub# Téléchargez la dernière version.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem')# Téléchargez une version spécifique.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem/1 ')# Téléchargez un single file.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem', path='variables/variables.index')# Télécharger un modèle ou un fichier, même s'il a déjà été téléchargé dans le cache.kagglehub.model_download('google /bert/tensorFlow2/answer-equivalence-bem', force_download=True)
Télécharge une nouvelle variante (ou la version d'une nouvelle variante si elle existe déjà).
import kagglehub# Par exemple, pour télécharger une nouvelle variante de ce modèle :# - https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem# # Vous utiliserez le handle suivant : ` google/bert/tensorFlow2/answer-equivalence-bem`handle = '<KAGGLE_USERNAME>/<MODEL>/<FRAMEWORK>/<VARIATION>'local_model_dir = 'path/to/local/model/dir'kagglehub.model_upload(handle, local_model_dir)# Vous pouvez également spécifier des notes de version (facultatif)kagglehub .model_upload(handle, local_model_dir, version_notes='improved retention')# Vous pouvez également spécifier une licence (facultatif)kagglehub.model_upload(handle, local_model_dir, licence_name='Apache 2.0')# Vous pouvez également spécifier une liste de modèles pour les fichiers/répertoires à ignorer.# Ces modèles sont combinés avec `kagglehub.models.DEFAULT_IGNORE_PATTERNS` # pour déterminer les fichiers et répertoires à exclure. # Pour ignorer des répertoires entiers, incluez une barre oblique finale (/) dans le motif.kagglehub.model_upload(handle, local_model_dir, ignore_patterns=["original/", "*.tmp"])
Les exemples suivants téléchargent l'ensemble de données Spotify Recommendation
Kaggle : https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation
import kagglehub# Téléchargez la dernière version.kagglehub.dataset_download('bricevergnou/spotify-recommendation')# Téléchargez une version spécifique.kagglehub.dataset_download('bricevergnou/spotify-recommendation/versions/1')# Téléchargez un seul fichierkagglehub.dataset_download( 'bricevergnou/spotify-recommandation', path='data.csv')# Télécharger un ensemble de données ou un fichier, même s'il a déjà été téléchargé sur cache.kagglehub.dataset_download('bricevergnou/spotify-recommendation', force_download=True)
Télécharge un nouvel ensemble de données (ou une nouvelle version si elle existe déjà).
import kagglehub# Par exemple, pour télécharger un nouvel ensemble de données (ou version) sur :# - https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation# # Vous utiliserez le handle suivant : `bricevergnou/spotify- recommandation`handle = '<KAGGLE_USERNAME>/<DATASET>local_dataset_dir = 'path/to/local/dataset/dir'# Créer un nouvel ensemble de donnéeskagglehub.dataset_upload(handle, local_dataset_dir)# Vous pouvez ensuite créer une nouvelle version de cet ensemble de données existant et inclure des notes de version (facultatif).kagglehub.dataset_upload(handle, local_dataset_dir , version_notes='improved data')# Vous pouvez également spécifier une liste de modèles à ignorer pour les fichiers/répertoires.# Ces modèles sont combinés avec `kagglehub.datasets.DEFAULT_IGNORE_PATTERNS` # pour déterminer les fichiers et répertoires à exclure. # Pour ignorer des répertoires entiers, incluez une barre oblique finale (/) dans le motif.kagglehub.dataset_upload(handle, local_dataset_dir, ignore_patterns=["original/", "*.tmp"])
Les exemples suivants téléchargent le concours Digit Recognizer
Kaggle : https://www.kaggle.com/competitions/digit-recognizer
import kagglehub# Téléchargez la dernière version.kagglehub.competition_download('digit-recognizer')# Téléchargez un seul fichierkagglehub.competition_download('digit-recognizer', path='train.csv')# Téléchargez un concours ou un fichier, même si auparavant téléchargé dans le cache. kagglehub.competition_download('digit-recognizer', force_download=True)
Nous utilisons Hatch pour gérer ce projet.
Suivez ces instructions pour l'installer.
# Exécuter tous les tests pour la version actuelle de Python.hatch test# Exécuter tous les tests pour toutes les versions de Python.hatch test --all# Exécuter tous les tests pour une version Python spécifique.hatch test -py 3.11# Exécuter un seul fichier de testhatch test tests/test_ <SOME_FILE>.py
Pour exécuter des tests d'intégration sur votre machine locale, vous devez configurer vos informations d'identification API Kaggle. Vous pouvez le faire de l'une des deux manières décrites dans les sections précédentes de ce document. Référez-vous aux rubriques :
Utiliser des variables d'environnement
Utilisation du fichier d'informations d'identification
Après avoir configuré vos informations d'identification par l'une de ces méthodes, vous pouvez exécuter les tests d'intégration comme suit :
# Exécutez tous les tests testhatch Integration_tests
kagglehub
à partir des sources# Téléchargez un modèle et imprimez le pathhatch run python -c "import kagglehub; print('path: ', kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem'))"
# Lint checkhatch run lint:style charpie d'exécution de trappe:saisie Hatch Run Lint:all # pour les deux# FormatHatch Run Lint:fmt
test d'écoutille - couverture
construction de trappes
hatch
dans DockerCeci est utile pour exécuter dans un environnement cohérent et basculer facilement entre les versions de Python.
Ce qui suit montre comment exécuter hatch run lint:all
, mais cela fonctionne également pour toutes les autres commandes Hatch :
# 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
Installez les extensions recommandées.
Configurez Hatch pour créer un environnement virtuel dans le dossier du projet.
hatch config set dirs.env.virtual .env
Ensuite, créez tous les environnements Python nécessaires en exécutant hatch -e all run tests
.
Enfin, configurez vscode pour utiliser l'un des environnements sélectionnés : cmd + shift + p
-> python: Select Interpreter
-> Choisissez l'un des dossiers dans ./.env
La bibliothèque kagglehub a configuré la journalisation automatique qui est stockée dans un dossier de journaux. La destination du journal est résolue via os.path.expanduser
Le tableau ci-dessous contient les emplacements possibles :
système d'exploitation | chemin du journal |
---|---|
osx | /user/$USERNAME/.kaggle/logs/kagglehub.log |
Linux | ~/.kaggle/logs/kagglehub.log |
fenêtres | C:Utilisateurs%USERNAME%.kagglelogskagglehub.log |
Veuillez inclure le journal pour vous aider à résoudre les problèmes.