ติดตั้งแพ็คเกจ kagglehub
ด้วย pip:
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-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 )
อัปโหลดรูปแบบใหม่ (หรือเวอร์ชันของรูปแบบใหม่ หากมีอยู่แล้ว)
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
ยกเว้นคำสั่งฟักอื่น ๆ ด้วย:
# 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
ติดตั้งส่วนขยายที่แนะนำ
กำหนดค่าฟักเพื่อสร้าง env เสมือนในโฟลเดอร์โครงการ
hatch config set dirs.env.virtual .env
หลังจากนั้น ให้สร้างสภาพแวดล้อมหลามทั้งหมดที่จำเป็นโดยการรัน hatch -e all run tests
สุดท้าย กำหนดค่า vscode เพื่อใช้หนึ่งในสภาพแวดล้อมที่เลือก: cmd + shift + p
-> python: Select Interpreter
-> เลือกหนึ่งในโฟลเดอร์ใน ./.env
ไลบรารี kagglehub ได้กำหนดค่าการบันทึกอัตโนมัติซึ่งจัดเก็บไว้ในโฟลเดอร์บันทึก ปลายทางบันทึกได้รับการแก้ไขผ่าน os.path.expanduser
ตารางด้านล่างประกอบด้วยตำแหน่งที่เป็นไปได้:
ระบบปฏิบัติการ | เส้นทางบันทึก |
---|---|
OSX | /user/$USERNAME/.kaggle/logs/kagglehub.log |
ลินุกซ์ | ~/.kaggle/logs/kagglehub.log |
หน้าต่าง | C:Users%USERNAME%.kagglelogskagglehub.log |
โปรดรวมบันทึกเพื่อช่วยแก้ไขปัญหา