Datasets documentation

Các lớp Builder

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v4.8.4).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Các lớp Builder

Nhà xây dựng

🤗 Datasets dựa vào hai lớp chính trong quá trình xây dựng bộ dữ liệu: DatasetBuilder và BuilderConfig.

lớp datasets.DatasetBuilder

< >

( cache_dir: typing.Optional[str] = Nonedataset_name: typing.Optional[str] = Noneconfig_name: typing.Optional[str] = Nonehash: typing.Optional[str] = Nonebase_path: typing.Optional[str] = Noneinfo: typing.Optional[datasets.info.DatasetInfo] = Nonefeatures: typing.Optional[datasets.features.features.Features] = Nonetoken: typing.Union[bool, str, NoneType] = Nonerepo_id: typing.Optional[str] = Nonedata_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = Nonedata_dir: typing.Optional[str] = Nonestorage_options: typing.Optional[dict] = Nonewriter_batch_size: typing.Optional[int] = Noneconfig_id: typing.Optional[str] = None**config_kwargs )

Tham số

  • cache_dir (str, tùy chọn) — Thư mục để lưu trữ bộ nhớ đệm dữ liệu. Mặc định là "~/.cache/huggingface/datasets".
  • dataset_name (str, tùy chọn) — Tên của bộ dữ liệu, nếu khác với tên builder. Hữu ích cho các builder đóng gói như csv, imagefolder, audiofolder, v.v. để phản ánh sự khác biệt giữa các bộ dữ liệu sử dụng cùng một builder đóng gói.
  • config_name (str, tuỳ chọn) — Tên của cấu hình bộ dữ liệu. Nó ảnh hưởng đến dữ liệu được tạo trên đĩa. Các cấu hình khác nhau sẽ có các thư mục con và phiên bản riêng. Nếu không được cung cấp, cấu hình mặc định sẽ được sử dụng (nếu có).

    Được thêm vào 2.3.0

    Tham số name đã được đổi tên thành config_name.

  • hash (str, tuỳ chọn) — Hash đặc thù cho mã của dataset builder. Được dùng để cập nhật thư mục cache khi mã của dataset builder được cập nhật (để tránh tái sử dụng dữ liệu cũ). Thư mục cache điển hình (được định nghĩa trong self._relative_data_dir) là name/version/hash/.
  • base_path (str, tùy chọn) — Đường dẫn cơ sở cho các đường dẫn tương đối được sử dụng để tải xuống tệp. Đây có thể là một URL từ xa.
  • features (Features, tùy chọn) — Các kiểu Features để sử dụng với bộ dữ liệu này. Nó có thể được dùng để thay đổi các kiểu Features của một bộ dữ liệu, chẳng hạn.
  • token (str hoặc bool, tùy chọn) — Chuỗi hoặc giá trị boolean dùng làm Bearer token cho các tệp từ xa trên Datasets Hub. Nếu True, sẽ lấy token từ "~/.huggingface".
  • repo_id (str, tùy chọn) — ID của kho dữ liệu. Được dùng để phân biệt các builder có cùng tên nhưng không thuộc cùng một namespace, ví dụ như repo ID “rajpurkar/squad” và “lhoestq/squad”. Trong trường hợp sau, tên builder sẽ là “lhoestq___squad”.
  • data_files (str hoặc Sequence hoặc Mapping, tùy chọn) — Đường dẫn đến tệp dữ liệu nguồn. Dành cho các builder như “csv” hoặc “json” mà người dùng cần chỉ định tệp dữ liệu. Chúng có thể là tệp cục bộ hoặc tệp từ xa. Để tiện lợi, bạn có thể sử dụng DataFilesDict.
  • data_dir (str, tùy chọn) — Đường dẫn đến thư mục chứa tệp dữ liệu nguồn. Chỉ sử dụng khi data_files không được truyền, trong trường hợp đó nó tương đương với việc truyền os.path.join(data_dir, "**") làm data_files. Đối với các builder yêu cầu tải xuống thủ công, đây phải là đường dẫn đến thư mục cục bộ chứa dữ liệu đã được tải xuống thủ công.
  • storage_options (dict, tùy chọn) — Các cặp khóa/giá trị được truyền đến hệ thống tệp của bộ dữ liệu, nếu có.
  • writer_batch_size (int, tùy chọn) — Kích thước batch được sử dụng bởi ArrowWriter. Nó xác định số lượng mẫu được giữ trong bộ nhớ trước khi ghi chúng và cũng là độ dài của các chunk arrow. None có nghĩa là ArrowWriter sẽ sử dụng giá trị mặc định của nó.
  • **config_kwargs (các đối số từ khóa bổ sung) — Các đối số từ khóa được truyền đến lớp cấu hình builder tương ứng, được đặt trên thuộc tính lớp DatasetBuilder.BUILDER_CONFIG_CLASS. Lớp cấu hình builder là BuilderConfig hoặc một lớp con của nó.

