Hub documentation
Tải xuống các bộ dữ liệu
Tải xuống các bộ dữ liệu
Các thư viện tích hợp
Nếu một dataset trên Hub được liên kết với một thư viện được hỗ trợ, việc tải dataset có thể được thực hiện chỉ với vài dòng. Để biết thông tin về cách truy cập dataset, bạn có thể nhấp vào nút “Use this dataset” trên trang dataset để xem cách thực hiện. Ví dụ, samsum cho thấy cách thực hiện bằng datasets bên dưới.


Sử dụng Thư viện Khách hàng Hugging Face
Bạn có thể sử dụng thư viện huggingface_hub để tạo, xóa, cập nhật và truy xuất thông tin từ các repo. Ví dụ, để tải bộ dữ liệu HuggingFaceH4/ultrachat_200k từ dòng lệnh, hãy chạy
hf download HuggingFaceH4/ultrachat_200k --repo-type dataset
Xem tài liệu tải xuống của HF CLI để biết thêm thông tin.
Bạn cũng có thể tích hợp điều này vào thư viện của riêng mình! Ví dụ, bạn có thể nhanh chóng tải một tập dữ liệu CSV chỉ với vài dòng bằng Pandas.
from huggingface_hub import hf_hub_download
import pandas as pd
REPO_ID = "YOUR_REPO_ID"
FILENAME = "data.csv"
dataset = pd.read_csv(
hf_hub_download(repo_id=REPO_ID, filename=FILENAME, repo_type="dataset")
)Sử dụng Git
Vì tất cả các dataset trên Hub đều là các kho Git có hỗ trợ Xet, bạn có thể clone các dataset về máy cục bộ bằng cách cài đặt git-xet và chạy:
git xet install
git lfs install
git clone git@hf.co:datasets/<dataset ID> # example: git clone git@hf.co:datasets/allenai/c4Nếu bạn có quyền ghi vào kho dữ liệu cụ thể, bạn cũng sẽ có khả năng commit và push các bản sửa đổi vào bộ dữ liệu.
Thêm khóa SSH công khai của bạn vào cài đặt người dùng để đẩy các thay đổi và/hoặc truy cập các kho riêng tư.
Tải xuống nhanh hơn
Bạn có thể kiểm tra tốc độ tải xuống từ CDN của Hugging Face tại fast.hf.co. Trang này chạy một bài kiểm tra băng thông nhanh với máy chủ biên HF gần nhất, giúp bạn hiểu được thông lượng cơ bản của mình. Bạn cũng có thể đo tốc độ tải xuống từ terminal bằng tiện ích CLI hf-speedtest:
hf extensions install julien-c/hf-speedtest hf speedtest
Để chuyển dữ liệu nhanh hơn, Hub sử dụng backend lưu trữ Xet với khả năng đồng thời thích ứng, tự động điều chỉnh các luồng song song dựa trên điều kiện mạng. Xem Tải xuống nhanh hơn cho các model để biết chi tiết về các tùy chọn điều chỉnh như HF_XET_HIGH_PERFORMANCE=1.
Sử dụng hf-mount
Với các bộ dữ liệu lớn, bạn có thể gắn (mount) một kho (repo) như một hệ thống tệp cục bộ bằng hf-mount thay vì tải xuống toàn bộ kho. Các tệp được lấy theo kiểu lười (lazy) — chỉ những byte mà mã của bạn đọc mới đi qua mạng. Cách này hữu ích khi quy trình làm việc của bạn kỳ vọng các đường dẫn tệp cục bộ (ví dụ: tarfile, zipfile, imagefolder) thay vì các bộ lặp (iterator) Python.
brew install hf-mount hf-mount start repo datasets/stanfordnlp/imdb /tmp/imdb
Các kho (Repos) được gắn (mount) ở chế độ chỉ đọc. Xem Gắn như một Hệ thống tệp cục bộ để biết chi tiết cài đặt đầy đủ, các tùy chọn backend và bộ nhớ đệm.
Tải xuống sau proxy hoặc tường lửa
Nếu mạng của bạn hạn chế lưu lượng ra bên ngoài qua tường lửa hoặc proxy, việc tải xuống các bộ dữ liệu đòi hỏi nhiều hơn là chỉ huggingface.co. Nội dung tệp được cung cấp từ các tên máy chủ lưu trữ và CDN riêng biệt, và load_dataset / hf download sẽ thất bại nếu không thể truy cập được các tên máy chủ này, ngay cả khi huggingface.co đã được đưa vào danh sách cho phép.
Cho phép các tên máy chủ sau (đều qua HTTPS / cổng 443):
| Hostname | Mục đích |
|---|---|
huggingface.co | API của Hub, metadata và chuyển hướng tải xuống |
cas-server.xethub.hf.co | Các API giao thức Xet, tải xuống và tải lên (US) |
cas-server.xethub-eu.hf.co | API của giao thức Xet, tải xuống và tải lên (EU) |
transfer.xethub.hf.co | API tải xuống lưu trữ Xet (Hoa Kỳ) |
transfer.xethub-eu.hf.co | API tải xuống lưu trữ Xet (EU) |
us.aws.cdn.hf.co | CDN edge (Mỹ) |
us.gcp.cdn.hf.co | CDN edge (Mỹ) |
cdn-lfs-us-1.hf.co | LFS CDN (Mỹ) |
cdn-lfs-eu-1.hf.co | LFS CDN (EU) |
Tải xuống sẽ theo dõi các chuyển hướng HTTP từ
huggingface.cođến các tên máy chủ này, do đó chỉ cho phéphuggingface.colà chưa đủ. Một lỗiReadTimeoutError(thay vì lỗi kết nối) xảy ra giữa chừng quá trình tải xuống thường có nghĩa là kết nối ban đầu đã thành công nhưng một máy chủ lưu trữ hoặc CDN bị chặn.
Hành vi của wildcard phụ thuộc vào cách proxy của bạn khớp các tên miền. Nhiều proxy doanh nghiệp xử lý một mục trong danh sách cho phép như một phép khớp hậu tố bao phủ các tên miền con ở mọi độ sâu. Nếu proxy của bạn hoạt động như vậy, lựa chọn đơn giản nhất là thêm các hậu tố
hf.covàhuggingface.covào danh sách cho phép — chúng bao phủ mọi endpoint lưu trữ và CDN hiện tại cũng như trong tương lai.Nếu proxy của bạn chỉ hỗ trợ wildcard đơn nhãn (trong đó
*.hf.cokhớp vớicdn-lfs-us-1.hf.conhưng không khớp với các tên miền sâu hơn nhưus.aws.cdn.hf.cohoặccas-server.xethub.hf.co), hãy thêm các tên máy chủ tường minh từ bảng trên vào danh sách cho phép. Lưu ý rằng*.xethub.hf.cokhông bao gồm các máy chủ EU dướixethub-eu.hf.co, và*.cdn.hf.cokhông bao gồm các tên miền hai nhãnus.aws.cdn.hf.co/us.gcp.cdn.hf.co.
Các tên máy chủ này có thể thay đổi khi hạ tầng lưu trữ và CDN của chúng tôi phát triển. Nếu chính sách bảo mật của bạn cho phép, hãy thêm các hậu tố
hf.covàhuggingface.co(tất cả các tên miền con) vào danh sách cho phép để các quy tắc của bạn không bị lỗi khi một điểm cuối cụ thể thay đổi.
Danh sách có thể đọc được bằng máy
Các tên máy chủ ở trên cũng được công bố dưới dạng JSON tại https://huggingface.co/.well-known/meta.json,
do đó bạn có thể tạo các quy tắc proxy hoặc tường lửa từ tệp này thay vì sao chép bảng thủ công.
Update on GitHubTệp này thay đổi khi các endpoint được thêm vào và xóa đi. Hãy lấy tệp khi bạn xây dựng các quy tắc của mình thay vì cố định một bản sao.