Instale el paquete kagglehub
con pip:
pip install kagglehub
La autenticación solo es necesaria para acceder a recursos públicos que requieren el consentimiento del usuario o a recursos privados.
Primero, necesitará una cuenta de Kaggle. Puedes registrarte aquí.
Después de iniciar sesión, puede descargar sus credenciales de API de Kaggle en https://www.kaggle.com/settings haciendo clic en el botón "Crear nuevo token" en la sección "API".
Tienes 3 opciones diferentes para autenticar.
Esto le pedirá que ingrese su nombre de usuario y token:
importar kagglehubkagglehub.login()
También puedes optar por exportar tu nombre de usuario y token de Kaggle al entorno:
exportar KAGGLE_USERNAME=datadinosaurexport KAGGLE_KEY=xxxxxxxxxxxxxxx
kaggle.json
Guarde su archivo de credenciales kaggle.json
en ~/.kaggle/kaggle.json
.
Alternativamente, puede configurar la variable de entorno KAGGLE_CONFIG_DIR
para cambiar esta ubicación a $KAGGLE_CONFIG_DIR/kaggle.json
.
Nota para usuarios de Windows: el directorio predeterminado es %HOMEPATH%/kaggle.json
.
Guarde su nombre de usuario y token de clave como secretos de Colab KAGGLE_USERNAME
y KAGGLE_KEY
.
En este artículo se pueden encontrar instrucciones sobre cómo agregar secretos tanto en Colab como en Colab Enterprise.
Los siguientes ejemplos descargan la variación answer-equivalence-bem
de este modelo de Kaggle: https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem
importar kagglehub# Descargue la última versión.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem')# Descargue una versión específica.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem/1 ')# Descargar un único archivo.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem', path='variables/variables.index')# Descargar un modelo o archivo, incluso si se descargó previamente en cache.kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem', force_download=True)
Carga una nueva variación (o la versión de una nueva variación si ya existe).
import kagglehub# Por ejemplo, para cargar una nueva variación de este modelo:# - https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equivalence-bem# # Usarías el siguiente identificador: ` google/bert/tensorFlow2/answer-equivalence-bem`handle = '<KAGGLE_USERNAME>/<MODEL>/<FRAMEWORK>/<VARIATION>'local_model_dir = 'ruta/a/local/model/dir'kagglehub.model_upload(handle, local_model_dir)# También puedes especificar algunas notas de versión (opcional)kagglehub.model_upload(handle, local_model_dir, version_notes='precisión mejorada')# También puedes especifique una licencia (opcional)kagglehub.model_upload(handle, local_model_dir, License_name='Apache 2.0')# Puede también especifique una lista de patrones para archivos/directorios a ignorar.# Estos patrones se combinan con `kagglehub.models.DEFAULT_IGNORE_PATTERNS` # para determinar qué archivos y directorios excluir. # Para ignorar directorios completos, incluya una barra diagonal (/) en el patrón.kagglehub.model_upload(handle, local_model_dir, ignore_patterns=["original/", "*.tmp"])
Los siguientes ejemplos descargan el conjunto de datos Kaggle Spotify Recommendation
: https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation
importar kagglehub# Descargue la última versión.kagglehub.dataset_download('bricevergnou/spotify-recommendation')# Descargue una versión específica.kagglehub.dataset_download('bricevergnou/spotify-recommendation/versions/1')# Descargue un solo archivokagglehub.dataset_download( 'bricevergnou/spotify-recomendación', path='data.csv')# Descargue un conjunto de datos o un archivo, incluso si lo descargó previamente en cache.kagglehub.dataset_download('bricevergnou/spotify-recommendation', force_download=True)
Carga un nuevo conjunto de datos (o una nueva versión si ya existe).
import kagglehub# Por ejemplo, para cargar un nuevo conjunto de datos (o versión) en:# - https://www.kaggle.com/datasets/bricevergnou/spotify-recommendation# # Usaría el siguiente identificador: `bricevergnou/spotify- recomendación`handle = '<KAGGLE_USERNAME>/<DATASET>local_dataset_dir = 'ruta/a/local/dataset/dir'# Crear un nuevo conjunto de datoskagglehub.dataset_upload(handle, local_dataset_dir)# Luego puede crear una nueva versión de este conjunto de datos existente e incluir notas de versión (opcional).kagglehub.dataset_upload(handle, local_dataset_dir, version_notes='datos mejorados')# También puede especificar un lista de patrones que los archivos/directorios deben ignorar. # Estos patrones se combinan con `kagglehub.datasets.DEFAULT_IGNORE_PATTERNS` # para determinar qué archivos y directorios excluir. # Para ignorar directorios completos, incluya una barra diagonal (/) en el patrón.kagglehub.dataset_upload(handle, local_dataset_dir, ignore_patterns=["original/", "*.tmp"])
Los siguientes ejemplos descargan el concurso Digit Recognizer
Kaggle: https://www.kaggle.com/competitions/digit-recognizer
importar kagglehub# Descargar la última versión.kagglehub.competition_download('digit-recognizer')# Descargar un solo archivokagglehub.competition_download('digit-recognizer', path='train.csv')# Descargar una competencia o archivo, incluso si ya fue previamente descargado al caché. kagglehub.competition_download('reconocedor de dígitos', force_download=True)
Usamos hatch para gestionar este proyecto.
Siga estas instrucciones para instalarlo.
# Ejecutar todas las pruebas para la versión actual de Python.hatch test# Ejecutar todas las pruebas para todas las versiones de Python.hatch test --all# Ejecutar todas las pruebas para una versión específica de Python.hatch test -py 3.11# Ejecutar un único archivo de pruebahatch test tests/test_ <ALGUNO_ARCHIVO>.py
Para ejecutar pruebas de integración en su máquina local, debe configurar sus credenciales de la API de Kaggle. Puede hacerlo de una de estas dos formas descritas en las secciones anteriores de este documento. Consulte las secciones:
Usando variables de entorno
Usando el archivo de credenciales
Después de configurar sus credenciales mediante cualquiera de estos métodos, puede ejecutar las pruebas de integración de la siguiente manera:
# Ejecutar todas las pruebas. Prueba de integración.
kagglehub
desde la fuente# Descargue un modelo e imprima el pathhatch run python -c "import kagglehub; print('path: ', kagglehub.model_download('google/bert/tensorFlow2/answer-equivalence-bem'))"
# Lint checkhatch ejecuta lint:style escotilla ejecutar pelusa: escribiendo hatch run lint:all # para ambos# Formatthattch run lint:fmt
prueba de escotilla --cubierta
construcción de escotilla
hatch
dentro de DockerEsto es útil para ejecutar en un entorno consistente y cambiar fácilmente entre versiones de Python.
A continuación se muestra cómo ejecutar hatch run lint:all
pero esto también funciona para cualquier otro comando de 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
Instale las extensiones recomendadas.
Configure el sombreado para crear un entorno virtual en la carpeta del proyecto.
hatch config set dirs.env.virtual .env
Después, cree todos los entornos de Python necesarios ejecutando hatch -e all run tests
.
Finalmente, configure vscode para usar uno de los entornos seleccionados: cmd + shift + p
-> python: Select Interpreter
-> Elija una de las carpetas en ./.env
La biblioteca kagglehub ha configurado el registro automático que se almacena en una carpeta de registro. El destino del registro se resuelve a través de os.path.expanduser
La siguiente tabla contiene posibles ubicaciones:
sistema operativo | ruta de registro |
---|---|
osx | /usuario/$NOMBRE DE USUARIO/.kaggle/logs/kagglehub.log |
Linux | ~/.kaggle/logs/kagglehub.log |
ventanas | C: Usuarios% NOMBRE DE USUARIO%.kagglelogskagglehub.log |
Incluya el registro para ayudar a solucionar problemas.