Lớp trừu tượng cơ sở cho tất cả các bộ dữ liệu.

DatasetBuilder có 3 phương thức chính:

Một số DatasetBuilder cung cấp nhiều biến thể của bộ dữ liệu bằng cách định nghĩa một lớp con của BuilderConfig và chấp nhận một đối tượng cấu hình (hoặc tên) khi khởi tạo. Các bộ dữ liệu có thể cấu hình sẽ hiển thị một tập hợp các cấu hình được định nghĩa trước trong DatasetBuilder.builder_configs().

as_dataset

< >

( split: typing.Union[str, datasets.splits.Split, list[str], list[datasets.splits.Split], NoneType] = Nonein_memory = False )

Tham số

  • split (datasets.Split) — Tập con của dữ liệu cần trả về.
  • verification_mode (VerificationMode hoặc str, mặc định là BASIC_CHECKS) — Chế độ xác minh xác định các kiểm tra cần chạy trên thông tin bộ dữ liệu đã tải/xử lý (checksum/kích thước/splits/…).

    Được thêm vào 2.9.1

  • in_memory (bool, mặc định là False) — Có sao chép dữ liệu trong bộ nhớ hay không.

Trả về một Dataset cho phần chia (split) được chỉ định.

Ví dụ:

>>> from datasets import load_dataset_builder
>>> builder = load_dataset_builder('cornell-movie-review-data/rotten_tomatoes')
>>> builder.download_and_prepare()
>>> ds = builder.as_dataset(split='train')
>>> ds
Dataset({
    features: ['text', 'label'],
    num_rows: 8530
})

download_and_prepare

< >

( output_dir: typing.Optional[str] = Nonedownload_config: typing.Optional[datasets.download.download_config.DownloadConfig] = Nonedownload_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = Noneverification_mode: typing.Union[datasets.utils.info_utils.VerificationMode, str, NoneType] = Nonedl_manager: typing.Optional[datasets.download.download_manager.DownloadManager] = Nonebase_path: typing.Optional[str] = Nonefile_format: str = 'arrow'max_shard_size: typing.Union[str, int, NoneType] = Nonenum_proc: typing.Optional[int] = Nonestorage_options: typing.Optional[dict] = None**download_and_prepare_kwargs )

Tham số

  • output_dir (str, tuỳ chọn) — Thư mục đầu ra cho bộ dữ liệu. Mặc định là cache_dir, của builder này, nằm trong ~/.cache/huggingface/datasets theo mặc định.

    Được thêm vào 2.5.0

  • download_config (DownloadConfig, tùy chọn) — Các tham số cấu hình tải xuống cụ thể.
  • download_mode (DownloadMode hoặc str, tùy chọn) — Chọn chế độ tải xuống/tạo, mặc định là REUSE_DATASET_IF_EXISTS.
  • verification_mode (VerificationMode hoặc str, mặc định là BASIC_CHECKS) — Chế độ xác minh xác định các kiểm tra cần chạy trên thông tin bộ dữ liệu đã tải/xử lý (checksums/size/splits/…).

    Được thêm vào 2.9.1

  • dl_manager (DownloadManager, tùy chọn) — DownloadManger cụ thể để sử dụng.
  • base_path (str, tùy chọn) — Đường dẫn cơ sở cho các đường dẫn tương đối được sử dụng để tải xuống tệp. Đây có thể là một url từ xa. Nếu không được chỉ định, giá trị của thuộc tính base_path (self.base_path) sẽ được sử dụng thay thế.
  • file_format (str, tuỳ chọn) — Định dạng của các tệp dữ liệu mà tập dữ liệu sẽ được ghi vào. Các định dạng được hỗ trợ: “arrow”, “parquet”. Mặc định là định dạng “arrow”. Nếu định dạng là “parquet”, thì dữ liệu hình ảnh và âm thanh sẽ được nhúng vào các tệp Parquet thay vì trỏ đến các tệp cục bộ.

    Được thêm vào 2.5.0

  • max_shard_size (Union[str, int], tuỳ chọn) — Số byte tối đa được ghi cho mỗi shard, mặc định là “500MB”. Kích thước dựa trên kích thước dữ liệu chưa nén, nên trên thực tế các tệp shard của bạn có thể nhỏ hơn max_shard_size nhờ nén Parquet, chẳng hạn.

    Được thêm vào 2.5.0

  • num_proc (int, tùy chọn, mặc định là None) — Số lượng tiến trình khi tải xuống và tạo dataset cục bộ. Multiprocessing bị tắt theo mặc định.

    Được thêm vào 2.7.0

  • storage_options (dict, tùy chọn) — Các cặp khóa/giá trị được truyền đến hệ thống tệp lưu trữ cache, nếu có.

    Được thêm vào 2.5.0

  • **download_and_prepare_kwargs (các tham số từ khóa bổ sung) — Các tham số từ khóa.

