Storage
Where datasets and model artifacts live in Ertas, how the per-plan quotas work, and how to clean up.
Ertas uses two separate storage buckets, each with its own quota and its own management surface:
- Datasets live in the Data Craft tab. Quota is account-wide.
- Model artifacts (LoRA adapters and GGUFs from completed runs) live in the Hub tab. Quota is account-wide.
Both are encrypted at rest and visible only to your account.
What lives where
| Thing | Tab | Counted against | Lifecycle |
|---|---|---|---|
| Uploaded datasets (JSONL, CSV, parquet, txt) | Data Craft | Dataset storage quota | Persist until you delete them. |
| Datasets imported from Hugging Face | Data Craft (mirrored on first use) | Dataset storage quota | Persist until you delete them. |
| LoRA adapter from a completed run | Hub | Model artifacts quota | Persist until you delete the Hub entry. |
| GGUF export from a completed run | Hub | Model artifacts quota | Persist until you delete the Hub entry. |
| Run records (config snapshot, metrics, logs) | Runs tab | Negligible | Persist until you delete the run. |
Deleting a run from the Runs tab does not delete its model files. Model files are managed independently in Hub and must be deleted there if you want to free that quota. Deleting a dataset from Data Craft removes the underlying file immediately; any subsequent attempt to rerun a training job that referenced that dataset will fail because the dataset reference no longer resolves.
Quotas by plan
Quotas are stored in src/config/plan-quotas.ts as the canonical source of truth. Current values:
| Plan | Dataset storage | Model artifacts storage |
|---|---|---|
| Free | 250 MB | 5 GB |
| Builder | 5 GB | 50 GB |
| Pro | 10 GB | 100 GB |
| Business | 20 GB | 200 GB |
The two quotas are independent. Hitting the dataset quota blocks new uploads and Hugging Face imports until you free space. The model-artifacts quota is enforced at run submission: when you press play, Ertas estimates the size of the LoRA and GGUF the run would produce, and if that would push you over your model-artifacts quota, the run is blocked before it enters the queue. The training does not start. Free space in Hub (delete old entries) and try again.
See the pricing page for the full plan comparison and which features ride alongside each quota.
Seeing your usage
Two places to check:
- Data Craft tab: the dataset list view shows each dataset's row count, format, and size. The totals at the top of the list reflect your current dataset usage against the dataset quota.
- Hub tab: shows every model artifact (LoRA, GGUF) you have stored, with each item's size. Totals reflect your current model-artifacts usage.
When you cross a quota's threshold, Ertas surfaces a banner in the affected tab with a link to the cleanup view.
Cleaning up datasets
Open the Data Craft tab. The list view shows row count, size, format, and source for each dataset.
Find the dataset
Scroll the list. The Data Craft tab does not have a search box inside the detail view today, so use the main list to identify what to delete.
Open the detail view
Click the dataset name. The detail view shows the schema and a row preview.
Delete
Open the menu and choose Delete. Confirm.
Deletion is immediate and irreversible. After deletion:
- The dataset file is gone from storage.
- The dataset quota updates immediately.
- Any run record in the Runs tab that referenced this dataset is still present, but rerunning that run (from either the Runs tab or the build canvas) fails because the dataset reference no longer resolves.
There is no in-app dataset export action today (that UX update is on the post-launch roadmap). If you might need the dataset later, keep a local copy of the original file you uploaded before deleting from Data Craft. Hugging Face datasets can always be re-imported by URL.
Cleaning up model artifacts
Model artifacts (LoRA + GGUF) live in the Hub tab. Each completed run that produced artifacts has a corresponding Hub entry.
Open Hub
Click Hub in the root navigation. The list shows every stored model artifact with title, base model, size, and creation date.
Pick what to remove
The Hub list is searchable by title. Larger entries (typically GGUFs from 8B+ bases) free more quota per delete.
Download anything you still want
For any entry you might want to keep, download the GGUF or LoRA before deleting.
Delete
Use the delete action on the Hub entry. Confirm.
A typical project accumulates 30 to 50 runs while you are actively iterating. Once you have shipped, keep your final two or three Hub entries (one to deploy, one or two for rollback) and delete the rest.
Backing things up
There is no automatic backup beyond Ertas's own object-storage redundancy. If you want a snapshot outside Ertas:
- GGUF: download from Hub. The file is a complete model and runs anywhere.
- LoRA: download from Hub. The PEFT-compatible bundle (adapter weights + tokenizer + chat template + config) loads standalone against the base model identifier listed in its
adapter_config.json. - Datasets: keep the original file you uploaded. There is no in-app dataset export today.
A common practice for production models: download the final GGUF, store it in your own storage (S3, Cloud Storage, your CDN), and treat that as the source of truth. Ertas's copy is convenient but you do not need to depend on it.
What happens when you delete a run vs delete a Hub entry
Two separate actions, distinct effects:
| Action | What gets deleted | What survives |
|---|---|---|
| Delete a run from the Runs tab | The run record (config snapshot, metrics, logs) | The Hub entry (LoRA + GGUF) survives, because Hub is independent. |
| Delete a Hub entry | The LoRA adapter and GGUF for that artifact | The Runs-tab record survives, but downloads from it will no longer find the files. |
If you want to fully clean up a run, delete it from Runs and delete its Hub entry.