--- id: webdataset version: "1.0.2" license: BSD-3-Clause license_treatment: permissive maintenance: aging --- # webdataset — High performance storage and I/O for deep learning and data processing. License: permissive · Maintenance: aging · Downloads: 2.9M/mo ## What it is and what it does WebDataset is a PyTorch IterableDataset implementation designed for high-throughput streaming of large training datasets from tar-based shards. It enables purely sequential I/O pipelines, which is critical for achieving high disk and network throughput when training deep learning models at scale. The format stores related files (e.g., images and metadata) together by shared basename within tar archives, and shards are numbered and accessed via brace notation (e.g., `data-{000000..012345}.tar`). This approach works with local storage, cloud object stores, and concatenated MsgPack/CBOR sources. The library provides both a concise "fluid" interface (recommended for most users) and a lower-level "pipeline" interface for explicit control. It integrates seamlessly with PyTorch's DataLoader for parallel preprocessing and works with TensorFlow and JAX. Key features include no requirement for dataset metadata, instant startup, optional local caching, and scalability from desktop to petascale datasets. Main limitations stem from IterableDataset being less common in PyTorch codebases and the complexity of achieving exactly balanced sample counts across nodes in distributed training. Use it for: - Stream large image classification datasets from cloud storage during training without downloading entire dataset locally. - Build multinode distributed training pipelines that read shards in parallel across compute nodes with shard resampling. - Preprocess and augment data on-the-fly using PyTorch DataLoader workers while reading sequentially from tar archives. - Convert existing tar-based datasets to WebDataset format for OCR, document processing, or other shard-to-shard transformations. - Fine-tune large language models using text datasets stored in WebDataset format with minimal latency. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. WebDataset reads and streams large-scale training data from tar-based shards using sequential I/O, compatible with PyTorch's IterableDataset and usable with PyTorch, TensorFlow, and JAX. Yes, with conditions. Install if you are building large-scale deep learning pipelines that benefit from sequential I/O and cloud storage integration. The low install friction and permissive license are favorable. However, the aging maintenance status (421 days since last release) and alpha development status mean you should verify that the library's behavior matches your exact use case and multinode requirements before committing to production. No known vulnerabilities. ## Install pip install webdataset uv add webdataset poetry add webdataset ## Installing webdataset Before you install: Low install friction with only three runtime dependencies (braceexpand, numpy, pyyaml). Maintenance status is aging—last release was 421 days ago, though the repository remains active with 3161 stars and a recent commit on 2026-02-09. License in practice: BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; attribution required. Quickstart: import webdataset as wds url = "https://storage.googleapis.com/webdataset/testdata/publaynet-train-{000000..000009}.tar" dataset = wds.WebDataset(url).shuffle(10).decode("pil").to_tuple("png", "json") for image, json_data in dataset: break Requires PyTorch or a mock IterableDataset implementation; Python >= 3.10. Verify before relying: - Exact performance gains (3x-10x sequential vs. random access) claimed in description need independent validation. - Shard resampling behavior and sample balancing across compute nodes in multinode setups not detailed in excerpt. - Security mode limitations and threat model scope beyond disabling pipe:/file: protocols and pickle decoding. ## Package facts - License: BSD-3-Clause (permissive) - Python support: supports_current - Install friction: low - Maintenance: aging - Downloads: 2.9M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags pytorch iterable dataset tar shards, sequential io deep learning data loading, cloud storage training data streaming, large scale dataset pipeline, tar archive data loader, distributed training data access, high performance sequential reads, distributed-training, sequential-io, cloud-data [View on SkillFed](https://skillfed.io/packages/webdataset) · [View on PyPI](https://pypi.org/project/webdataset/)