mosaicml-streaming
Streaming lets users create PyTorch compatible datasets that can be streamed from cloud-based object stores
Decision gist · record as of 2026-08-14
Yes, if you train on large datasets in cloud storage and need deterministic, distributed data loading. The active maintenance, low install friction, and PyTorch integration make it a solid choice. However, verify the license terms first (currently marked unclear in metadata), and confirm that the 18 runtime dependencies align with your environment. Not necessary if your data fits locally or if you use a different data pipeline framework.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python >=3.10 and torch installed.
- Cloud credentials (AWS, GCS, Azure, OCI) must be configured in your environment for remote access.
- Low friction: pure Python wheel with no compiled dependencies.
License · maintenance · safety
(unclear) — License treatment is unclear—no SPDX identifier or raw license text in metadata. Verify the actual license terms in the repository before adopting in proprietary or restricted-license contexts.
last release 2025-07-15 (395 days) · last repo commit 2026-06-25 · 1,545 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 928,673 downloads/mo, #4,707 on PyPI
Alternatives
Verify before relying
pip install mosaicml-streaming
from streaming import StreamingDataset
from torch.utils.data import DataLoader
dataset = StreamingDataset(local='/tmp/cache', remote='s3://bucket/data', shuffle=True)
loader = DataLoader(dataset, batch_size=32)
for batch in loader:
pass # train- Actual license terms and restrictions (metadata shows 'unclear' treatment)
- Whether all 18 runtime dependencies are truly required or optional/conditional
- Performance characteristics and throughput guarantees for different cloud providers
- Specific dataset mixing proportions and sampling behavior in production scenarios
What it is and what it does
StreamingDataset is a PyTorch data loader designed to efficiently fetch training data from cloud object storage on-demand, rather than downloading entire datasets upfront. It acts as a drop-in replacement for PyTorch's IterableDataset, integrating with AWS S3, Google Cloud Storage, Azure Blob Storage, OCI Object Storage, and S3-compatible services. The package handles data serialization in MDS (Mosaic Data Shard) format, CSV, TSV, or JSONL, with optional compression via zstd, Brotli, or snappy.
The core value proposition is enabling distributed multi-node training without requiring all data to be co-located with compute. It guarantees deterministic sample ordering across any number of GPUs, nodes, or workers—a feature that aids reproducibility and debugging. The package supports seamless mixing of multiple datasets via the Stream abstraction, allowing proportional or absolute sampling strategies. It is built for large-scale model training workflows where data volume and cloud infrastructure costs are primary concerns.
Use it for
- Train vision models on large image datasets stored in S3 or GCS without local disk staging.
- Stream multimodal data (text + images, video + captions) from cloud storage for foundation model pretraining.
- Mix multiple datasets on-the-fly during training with deterministic reproducibility across training runs.
- Distribute training across multiple nodes where each worker streams only the samples it needs, reducing network and storage bottlenecks.
- Convert and persist raw datasets into sharded MDS format for efficient repeated training runs.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you train on large datasets in cloud storage and need deterministic, distributed data loading.
The active maintenance, low install friction, and PyTorch integration make it a solid choice. However, verify the license terms first (currently marked unclear in metadata), and confirm that the 18 runtime dependencies align with your environment. Not necessary if your data fits locally or if you use a different data pipeline framework.
Install
mosaicml-streaming on PyPI
Before you install
Low friction: pure Python wheel with no compiled dependencies. Active maintenance (last commit 2026-06-25, 1545 stars). However, 18 runtime dependencies including torch, torchvision, and transformers mean a substantial environment footprint if not already present.
Requires Python >=3.10 and torch installed. Cloud credentials (AWS, GCS, Azure, OCI) must be configured in your environment for remote access.
License in practice
License treatment is unclear—no SPDX identifier or raw license text in metadata. Verify the actual license terms in the repository before adopting in proprietary or restricted-license contexts.
Quickstart
pip install mosaicml-streaming
from streaming import StreamingDataset
from torch.utils.data import DataLoader
dataset = StreamingDataset(local='/tmp/cache', remote='s3://bucket/data', shuffle=True)
loader = DataLoader(dataset, batch_size=32)
for batch in loader:
pass # train
Verify before relying
- Actual license terms and restrictions (metadata shows 'unclear' treatment)
- Whether all 18 runtime dependencies are truly required or optional/conditional
- Performance characteristics and throughput guarantees for different cloud providers
- Specific dataset mixing proportions and sampling behavior in production scenarios
Package facts
| License | Not declared unclear |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 18 packagesboto3Brotligoogle-cloud-storagematplotlibnumpyparamikopython-snappytorchtorchvisiontqdmtransformersxxhashzstdociazure-storage-blobazure-storage-file-datalakeazure-identitycatalogue |
| Maintenance | Actively maintained 395 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 928,673 / month, #4,707 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12 |
Evidence: mosaicml_streaming-0.13.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “cloud object store dataset”
- mosaicml-streamingStreams large training datasets from cloud storage (AWS S3, GCS,…
- nuscenes-devkitProvides tools to load, parse, and analyze the nuScenes autonomous…
- deeplakeDeep Lake is a serverless database for storing, searching, and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to call 100+ LLM providers (OpenAI, Anthropic, Gemini, Bedrock, Azure, and others) using OpenAI-compatible API format, available as both a Python SDK and a self-hosted AI Gateway proxy server.
Install it if you need to work with multiple LLM providers or want to centralize LLM routing in your organization.
Client library and CLI tool for downloading, uploading, and managing models, datasets, and repositories on the Hugging Face Hub platform.
Install it if you work with Hugging Face Hub models or datasets.
LangChain provides a framework for building agents and LLM-powered applications by composing language models, tools, and memory through a unified API that abstracts over multiple model providers.
hf-xet provides chunk-based deduplication and efficient file transfer for the Hugging Face Hub, enabling faster uploads and downloads of large files with local disk caching.
Tokenizers converts raw text into token sequences for NLP models, with support for training custom vocabularies and using pre-built tokenizers (BPE, WordPiece) optimized for speed via Rust.
Transformers provides a unified framework for loading, fine-tuning, and running state-of-the-art pretrained models across text, vision, audio, video, and multimodal tasks using PyTorch, JAX, or TensorFlow.
Install it if you need to run or train any transformer-based model for NLP, vision, audio, or multimodal tasks.
See also litdata · webdataset · datasets · smart-open · petastorm · s3torchconnector · iden · deeplake · clip-anytorch · rerun-sdk