قم بتثبيت حزمة kagglehub
بالنقطة:
pip install kagglehub
المصادقة مطلوبة فقط للوصول إلى الموارد العامة التي تتطلب موافقة المستخدم أو الموارد الخاصة.
أولاً، ستحتاج إلى حساب Kaggle. يمكنك الاشتراك هنا.
بعد تسجيل الدخول، يمكنك تنزيل بيانات اعتماد Kaggle API الخاصة بك على https://www.kaggle.com/settings بالنقر فوق الزر "إنشاء رمز مميز جديد" ضمن قسم "API".
لديك 3 خيارات مختلفة للمصادقة.
سيطالبك هذا بإدخال اسم المستخدم والرمز المميز الخاص بك:
import kagglehub
kagglehub . login ()
يمكنك أيضًا اختيار تصدير اسم مستخدم Kaggle ورمزه المميز إلى البيئة:
export KAGGLE_USERNAME=datadinosaur
export KAGGLE_KEY=xxxxxxxxxxxxxx
kaggle.json
قم بتخزين ملف بيانات اعتماد kaggle.json
الخاص بك على ~/.kaggle/kaggle.json
.
وبدلاً من ذلك، يمكنك تعيين متغير البيئة KAGGLE_CONFIG_DIR
لتغيير هذا الموقع إلى $KAGGLE_CONFIG_DIR/kaggle.json
.
ملاحظة لمستخدمي Windows: الدليل الافتراضي هو %HOMEPATH%/kaggle.json
.
قم بتخزين اسم المستخدم الخاص بك ورمز المفتاح كأسرار Colab KAGGLE_USERNAME
و KAGGLE_KEY
.
يمكن العثور على تعليمات حول إضافة الأسرار في كل من Colab وColab Enterprise في هذه المقالة.
تقوم الأمثلة التالية بتنزيل صيغة answer-equivalence-bem
لنموذج Kaggle هذا: https://www.kaggle.com/models/google/bert/tensorFlow2/answer-equvalence-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 )
تحميل شكل جديد (أو إصدار شكل جديد إذا كان موجودًا بالفعل).
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" ])
تقوم الأمثلة التالية بتنزيل مجموعة بيانات 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 )
تحميل مجموعة بيانات جديدة (أو إصدار جديد إذا كان موجودًا بالفعل).
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" ])
يمكنك تنزيل مسابقة 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 )
نستخدم الفتحة لإدارة هذا المشروع.
اتبع هذه التعليمات لتثبيته.
# 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
لإجراء اختبارات التكامل على جهازك المحلي، تحتاج إلى إعداد بيانات اعتماد Kaggle API الخاصة بك. يمكنك القيام بذلك بإحدى الطريقتين الموضحتين في الأقسام السابقة من هذا المستند. الرجوع إلى الأقسام:
بعد إعداد بيانات الاعتماد الخاصة بك بأي من هذه الطرق، يمكنك تشغيل اختبارات التكامل على النحو التالي:
# Run all tests
hatch test integration_tests
kagglehub
من المصدر # 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
داخل Dockerيعد هذا مفيدًا للتشغيل في بيئة متسقة والتبديل بسهولة بين إصدارات Python.
يوضح ما يلي كيفية تشغيل hatch run lint:all
ولكن هذا يعمل أيضًا مع أي أوامر 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
قم بتثبيت الملحقات الموصى بها.
قم بتكوين الفتحة لإنشاء بيئة افتراضية في مجلد المشروع.
hatch config set dirs.env.virtual .env
بعد ذلك، قم بإنشاء جميع بيئات بايثون اللازمة عن طريق تشغيل hatch -e all run tests
.
أخيرًا، قم بتكوين vscode لاستخدام إحدى البيئات المحددة: cmd + shift + p
-> python: Select Interpreter
-> اختر أحد المجلدات الموجودة في ./.env
قامت مكتبة kagglehub بتكوين التسجيل التلقائي الذي يتم تخزينه في مجلد السجل. يتم حل وجهة السجل عبر os.path.expanduser
يحتوي الجدول أدناه على المواقع المحتملة:
نظام التشغيل | مسار السجل |
---|---|
com.osx | /user/$USERNAME/.kaggle/logs/kagglehub.log |
لينكس | ~/.kaggle/logs/kagglehub.log |
ويندوز | C:Users%USERNAME%.kagglelogskagglehub.log |
الرجاء تضمين السجل للمساعدة في استكشاف المشكلات وإصلاحها.