Model Versioning

Model Versioning

Model versioning lets you save snapshots of your trained models at any point during training, then restore any previous version with a single click.

StudioModel versioning requires a Studio tier license.

Overview

Training face models is an iterative process. You might train for thousands of iterations, then realize that the model looked better at an earlier stage — or you want to try different training parameters without losing your current progress. Model versioning solves this by letting you create named snapshots at any point and roll back when needed.

Each snapshot captures the complete model state, including all weights, optimizer state, and training configuration. Restoring a snapshot replaces the current model files entirely, bringing the model back to the exact state it was in when the snapshot was created.

Non-destructive workflow

When you restore a snapshot, Recaster automatically creates a backup of the current model state before overwriting it. This means you can always undo a restore if you change your mind.

Creating Snapshots

You can create a snapshot at any time, whether training is running or paused. The snapshot captures the current state of all model files in the project.

1

Open the Version panel

The Version panel is available in the Training widget when you have a Studio license. Look for the version history icon in the training toolbar.
2

Click Create Snapshot

A dialog appears asking for an optional name and notes. The name helps you identify the snapshot later (for example, "Before parameter change" or "Best quality so far").
3

Add notes (optional)

The notes field lets you record why you created this snapshot, what parameters you were using, or any observations about the model quality. These notes appear in the version list for reference.
4

Snapshot saved

The snapshot appears in the version list with its name, iteration count, loss values, and timestamp. The model files are copied to a versioned directory within your project.

Snapshot at milestones

Create snapshots at key milestones during training: after the model first converges, before changing parameters, and whenever the preview looks particularly good. This gives you clear rollback points if future training degrades quality.

Snapshot Metadata

Each snapshot stores the following metadata alongside the model files:

FieldDescription
NameUser-provided label for easy identification
TimestampDate and time the snapshot was created
Iteration CountThe training iteration number at snapshot time
Loss ValuesSource and destination loss values at the time of the snapshot
NotesOptional user notes about the snapshot
Model TypeTraining architecture (SAEHD, AMP, Quick96, XSeg)

Restoring Versions

To restore a previous snapshot, select it in the version list and click Restore. A confirmation dialog shows the snapshot details and warns that the current model will be replaced.

1

Select a snapshot

Browse the version list and select the snapshot you want to restore. Each card shows the name, iteration count, loss values, and timestamp.
2

Confirm restore

A confirmation dialog appears showing the snapshot details. Review the iteration count and loss values to make sure this is the version you want. The dialog warns that the current model will be replaced.
3

Automatic backup

Before overwriting, Recaster automatically creates a backup snapshot of the current model state. This backup appears in the version list so you can undo the restore if needed.
4

Model restored

The snapshot model files replace the current model. You can immediately resume training from this point, or use the model for Quick Recast and merging operations.

Stop training before restoring

Always stop or pause training before restoring a snapshot. Restoring while training is running could corrupt the model files or cause the training process to crash.

Version Panel Interface

The Version panel displays all snapshots for the current project in a scrollable list. Each snapshot is shown as a card with:

  • Name — The label you gave the snapshot, or an auto-generated name for automatic backups
  • Iteration badge — Shows the iteration count (e.g., "Iter 50,000")
  • Loss values — Source and destination loss at snapshot time
  • Timestamp — When the snapshot was created, displayed as a relative time (e.g., "2 hours ago")
  • Notes preview — First line of notes, expandable on click
  • Actions — Restore and Delete buttons

Storage Management

Each snapshot stores a complete copy of the model files, which can be hundreds of megabytes depending on the model architecture. Over time, snapshots accumulate and consume significant disk space. Manage storage by deleting snapshots you no longer need.

Typical Snapshot Sizes

  • Quick96: 50 – 100 MB per snapshot
  • SAEHD (standard): 200 – 400 MB per snapshot
  • SAEHD (high resolution): 400 – 800 MB per snapshot
  • AMP: 300 – 600 MB per snapshot
  • XSeg: 30 – 60 MB per snapshot

Deleting Snapshots

To delete a snapshot, click the Delete button on the snapshot card. A confirmation dialog ensures you do not accidentally remove important versions. Deleted snapshots cannot be recovered.

Keep key milestones

Rather than saving a snapshot at every interval, focus on key milestones: the point where the model first converges, the best visual quality you have achieved, and the state before any major parameter changes. This keeps storage manageable while providing meaningful rollback points.

Best Practices

  • Name snapshots descriptively. Use names like "Before batch size change" or "Best face detail" rather than generic names like "Version 1".
  • Add notes with parameter details. Record the training parameters, batch size, learning rate, and any observations in the notes field. This helps you understand what changed between snapshots.
  • Snapshot before experiments. Always create a snapshot before changing training parameters, switching architectures, or trying new techniques. This gives you a guaranteed rollback point.
  • Review loss values when choosing a restore point. Lower loss values generally indicate a better-trained model, but visual quality does not always correlate directly with loss. Use the training preview alongside loss values to make restore decisions.
  • Clean up old snapshots regularly. Delete snapshots from failed experiments or intermediate checkpoints that are no longer useful. Keep the snapshots that represent meaningful states.
  • Use the automatic backup. When restoring, the automatic backup of the current state acts as a safety net. Do not delete this backup until you are sure the restored version is what you want.

How It Works Internally

The ModelVersionManager service handles all snapshot operations. Snapshots are stored as timestamped directories within the project folder, each containing a complete copy of the model files and a metadata JSON file.

When creating a snapshot, all model files are copied to the version directory. When restoring, the current model files are backed up (if a backup does not already exist), then the snapshot files are copied back to the model directory. File operations use atomic copy-then-rename where possible to prevent corruption.

Remote snapshots

Model versioning works with both local and remote training. For remote instances, snapshots are created on the remote machine and can be synced back to your local project using the Sync tab.