Tải xuống và chuẩn bị bộ dữ liệu để đọc.

Ví dụ:

Tải xuống và chuẩn bị bộ dữ liệu dưới dạng tệp Arrow có thể được nạp như một Dataset bằng builder.as_dataset():

>>> from datasets import load_dataset_builder
>>> builder = load_dataset_builder("cornell-movie-review-data/rotten_tomatoes")
>>> builder.download_and_prepare()

Tải xuống và chuẩn bị bộ dữ liệu dưới dạng các tệp Parquet phân mảnh cục bộ:

>>> from datasets import load_dataset_builder
>>> builder = load_dataset_builder("cornell-movie-review-data/rotten_tomatoes")
>>> builder.download_and_prepare("./output_dir", file_format="parquet")

Tải xuống và chuẩn bị bộ dữ liệu dưới dạng các tệp Parquet phân mảnh trong lưu trữ đám mây:

>>> from datasets import load_dataset_builder
>>> storage_options = {"key": aws_access_key_id, "secret": aws_secret_access_key}
>>> builder = load_dataset_builder("cornell-movie-review-data/rotten_tomatoes")
>>> builder.download_and_prepare("s3://my-bucket/my_rotten_tomatoes", storage_options=storage_options, file_format="parquet")

get_imported_module_dir

< >

( )

Trả về đường dẫn của module của lớp này hoặc lớp con.

lớp datasets.GeneratorBasedBuilder

< >

( cache_dir: typing.Optional[str] = Nonedataset_name: typing.Optional[str] = Noneconfig_name: typing.Optional[str] = Nonehash: typing.Optional[str] = Nonebase_path: typing.Optional[str] = Noneinfo: typing.Optional[datasets.info.DatasetInfo] = Nonefeatures: typing.Optional[datasets.features.features.Features] = Nonetoken: typing.Union[bool, str, NoneType] = Nonerepo_id: typing.Optional[str] = Nonedata_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = Nonedata_dir: typing.Optional[str] = Nonestorage_options: typing.Optional[dict] = Nonewriter_batch_size: typing.Optional[int] = Noneconfig_id: typing.Optional[str] = None**config_kwargs )

Lớp cơ sở cho các bộ dữ liệu có tạo dữ liệu dựa trên các bộ tạo dict.

GeneratorBasedBuilder là một lớp tiện ích giúp trừu tượng hóa phần lớn việc ghi và đọc dữ liệu của DatasetBuilder. Lớp này kỳ vọng các lớp con sẽ triển khai các generator của các từ điển đặc trưng trên các phần chia của dataset (_split_generators). Xem docstring của phương thức để biết chi tiết.

lớp datasets.ArrowBasedBuilder

< >

( cache_dir: typing.Optional[str] = Nonedataset_name: typing.Optional[str] = Noneconfig_name: typing.Optional[str] = Nonehash: typing.Optional[str] = Nonebase_path: typing.Optional[str] = Noneinfo: typing.Optional[datasets.info.DatasetInfo] = Nonefeatures: typing.Optional[datasets.features.features.Features] = Nonetoken: typing.Union[bool, str, NoneType] = Nonerepo_id: typing.Optional[str] = Nonedata_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = Nonedata_dir: typing.Optional[str] = Nonestorage_options: typing.Optional[dict] = Nonewriter_batch_size: typing.Optional[int] = Noneconfig_id: typing.Optional[str] = None**config_kwargs )

