Skip to content

Use case

Moving training sets and model checkpoints between labs, vendors and the cloud

Boita for ML and data teams is a way to move training sets of millions of files or a few huge shards, and checkpoints of tens of gigabytes, between labs, annotation vendors and object storage, from a script or a watch folder, with a checksum per file — one use of Boita, the large-file transfer workspace for anyone who moves a lot of data.

A dataset is either millions of small files or a handful of huge shards; a checkpoint is tens of gigabytes every epoch. Boita moves both at the speed of your connection, from a script or a watch folder, into or out of your own bucket.

Boita Agents: counts of agents, online, active jobs and errors, then a fleet table — a Docker sequencing node, a Windows render server, a Synology NAS, a macOS playout machine and a field kit — with host facts, the watch or sync job each runs, when it last reported and its error.
Agents: every server, container and NAS, what it runs and what went wrong.

Two awkward shapes, and the cloud in the middle

Machine learning and data teams move training sets to an annotation vendor and get labels back, ship datasets from a lab to the cloud where the GPUs are, and pull checkpoints back down for evaluation. Small samples make per-file overhead dominate; sharded archives mean one stalled stream wastes a night.

Consumer sharing tools cap sizes or meter the bytes, sync tools choke on millions of files, and a browser upload over TCP to another continent never reaches the line rate you pay for.

Small files batched, big shards in parallel

Boita moves data with an accelerated transfer engine over UDP with its own rate control, holding your line rate whatever the distance. A tree of millions of small files is grouped into transfers by the desktop app or the agent, in batches of up to 500 files or a ten-second window, so the per-file cost of an ordinary upload does not apply. The desktop app resumes by itself and skips completed files.

The server records a checksum for every file, and the delivery receipt carries per-file checksums with a CSV verification report, so an evaluation run uses the checkpoint that was actually written.

One rule decides whether this helps you: sessions are per file. Four shards move on four sessions; one shard moves on one, at about 45 Mbps, the same on every plan. A plan buys sessions, not a faster single file; sharding a checkpoint turns them into throughput.

Fits training scripts and object storage

The boita command line runs in a training script or a scheduler job on the Linux agent, and the REST API with a Python SDK, scoped API keys and signed webhooks (Pro and above) does the same from your own code. Import from an S3-compatible, Google Cloud Storage or Azure Blob bucket pulls a dataset into the workspace on our servers, not through a laptop, and a sync rule on any plan copies results back. On Enterprise, auto-delivery also pushes to your own S3-compatible bucket, sub-folders kept and retried on failure.

An annotation vendor sends labels back through an upload portal with a form for batch identifiers and file-type rules, into its own dated inbox folder, with an email to both sides when it lands.

A worked example

A 1 TB dataset leaves a lab on Pro, over a 1 Gbps line, in about five hours, plan-limited at 450 Mbps; a 40 GB checkpoint on the same plan takes about twelve minutes. The same 1 TB on Scale over a 1 Gbps line is line-limited and takes about two and a quarter hours. What the far end sees depends on the distance and loss on its side; the calculator on the home page models it.

  • Millions of small files batched into transfers; huge shards in parallel sessions
  • boita CLI, REST API and Python SDK for scripts (Pro and above)
  • Import from and sync with S3-compatible, Google Cloud Storage or Azure Blob buckets
  • Upload portals with forms for annotation vendors
  • Checksum on every file; receipts with a CSV verification report

Controls on proprietary data

Sender-side encrypted delivery with a passphrase keeps a dataset unreadable to anyone, including Boita, until the recipient enters it. Share links carry an expiry, an optional password and a download limit, recipient verification by email code names who downloaded, and a revoked link stops resumed downloads within minutes. Folder permissions per member or group (Scale and above) give a vendor’s contact one folder and nothing else. Two-factor authentication and an audit log are on every plan; SSO, IP allow-lists and audit export to a SIEM are on Enterprise.

Questions people ask

Boita for ML and data teams, in answers.

Written the way people ask an assistant, and published the same way in products.json and llms.txt. More in the full FAQ.

How do we move a dataset of millions of small files quickly?

The desktop app, agent or CLI sends the folder tree as parallel sessions at line rate; state survives restarts and completed files are never re-sent.

Can a pipeline drive transfers from code?

Yes, with the CLI, the TypeScript and Python SDKs, and webhooks on landing.

Can we sync a bucket with on-prem GPUs?

Yes. Import from the bucket and pull on-prem with the agent, or keep a workspace folder and the bucket in continuous sync.

How does an annotation vendor return labelled data?

Through a portal into its own folder, with the batch id on the form.

Is there a Python SDK?

Yes. The REST API is described in OpenAPI with TypeScript and Python SDKs, scoped API keys and a webhook console with test and retry, on Pro and above. The boita CLI ships with the Linux agent.

How does Boita handle a dataset of two million small files?

The desktop app or agent groups new files into batches of up to 500 and sends each batch as one transfer. Your storage quota is the only limit on count.

Can we go straight to our own bucket instead of Boita storage?

No, files land in the workspace first. On any plan, a sync rule then copies each one to your S3-compatible, Google Cloud Storage or Azure Blob bucket as it lands; on Enterprise, auto-delivery also pushes to an S3-compatible bucket.

Next step

Try it, or ask first.

Start free with 10 GB and no card, book a demo, or talk to a person on WhatsApp. Leads from this page reach us with the page name attached, so the reply already knows what you read.

Tell us what you move

Sizes, where it goes, and what is slow today. A person replies with the plan and the setup that fit — no drip sequence.

Or write to hello@boita.io. Your details go to our team only; see the privacy policy.

Try it on your next transfer.

Create a free workspace with 10 GB, move one thing and watch it fill your line. Plans are flat and in your currency.

Chat on WhatsApp