Skip to main content

Mirror a Hugging Face dataset into a region-local S3 bucket and load it into memory fast (with HF fallback + benchmark).

Project description

scigantic-transfer

Mirror a Hugging Face dataset into a region-local S3 bucket, then load it into memory fast on a GPU instance in that region.

Install

pip install scigantic-transfer

Mirror a dataset (Hugging Face to S3)

scigantic-transfer --region REGION --name HF_DATASET --bucket-name BUCKET [--include GLOB] [--endpoint-url URL]

Flags:

--region         region of the bucket and the GPU instance (must match)
--name           Hugging Face dataset id
--bucket-name    destination S3 bucket; data lands at s3://BUCKET/NAME/
--include GLOB   files to mirror, repeatable; default '*' (whole repo)
--endpoint-url   S3-compatible endpoint for neoclouds; omit on AWS (see below)

Examples:

scigantic-transfer --region us-east-1 --name org/ds --bucket-name my-mirror
scigantic-transfer --region us-east-1 --name org/ds --bucket-name my-mirror --include 'data/*'

Neoclouds (Nebius and other non-AWS GPU clouds)

--endpoint-url is for neoclouds. The speed win only exists when the bucket and the GPU instance are in the same cloud and region, so on a neocloud you mirror into that cloud's own S3-compatible object storage and point the tool at its endpoint. On AWS, omit the flag.

scigantic-transfer --region eu-north1 --name org/ds --bucket-name my-mirror \
    --endpoint-url https://storage.eu-north1.nebius.cloud

Works against any S3-compatible store (Nebius, MinIO, Cloudflare R2). Credentials are read the usual way (env vars / config) and apply to that endpoint.

Load into memory

from scigantic_transfer import load

result = load("org/ds", region="us-east-1", bucket="my-mirror")
data = result.blob

Benchmark

scigantic-transfer-bench --size-gib 1
scigantic-transfer-bench --live --region us-east-1 --name org/ds --bucket-name my-mirror

License

Proprietary, evaluation use only. No redistribution or derivative works. See LICENSE. Contact support@scigantic.com.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scigantic_transfer-0.1.1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scigantic_transfer-0.1.1-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file scigantic_transfer-0.1.1.tar.gz.

File metadata

  • Download URL: scigantic_transfer-0.1.1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for scigantic_transfer-0.1.1.tar.gz
Algorithm Hash digest
SHA256 193e4e07b7944e59a2d20e897ee9de90f90be94a7a5911a2c38b337db4a047dd
MD5 9745a14c42b9fcb73d57754b9dfe6c1f
BLAKE2b-256 1484de67929b6f6509109819e1a3be596075b20e94da3fd9134f6b7db19618f0

See more details on using hashes here.

File details

Details for the file scigantic_transfer-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for scigantic_transfer-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5aad69cc0dc93f4241a45e8cdd98d69e950747789f56d776fc5cef799c2adfe3
MD5 d13ce1114850a94ed5894a3b8100e45e
BLAKE2b-256 33e189856b6d56b7799353bbf74f2d0a64e17058093fad49be789c9abb2e89f0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page