Lớp cơ sở cho các bộ dữ liệu có tạo dữ liệu dựa trên các hàm nạp Arrow (CSV/JSON/Parquet).

lớp datasets.BuilderConfig

< >

( name: str = 'default'version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0data_dir: typing.Optional[str] = Nonedata_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = Nonedescription: typing.Optional[str] = None )

Tham số

  • name (str, mặc định là default) — Tên của cấu hình.
  • version (Version hoặc str, mặc định là 0.0.0) — Phiên bản của cấu hình.
  • data_dir (str, tùy chọn) — Đường dẫn đến thư mục chứa dữ liệu nguồn.
  • data_files (str hoặc Sequence hoặc Mapping, tùy chọn) — Đường dẫn đến tệp dữ liệu nguồn.
  • description (str, tùy chọn) — Mô tả bằng ngôn ngữ tự nhiên về cấu hình.

Lớp cơ sở cho cấu hình dữ liệu của DatasetBuilder.

Các lớp con của DatasetBuilder có các tùy chọn cấu hình dữ liệu nên kế thừa từ BuilderConfig và thêm các thuộc tính riêng của chúng.

create_config_id

< >

( config_kwargs: dictcustom_features: typing.Optional[datasets.features.features.Features] = None )

ID cấu hình được sử dụng để xây dựng thư mục cache. Mặc định, nó bằng với tên cấu hình. Tuy nhiên, tên của một cấu hình không đủ để có một định danh duy nhất cho bộ dữ liệu đang được tạo vì nó không tính đến:

  • các tham số cấu hình (config kwargs) có thể được sử dụng để ghi đè các thuộc tính
  • các tính năng tùy chỉnh được sử dụng để viết bộ dữ liệu
  • the data_files cho các bộ dữ liệu json/text/csv/pandas

Do đó, id cấu hình chỉ là tên cấu hình với một hậu tố tùy chọn dựa trên các yếu tố này.

Tải xuống

lớp datasets.DownloadManager

< >

( dataset_name: typing.Optional[str] = Nonedata_dir: typing.Optional[str] = Nonedownload_config: typing.Optional[datasets.download.download_config.DownloadConfig] = Nonebase_path: typing.Optional[str] = Nonerecord_checksums = False )

tải xuống

< >

( url_or_urls ) → str or list or dict

Tham số

  • url_or_urls (str hoặc list hoặc dict) — URL hoặc list hoặc dict chứa các URL cần tải xuống. Mỗi URL là một str.

Trả về

str hoặc list hoặc dict

Các đường dẫn đã tải xuống khớp với đầu vào url_or_urls được cung cấp.

Tải URL đã cho.

Mặc định, chỉ một tiến trình được sử dụng để tải xuống. Truyền download_config.num_proc tùy chỉnh để thay đổi hành vi này.

Ví dụ:

>>> downloaded_files = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')

tải xuống và giải nén

< >

( url_or_urls ) → extracted_path(s)

Tham số

  • url_or_urls (str hoặc list hoặc dict) — URL hoặc list hoặc dict chứa các URL cần tải xuống và giải nén. Mỗi URL là một str.

Trả về

extracted_path(s)

str, các đường dẫn đã trích xuất của URL được cho.

Tải xuống và giải nén url_or_urls đã cho.

Tương đương gần đúng với:

extracted_paths = dl_manager.extract(dl_manager.download(url_or_urls))

extract

< >

( path_or_paths ) → extracted_path(s)

Tham số

  • path_or_paths (path hoặc list hoặc dict) — Đường dẫn của tệp cần trích xuất. Mỗi đường dẫn là một str.

Trả về

extracted_path(s)

str, Các đường dẫn đã trích xuất khớp với path_or_paths được cho.

Trích xuất đường dẫn đã cho.

Ví dụ:

>>> downloaded_files = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')
>>> extracted_files = dl_manager.extract(downloaded_files)

iter_archive

< >

( path_or_buf: typing.Union[str, _io.BufferedReader] ) → tuple[str, io.BufferedReader]

Tham số

  • path_or_buf (str hoặc io.BufferedReader) — Đường dẫn đến tệp lưu trữ hoặc đối tượng tệp nhị phân của tệp lưu trữ.

Trị số

tuple[str, io.BufferedReader]

2-tuple (path_within_archive, file_object). Đối tượng tệp được mở ở chế độ nhị phân.

Lặp qua các tệp trong một tệp lưu trữ.

Ví dụ:

>>> archive = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')
>>> files = dl_manager.iter_archive(archive)

iter_files

< >

( paths: typing.Union[str, list[str]] ) → str

Tham số

  • paths (str hoặc list của str) — Đường dẫn gốc.

Trị số

str

Đường dẫn tệp.

Lặp qua các đường dẫn tệp.

Ví dụ:

>>> files = dl_manager.download_and_extract('https://huggingface.co/datasets/AI-Lab-Makerere/beans/resolve/main/data/train.zip')
>>> files = dl_manager.iter_files(files)

lớp datasets.StreamingDownloadManager

< >

( dataset_name: typing.Optional[str] = Nonedata_dir: typing.Optional[str] = Nonedownload_config: typing.Optional[datasets.download.download_config.DownloadConfig] = Nonebase_path: typing.Optional[str] = None )

Trình quản lý tải xuống sử dụng ký tự phân cách ”::” để điều hướng qua các tệp lưu trữ nén (có thể ở xa). Khác với DownloadManager thông thường, các phương thức download và extract không thực sự tải xuống hay giải nén dữ liệu, mà thay vào đó chúng trả về đường dẫn hoặc url có thể được mở bằng hàm xopen, vốn mở rộng hàm open tích hợp để truyền dữ liệu từ các tệp ở xa.

tải xuống

< >

( url_or_urls ) → url(s)

Tham số

  • url_or_urls (str hoặc list hoặc dict) — URL của các tệp để stream dữ liệu. Mỗi url là một str.

Trả về

url(s)

(str hoặc list hoặc dict), URL(s) để stream dữ liệu từ các URL đầu vào khớp với url_or_urls đã cho.

Chuẩn hóa URL của các tệp để stream dữ liệu từ đó. Đây là phiên bản lazy của DownloadManager.download dành cho streaming.

Ví dụ:

>>> downloaded_files = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')

tải xuống và giải nén

< >

( url_or_urls ) → url(s)

Tham số

  • url_or_urls (str hoặc list hoặc dict) — URL để lấy dữ liệu từ đó. Mỗi url là một str.

Trả về

url(s)

(str hoặc list hoặc dict), URL để stream dữ liệu từ các URL khớp với url_or_urls đã cho.

Chuẩn bị url_or_urls đã cho để phát trực tiếp (thêm giao thức trích xuất).

Đây là phiên bản lazy của DownloadManager.download_and_extract dành cho streaming.

Tương đương với:

urls = dl_manager.extract(dl_manager.download(url_or_urls))

extract

< >

( url_or_urls ) → url(s)

Tham số

  • url_or_urls (str hoặc list hoặc dict) — URL của các tệp để stream dữ liệu. Mỗi url là một str.

Trả về

url(s)

(str hoặc list hoặc dict), URL để stream dữ liệu từ các URL khớp với url_or_urls đã cho.

Thêm giao thức trích xuất cho các URL đã cho để phát trực tiếp.

Đây là phiên bản lazy của DownloadManager.extract để streaming.

Ví dụ:

>>> downloaded_files = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')
>>> extracted_files = dl_manager.extract(downloaded_files)

iter_archive

< >

( urlpath_or_buf: typing.Union[str, _io.BufferedReader] ) → tuple[str, io.BufferedReader]

Tham số

  • urlpath_or_buf (str hoặc io.BufferedReader) — Đường dẫn tệp lưu trữ hoặc đối tượng tệp nhị phân của tệp lưu trữ.

Trị số

tuple[str, io.BufferedReader]

2-tuple (path_within_archive, file_object). Đối tượng tệp được mở ở chế độ nhị phân.

Lặp qua các tệp trong một tệp lưu trữ.

Ví dụ:

>>> archive = dl_manager.download('https://storage.googleapis.com/seldon-datasets/sentence_polarity_v1/rt-polaritydata.tar.gz')
>>> files = dl_manager.iter_archive(archive)

iter_files

< >

( urlpaths: typing.Union[str, list[str]] ) → str

Tham số

  • urlpaths (str hoặc list của str) — Đường dẫn gốc.

Trị số

str

Đường dẫn URL của tệp.

Lặp qua các tệp.

Ví dụ:

>>> files = dl_manager.download_and_extract('https://huggingface.co/datasets/AI-Lab-Makerere/beans/resolve/main/data/train.zip')
>>> files = dl_manager.iter_files(files)

lớp datasets.DownloadConfig

< >

( cache_dir: typing.Union[str, pathlib.Path, NoneType] = Noneforce_download: bool = Falseresume_download: bool = Falselocal_files_only: bool = Falseproxies: typing.Optional[dict] = Noneuser_agent: typing.Optional[str] = Noneextract_compressed_file: bool = Falseforce_extract: bool = Falsedelete_extracted: bool = Falseextract_on_the_fly: bool = Falseuse_etag: bool = Truenum_proc: typing.Optional[int] = Nonemax_retries: int = 1token: typing.Union[str, bool, NoneType] = Nonestorage_options: dict = <factory>download_desc: typing.Optional[str] = Nonedisable_tqdm: bool = False )

Tham số

  • cache_dir (str hoặc Path, tùy chọn) — Chỉ định một thư mục cache để lưu tệp (ghi đè thư mục cache mặc định).
  • force_download (bool, mặc định là False) — Nếu True, tải lại tệp ngay cả khi nó đã được lưu trong thư mục cache.
  • resume_download (bool, mặc định là False) — Nếu True, tiếp tục tải xuống nếu tìm thấy tệp nhận chưa đầy đủ.
  • proxies (dict, tùy chọn) — Đã bị hủy bỏ và bị bỏ qua. Hãy đặt các biến môi trường HTTP_PROXY / HTTPS_PROXY hoặc cấu hình client HTTP bằng huggingface_hub.set_client_factory thay thế.
  • user_agent (str, tùy chọn) — Chuỗi hoặc dict tùy chọn sẽ được thêm vào user-agent trong các yêu cầu từ xa.
  • extract_compressed_file (bool, mặc định là False) — Nếu True và đường dẫn trỏ đến tệp zip hoặc tar, thì giải nén tệp nén vào một thư mục nằm cùng vị trí với tệp lưu trữ.
  • force_extract (bool, mặc định là False) — Nếu True khi extract_compressed_file là True và tệp nén đã được giải nén trước đó, hãy giải nén lại tệp nén và ghi đè lên thư mục mà nó đã được giải nén.
  • delete_extracted (bool, mặc định là False) — Có nên xóa (hay giữ lại) các tệp đã trích xuất hay không.
  • extract_on_the_fly (bool, mặc định là False) — Nếu True, sẽ giải nén các tệp nén trong khi chúng đang được đọc.
  • use_etag (bool, mặc định là True) — Có sử dụng tiêu đề phản hồi HTTP ETag để xác thực các tệp được lưu trong bộ nhớ đệm hay không.
  • num_proc (int, tùy chọn) — Số lượng tiến trình được khởi chạy để tải xuống các tệp song song.
  • max_retries (int, mặc định là 1) — Số lần thử lại một yêu cầu HTTP nếu nó thất bại.
  • token (str hoặc bool, tùy chọn) — Chuỗi hoặc giá trị boolean tùy chọn để sử dụng làm Bearer token cho các tệp từ xa trên Datasets Hub. Nếu True, hoặc không được chỉ định, sẽ lấy token từ ~/.huggingface.
  • storage_options (dict, tùy chọn) — Các cặp khóa/giá trị được truyền đến hệ thống tệp của bộ dữ liệu, nếu có.
  • download_desc (str, tùy chọn) — Mô tả được hiển thị cùng với thanh tiến trình trong khi tải xuống các tệp.
  • disable_tqdm (bool, mặc định là False) — Có tắt thanh tiến trình tải xuống từng tệp riêng lẻ hay không

Cấu hình cho trình quản lý đường dẫn được lưu trữ của chúng tôi.

lớp datasets.DownloadMode

< >

( valuenames = Nonemodule = Nonequalname = Nonetype = Nonestart = 1 )

Enum cho biết cách xử lý các tệp tải xuống và dữ liệu đã có sẵn.

Chế độ mặc định là REUSE_DATASET_IF_EXISTS, sẽ tái sử dụng cả bản tải thô và bộ dữ liệu đã chuẩn bị nếu chúng tồn tại.

Các chế độ sinh:

Tải xuốngBộ dữ liệu
REUSE_DATASET_IF_EXISTS (mặc định)Tái sử dụngTái sử dụng
REUSE_CACHE_IF_EXISTSTái sử dụngMới
FORCE_REDOWNLOADMớiMới

Xác minh

lớp datasets.VerificationMode

< >

( valuenames = Nonemodule = Nonequalname = Nonetype = Nonestart = 1 )

Enum chỉ định các kiểm tra xác minh cần chạy.

Chế độ mặc định là BASIC_CHECKS, chỉ thực hiện các kiểm tra cơ bản để tránh làm chậm quá trình tạo/tải xuống bộ dữ liệu lần đầu tiên.

Các chế độ xác minh:

Kiểm tra xác minh
ALL_CHECKSKiểm tra chia tách và tính hợp lệ (số lượng tệp, mã kiểm tra) của các tệp đã tải xuống
BASIC_CHECKS (mặc định)Tương tự như ALL_CHECKS nhưng không kiểm tra các tệp đã tải xuống
NO_CHECKSKhông

Các phần chia

lớp datasets.SplitGenerator

< >

( name: strgen_kwargs: dict = <factory> )

Tham số

  • name (str) — Tên của Split mà trình tạo sẽ tạo ra các ví dụ.
  • **gen_kwargs (các tham số từ khóa bổ sung) — Các tham số từ khóa để chuyển tiếp đến phương thức DatasetBuilder._generate_examples của builder.

Định nghĩa thông tin chia cho trình tạo.

Điều này nên được sử dụng làm giá trị trả về của GeneratorBasedBuilder._split_generators. Xem GeneratorBasedBuilder._split_generators để biết thêm thông tin và ví dụ sử dụng.

Ví dụ:

>>> datasets.SplitGenerator(
...     name=datasets.Split.TRAIN,
...     gen_kwargs={"split_key": "train", "files": dl_manager.download_and_extract(url)},
... )

lớp datasets.Split

< >

( name )

Enum cho các phần chia của tập dữ liệu.

Các tập dữ liệu thường được chia thành các tập con khác nhau để sử dụng ở các giai đoạn huấn luyện và đánh giá khác nhau.

  • TRAIN: dữ liệu huấn luyện.
  • VALIDATION: dữ liệu kiểm định. Nếu có, dữ liệu này thường được dùng làm dữ liệu đánh giá trong quá trình tinh chỉnh mô hình (ví dụ: thay đổi siêu tham số, kiến trúc mô hình, v.v.).
  • TEST: dữ liệu kiểm thử. Đây là dữ liệu dùng để báo cáo các chỉ số. Thông thường, bạn không nên sử dụng dữ liệu này trong quá trình lặp lại mô hình vì có thể gây quá khớp.
  • ALL: tập hợp của tất cả các phần chia bộ dữ liệu đã được định nghĩa.

Tất cả các split, bao gồm cả compositions, kế thừa từ datasets.SplitBase.

Xem hướng dẫn về các phần chia để biết thêm thông tin.

Ví dụ:

>>> datasets.SplitGenerator(
...     name=datasets.Split.TRAIN,
...     gen_kwargs={"split_key": "train", "files": dl_manager.download_and extract(url)},
... ),
... datasets.SplitGenerator(
...     name=datasets.Split.VALIDATION,
...     gen_kwargs={"split_key": "validation", "files": dl_manager.download_and extract(url)},
... ),
... datasets.SplitGenerator(
...     name=datasets.Split.TEST,
...     gen_kwargs={"split_key": "test", "files": dl_manager.download_and extract(url)},
... )

lớp datasets.NamedSplit

< >

( name: str )

Mô tả tương ứng với một phần chia có tên (train, test, …).

Ví dụ:

Mỗi descriptor có thể được kết hợp với các descriptor khác bằng phép cộng hoặc slice:

split = datasets.Split.TRAIN.subsplit(datasets.percent[0:25]) + datasets.Split.TEST

Kết quả tách sẽ tương ứng với 25% của phần tách train được gộp với 100% của phần tách test.

Không thể thêm cùng một split hai lần, do đó dòng sau sẽ thất bại:

split = (
        datasets.Split.TRAIN.subsplit(datasets.percent[:25]) +
        datasets.Split.TRAIN.subsplit(datasets.percent[75:])
)  # Error
split = datasets.Split.TEST + datasets.Split.ALL  # Error

Các lát cắt chỉ có thể được áp dụng một lần. Vì vậy, các ví dụ sau là hợp lệ:

split = (
        datasets.Split.TRAIN.subsplit(datasets.percent[:25]) +
        datasets.Split.TEST.subsplit(datasets.percent[:50])
)
split = (datasets.Split.TRAIN + datasets.Split.TEST).subsplit(datasets.percent[:50])

Nhưng điều này không hợp lệ:

train = datasets.Split.TRAIN
test = datasets.Split.TEST
split = train.subsplit(datasets.percent[:25]).subsplit(datasets.percent[:25])
split = (train.subsplit(datasets.percent[:25]) + test).subsplit(datasets.percent[:50])

lớp datasets.NamedSplitAll

< >

( )

Split tương ứng với tập hợp của tất cả các split dataset đã định nghĩa.

lớp datasets.ReadInstruction

< >

( split_namerounding = Nonefrom_ = Noneto = Noneunit = None )

Hướng dẫn đọc cho một tập dữ liệu.

Ví dụ:

# The following lines are equivalent:
ds = datasets.load_dataset('ylecun/mnist', split='test[:33%]')
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction.from_spec('test[:33%]'))
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction('test', to=33, unit='%'))
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction(
'test', from_=0, to=33, unit='%'))

# The following lines are equivalent:
ds = datasets.load_dataset('ylecun/mnist', split='test[:33%]+train[1:-1]')
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction.from_spec(
'test[:33%]+train[1:-1]'))
ds = datasets.load_dataset('ylecun/mnist', split=(
datasets.ReadInstruction('test', to=33, unit='%') +
datasets.ReadInstruction('train', from_=1, to=-1, unit='abs')))

# The following lines are equivalent:
ds = datasets.load_dataset('ylecun/mnist', split='test[:33%](pct1_dropremainder)')
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction.from_spec(
'test[:33%](pct1_dropremainder)'))
ds = datasets.load_dataset('ylecun/mnist', split=datasets.ReadInstruction(
'test', from_=0, to=33, unit='%', rounding="pct1_dropremainder"))

# 10-fold validation:
tests = datasets.load_dataset(
'ylecun/mnist',
[datasets.ReadInstruction('train', from_=k, to=k+10, unit='%')
for k in range(0, 100, 10)])
trains = datasets.load_dataset(
'ylecun/mnist',
[datasets.ReadInstruction('train', to=k, unit='%') + datasets.ReadInstruction('train', from_=k+10, unit='%')
for k in range(0, 100, 10)])

from_spec

< >

( spec )

Tham số

  • spec (str) — Các phần chia + lát cắt tùy chọn để đọc + làm tròn tùy chọn nếu phần trăm được dùng làm đơn vị lát cắt. Một lát cắt có thể được chỉ định, sử dụng số tuyệt đối (int) hoặc phần trăm (int).

Tạo một instance ReadInstruction từ một chuỗi spec.

Ví dụ:

test: test split.
test + validation: test split + validation split.
test[10:]: test split, minus its first 10 records.
test[:10%]: first 10% records of test split.
test[:20%](pct1_dropremainder): first 10% records, rounded with the pct1_dropremainder rounding.
test[:-5%]+train[40%:60%]: first 95% of test + middle 20% of train.

to_absolute

< >

( name2len )

Tham số

  • name2len (dict) — Gán tên phân chia cho số lượng ví dụ.

Dịch chỉ dẫn thành một danh sách các chỉ dẫn tuyệt đối.

Các chỉ dẫn tuyệt đối đó sau đó sẽ được cộng lại với nhau.

Phiên bản

lớp datasets.Version

< >

( version_str: strdescription: typing.Optional[str] = Nonemajor: typing.Union[str, int, NoneType] = Noneminor: typing.Union[str, int, NoneType] = Nonepatch: typing.Union[str, int, NoneType] = None )

Tham số

  • version_str (str) — Phiên bản của bộ dữ liệu.
  • description (str) — Mô tả những gì mới trong phiên bản này.
  • major (str) —
  • minor (str) —
  • patch (str) —

Phiên bản bộ dữ liệu MAJOR.MINOR.PATCH.

Ví dụ:

>>> VERSION = datasets.Version("1.0.0")
Update on GitHub