Skip to content

Releases: talmolab/sleap

SLEAP v1.6.0a2

16 Jan 21:25
2f345c6

Choose a tag to compare

SLEAP v1.6.0a2 Pre-release
Pre-release

SLEAP v1.6.0a2

About the v1.6 Pre-release Series

This is a pre-release for SLEAP v1.6.0. It contains many new features and improvements, but is not yet considered stable. For production use, see v1.5.2.

We are releasing a series of pre-releases that incrementally build towards the stable v1.6.0 release. Each pre-release adds new features and bug fixes:

Version Summary
v1.6.0a0 Unified sleap CLI, redesigned training dialog (55x faster loading), bug fixes for adding instances from predictions
v1.6.0a1 Label QC for automated error detection, 8 new CLI commands from sleap-io, video rendering with live preview
v1.6.0a2 (current) Revamped installation docs, epoch-end evaluation metrics, content-based video matching, bug fix for export training package

Note: Starting with SLEAP v1.5+, all deep learning functionality is powered by the PyTorch-based sleap-nn backend. TensorFlow models (with UNet backbones) from earlier versions are still supported for inference. Refer to the Migrating to 1.5+ docs for more details!


How to Install

Step 1: Install uv (skip if already installed)

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Step 2: Install SLEAP v1.6.0a2

uv tool install --python 3.13 "sleap[nn]==1.6.0a2" --with "sleap-io==0.6.2" --with "sleap-nn==0.1.0a2" --prerelease allow --torch-backend auto

That's it! SLEAP is now available system-wide. The --torch-backend auto flag automatically detects your GPU (NVIDIA, AMD, Intel, or CPU). Be sure to do a uv self update if you get an error about this flag.

Step 3: Verify installation

sleap doctor

Upgrading from v1.6.0a1?

uv tool upgrade sleap --upgrade-package sleap-io --upgrade-package sleap-nn

Or for a clean reinstall:

uv tool install --reinstall --python 3.13 "sleap[nn]==1.6.0a2" --with "sleap-io==0.6.2" --with "sleap-nn==0.1.0a2" --prerelease allow --torch-backend auto

Rollback to stable

If you encounter issues, rollback to the latest stable release:

uv tool install --python 3.13 "sleap[nn]==1.5.2" --torch-backend auto

Version compatibility

SLEAP sleap-io sleap-nn
1.6.0a2 0.6.2 0.1.0a2
1.6.0a1 0.6.1 0.1.0a1
1.6.0aN 0.6.x 0.1.0aN
1.6.x 0.6.x 0.1.x
1.5.x 0.5.x 0.0.x

What's New in v1.6.0a2

  • Revamped Installation Documentation:

    • Complete rewrite of installation docs with simplified workflow (#2567)
    • Single universal install command for all platforms using --torch-backend auto
    • Reduced from 8 installation paths to 2 (tool install + development setup)
    • New uvx sleap labels.slp option for viewing data without permanent installation
    • Streamlined upgrade flow with uv tool upgrade sleap
  • Python 3.13 Default:

    • Python 3.13 is now the default recommended version (#2565)
    • Python 3.12 remains supported
  • Bug Fixes:

    • Fixed "Export Training Job Package" crash with ConfigAttributeError: Missing key zmq that occurred on v1.6.0a0/v1.6.0a1 (#2566, fixes #2562)
  • sleap-io v0.6.2:

    • Content-Based Video Matching: Videos are now automatically matched by pose annotations or pixel content, enabling reliable cross-platform merges even when file paths differ
    • New Labels.match() API: Inspect matching results without merging — ideal for evaluation workflows
    • Video Color Mode Control: New Labels.set_video_color_mode() method and sio fix --video-color CLI option
    • Bug fixes for HDF5 dataset matching and provenance conflict handling
  • sleap-nn v0.1.0a2:

    • Epoch-End Evaluation Metrics: Real-time mOKS, mAP, mAR, PCK, and distance metrics logged to WandB during training
    • Robust Video Matching: Uses sleap-io's Labels.match() API for better cross-platform evaluation
    • Bug fixes for embedded video handling and centroid model ground truth matching

Full Changelog

Enhancements

  • Revamp installation documentation for uv-based workflow by @talmo in #2567

Fixes

  • Fix export training package zmq config error by @talmo in #2566

Workflows

  • Fix docs workflow race condition with concurrency group by @talmo in #2563
  • Housekeeping: Python 3.13 default and sleap-support skill by @talmo in #2565

Dependencies

  • Bump sleap-io min to 0.6.2 and sleap-nn min to 0.1.0a2 by @talmo in #2569

Full Changelog: v1.6.0a1...v1.6.0a2

SLEAP v1.6.0a1

13 Jan 18:38
aa6fb3c

Choose a tag to compare

SLEAP v1.6.0a1 Pre-release
Pre-release

SLEAP v1.6.0a1

About the v1.6 Pre-release Series

This is a pre-release for SLEAP v1.6.0. It contains many new features and improvements, but is not yet considered stable. For production use, see v1.5.2.

We are releasing a series of pre-releases that incrementally build towards the stable v1.6.0 release. Each pre-release adds new features and bug fixes:

Version Summary
v1.6.0a0 Unified sleap CLI, redesigned training dialog (55x faster loading), bug fixes for adding instances from predictions
v1.6.0a1 (current) Label QC for automated error detection, 8 new CLI commands from sleap-io, video rendering with live preview

Note: Starting with SLEAP v1.5+, all deep learning functionality is powered by the PyTorch-based sleap-nn backend. TensorFlow models (with UNet backbones) from earlier versions are still supported for inference. Refer to the Migrating to 1.5+ docs for more details!


How to Install

Step 1: Install uv (skip if already installed)

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Step 2: Install SLEAP v1.6.0a1

Windows/Linux with NVIDIA GPU (CUDA 12.8)

uv tool install --reinstall --python 3.12 "sleap[nn]==1.6.0a1" --with "sleap-io==0.6.1" --with "sleap-nn==0.1.0a1" --prerelease allow --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

Windows/Linux with NVIDIA GPU (CUDA 13.0)

uv tool install --reinstall --python 3.12 "sleap[nn]==1.6.0a1" --with "sleap-io==0.6.1" --with "sleap-nn==0.1.0a1" --prerelease allow --index https://download.pytorch.org/whl/cu130 --index https://pypi.org/simple

Windows/Linux without GPU (CPU only)

uv tool install --reinstall --python 3.12 "sleap[nn]==1.6.0a1" --with "sleap-io==0.6.1" --with "sleap-nn==0.1.0a1" --prerelease allow --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

macOS

uv tool install --reinstall --python 3.12 "sleap[nn]==1.6.0a1" --with "sleap-io==0.6.1" --with "sleap-nn==0.1.0a1" --prerelease allow

Step 3: Verify installation

sleap doctor

Upgrading from v1.6.0a0?

Use the same commands as above. The --reinstall flag will create a clean environment with the new dependencies.

Rollback to stable

If you encounter issues, rollback to the latest stable release:

# Windows/Linux (CUDA 12.8)
uv tool install --reinstall --python 3.12 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

# Windows/Linux (CPU only)
uv tool install --reinstall --python 3.12 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

# macOS
uv tool install --reinstall --python 3.12 "sleap[nn]==1.5.2"

Version compatibility

SLEAP sleap-io sleap-nn
1.6.0a1 0.6.1 0.1.0a1
1.6.0aN 0.6.x 0.1.0aN
1.6.x 0.6.x 0.1.x
1.5.x 0.5.x 0.0.x

What's New in v1.6.0a1

  • Label Quality Control (QC):

    • New sleap.qc module with GMM-based anomaly detection to automatically identify annotation errors (#2547)
    • Detects 10+ error types: isolated misses, jitter, visibility errors, scale issues, left-right swaps, gross misses, missing instances, and duplicates
    • Dockable GUI widget accessible via Analyze > Label QC... with score histograms and sensitivity controls
    • Keyboard navigation (Space/Shift+Space) to quickly navigate flagged instances
    • Export to CSV or add flagged instances to Suggestions for review
  • Enhanced CLI:

    • 8 new CLI commands from sleap-io: sleap merge, sleap unsplit, sleap fix, sleap embed, sleap unembed, sleap trim, sleap reencode, sleap transform (#2559)
    • See the sleap-io CLI documentation for detailed usage
  • Video Rendering Overhaul:

    • Now powered by sleap-io's rendering engine — see rendering documentation for details (#2558)
    • Live preview of rendered frames with all style options before exporting
    • 12+ new color palettes and 5 marker shapes with options to color by track, instance, or node
    • Alpha transparency support for overlays
    • Non-blocking video export with progress bar and cancel support
  • Training Dialog Improvements:

    • Form state now persists after clicking Cancel (#2557)
    • Device and worker settings default from user preferences instead of being overwritten by profiles (#2557)
    • Updated all baseline profiles to use full ±180° rotation augmentation (#2557)
    • Added Random Seed field for reproducible train/validation splits (#2557)
    • New tooltips for Input Scaling, Batch Size, Predict On, and tracker fields (#2556)
  • Inference Improvements:

    • New "Random sample (current video)" inference target for quick model testing (#2555)
    • Fixed --exclude_user_labeled flag not working when "Skip user labeled frames" is enabled (#2552)
  • sleap doctor Improvements:

    • Consolidated, copy-paste-friendly diagnostic output (#2553)
    • Git info display for editable installs (branch, commit hash) (#2553)
    • Comprehensive UV and conda introspection with conflict warnings (#2553)
    • System resources display (RAM and disk usage) (#2553)
    • New -o/--output flag to save diagnostics to file (#2553)
    • Added spinner during PyTorch import to show command is working (#2551)
    • Fixed path truncation in tables (#2551)
  • Bug Fixes:

    • Fixed terminal spam from "Error processing frame" messages when scrubbing .pkg.slp files (#2554)
  • sleap-io v0.6.1:

    • 8 new CLI commands: merge, unsplit, fix, embed, unembed, trim, reencode, transform
    • CSV format support for MATLAB interoperability
    • Coordinate-aware video transformations
    • 23x faster .pkg.slp saves, 2.7x faster embedded video loading
    • Bug fixes for video matching, rendering, and embedded videos
  • sleap-nn v0.1.0a1:

    • Training progress bar during dataset caching (no more apparent "freeze")
    • Automatic WandB local log cleanup to save disk space
    • Simplified log format for cleaner output

Full Changelog

Enhancements

  • Add sleap.qc module for label quality control by @talmo in #2547
  • Add sleap-io v0.6.1 CLI commands by @talmo in #2559
  • Upgrade video rendering to use sleap-io API with live preview and non-blocking progress by @talmo in #2558
  • Improve training config dialog UX by @talmo in #2557
  • Add missing tooltips to training config and tracker form fields by @talmo in #2556
  • Add "Random sample (current video)" inference target option by @talmo in #2555
  • Improve sleap doctor with consolidated diagnostic output by @talmo in #2553
  • Improve sleap doctor UX: add spinner and fix path truncation by @talmo in #2551

Fixes

  • Suppress frame error spam when scrubbing pkg.slp files by @talmo in #2554
  • Add --exclude_user_labeled flag to sleap-nn-track CLI shim by @talmo in #2552

Workflows

  • Add PR-local docs preview deployment by @talmo in #2550

Dependencies

Full Changelog: v1.6.0a0...v1.6.0a1

SLEAP v1.6.0a0

11 Jan 20:02
c40a547

Choose a tag to compare

SLEAP v1.6.0a0 Pre-release
Pre-release

SLEAP v1.6.0a0

About the v1.6 Pre-release Series

This is a pre-release for SLEAP v1.6.0. It contains many new features and improvements, but is not yet considered stable. For production use, see v1.5.2.

We are releasing a series of pre-releases that incrementally build towards the stable v1.6.0 release. Each pre-release adds new features and bug fixes:

Version Summary
v1.6.0a0 (current) Unified sleap CLI, redesigned training dialog (55x faster loading), bug fixes for adding instances from predictions
v1.6.0a1 Label QC for automated error detection, 8 new CLI commands from sleap-io, video rendering with live preview

Note: Starting with SLEAP v1.5+, all deep learning functionality is powered by the PyTorch-based sleap-nn backend. TensorFlow models (with UNet backbones) from earlier versions are still supported for inference. Refer to the Migrating to 1.5+ docs for more details!


How to Install

Step 1: Install uv (skip if already installed)

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Step 2: Install SLEAP v1.6.0a0

Windows/Linux with NVIDIA GPU (CUDA 12.8)

uv tool install --force --python 3.12 "sleap[nn]==1.6.0a0" --with "sleap-io==0.6.0" --with "sleap-nn==0.1.0a0" --prerelease allow --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

Windows/Linux with NVIDIA GPU (CUDA 13.0 - NEW!)

uv tool install --force --python 3.12 "sleap[nn]==1.6.0a0" --with "sleap-io==0.6.0" --with "sleap-nn==0.1.0a0" --prerelease allow --index https://download.pytorch.org/whl/cu130 --index https://pypi.org/simple

Windows/Linux without GPU (CPU only)

uv tool install --force --python 3.12 "sleap[nn]==1.6.0a0" --with "sleap-io==0.6.0" --with "sleap-nn==0.1.0a0" --prerelease allow --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

macOS

uv tool install --force --python 3.12 "sleap[nn]==1.6.0a0" --with "sleap-io==0.6.0" --with "sleap-nn==0.1.0a0" --prerelease allow

Step 3: Verify installation

sleap doctor

Upgrading from v1.5.x?

Use the same commands as above. The --force flag will replace your existing installation.

Rollback to stable

If you encounter issues, rollback to the latest stable release:

# Windows/Linux (CUDA 12.8)
uv tool install --force --python 3.12 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

# Windows/Linux (CPU only)
uv tool install --force --python 3.12 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

# macOS
uv tool install --force --python 3.12 "sleap[nn]==1.5.2"

Version compatibility

SLEAP sleap-io sleap-nn
1.6.0aN 0.6.x 0.1.0aN
1.6.x 0.6.x 0.1.x
1.5.x 0.5.x 0.0.x

What's New in v1.6.0a0

  • Unified CLI:

    • New sleap command as the primary entry point - just run sleap to launch the GUI (#2524)
    • Integrated sleap-io CLI commands: sleap show, sleap convert, sleap split, sleap filenames, sleap render (#2541)
    • New sleap doctor command for system diagnostics and troubleshooting (#2524)
  • Training GUI Overhaul:

    • 55x faster config loading and much faster dialog startup (#2506, #2516)
    • Completely redesigned training dialog with native Qt, unified frame targeting, and 356 new tests (#2519)
    • New Frame Target Selector for flexible training/inference frame selection (#2519)
    • Prediction handling modes: Keep, Replace, or Clear all predictions during inference (#2519)
    • Smaller dialog that fits on 1280x720 screens (#2509, #2519)
    • Augmentation controls simplified with on/off checkboxes and rotation presets (#2509)
    • WandB integration improvements with run URL display and auto-browser-open (#2525)
  • Crop Size Visualization:

    • Visual crop size preview in training dialog for top-down models (#2483)
    • New Instance Size Distribution widget for analyzing bounding box sizes across your dataset (#2528)
    • Click-to-navigate from size distribution plot to specific instances (#2528)
  • New Features:

    • "Check for Updates" dialog showing versions for sleap, sleap-io, and sleap-nn (#2499)
    • "Delete Predictions on User-Labeled Frames" for cleaning up duplicate instances (#2505)
    • Startup banner with version info and branding when launching sleap-label (#2517)
    • Progress dialog with cancel support for package export (#2522)
    • Support for loading legacy SLEAP metrics from v1.4.1 and earlier (#2480)
  • Critical Bug Fixes:

    • Fixed GUI freeze when editing predictions with NaN coordinates on Linux Qt 6.10+ (#2467)
    • Fixed catastrophic data loss bug where removing a video could delete frames from ALL videos with the same resolution (#2535)
    • Fixed prediction deletion incorrectly removing user-labeled instances (#2478)
    • Fixed predictions not being fully converted to instances when adding from predictions (#2539)
  • sleap-io v0.6.0: (#2540)

    • ~90x faster SLP loading with new lazy loading mode for large prediction files
    • Pose rendering at ~50 FPS for publication-ready videos (sleap render)
    • Data codecs for converting Labels to pandas DataFrames, NumPy arrays, and dictionaries
    • Safe video matching prevents silent data corruption during merges
    • Fixed package export losing videos without labeled frames (#282)
    • Fixed video provenance breaking during merge operations (#302)
    • Breaking: Merge API simplified (video_matcher=video=, frame_strategy=frame=)
  • sleap-nn v0.1.0a0: (#2545)

    • Faster inference via GPU-accelerated normalization (17% for typical video, up to 50% for large RGB images)
    • CUDA 13.0 support for latest NVIDIA GPUs
    • Provenance tracking embeds full reproducibility metadata in output files
    • Enhanced WandB with interactive visualizations and per-head loss logging
    • Fixed crash on frames with empty instances (#385)
    • Fixed --exclude_user_labeled being ignored with --video_index (#397)
    • Fixed run folder cleanup when training canceled via GUI (#392)
    • Breaking: Crop size semantics changed - top-down models now crop first, then resize
    • Breaking: Output file naming changed (labels_train_gt_0.slplabels_gt.train.0.slp)
  • Other dependency changes:

    • Removed 8 unused dependencies for faster installation (#2486)

Full Changelog

Enhancements

  • Add unified CLI with sleap command by @talmo in #2524
  • Add sleap-io CLI command inheritance (show, convert, split, filenames, render) by @talmo in #2541
  • Add "Check for Updates" to Help menu and implement update checker by @jaw039 in #2499
  • Refactor training/inference dialog with native Qt and unified frame targeting by @talmo in #2519
  • Training GUI QOL improvements (augmentation checkboxes, rotation presets, overfit mode) by @talmo in #2509
  • Improve training dialog startup performance (~55x faster config loading) by @talmo in #2506
  • Add crop size visualization for top-down training pipelines by @gitttt-1234 in #2483
  • Add Instance Size Distribution widget for crop size analysis by @talmo in #2528
  • Add Delete Predictions on User-Labeled Frames feature by @talmo in #2505
  • Add support for loading legacy SLEAP metrics (<=v1.4.1) by @gitttt-1234 in #2480
  • Add progress dialog and completion notification for package export by @talmo in #2522
  • Add startup banner with version info and branding by @talmo in #2517
  • Improve baseline config display names in training config selector by @gitttt-1234 in #2471
  • Fix WandB checkbox state and add run URL display by @talmo in #2525

Fixes

  • Fix GUI freeze when editing predictions with NaN coordinates by @gitttt-1234 in #2467
  • Fix remove_video() to use identity comparison instead of matches_content() by @talmo in #2535
  • Fix prediction deletion to prevent removing labeled instances by @gitttt-1234 in #2478
  • Add failing tests for predictions-not-fully-added bugs (and fix) by @talmo in #2539
  • Fix GUI freeze during labeled video export by @gitttt-1234 in #2484
  • Fix skeleton loading returning list instead of single Skeleton by @gitttt-1234 in #2493
  • Fix missing file dialog for ImageVideo backend (list of frame paths) by @alicup29 in #2498
  • Fix delete unused tracks crash with untracked instances by @talmo in #2503
  • Fix plateau detection to use absolute threshold mode by @gitttt-1234 in #2469
  • Update predictions output path for inference (multi-v...
Read more

SLEAP v1.5.2

30 Oct 03:57
ed0635c

Choose a tag to compare

What's Changed

SLEAP v1.5.2 – Bug Fixes & Dependency Updates

This release includes important bug fixes for GUI rendering and Windows compatibility, dependency updates for improved stability, and further documentation improvements.

Note: Starting with SLEAP v1.5+, all deep learning functionality is powered by the PyTorch-based sleap-nn backend. TensorFlow models (with UNet backbones) from earlier versions are still supported for inference. Refer Migrating to 1.5+ docs for more details!

How to install?

You can now install SLEAP quickly using uv

Step 1: Install uv - an ultra-fast Python package manager

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Step 2: Install sleap

# Windows/ Linux (CUDA)
uv tool install --python 3.13 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

# Windows/ Linux (CPU)
uv tool install --python 3.13 "sleap[nn]==1.5.2" --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

# macOS
uv tool install --python 3.13 "sleap[nn]==1.5.2"

Check the full installation guide for platform-specific instructions and advanced options.

Once you've installed SLEAP, run the below command from anywhere in your terminal

sleap-label

The GUI should open up!


Upgrading from v1.5.1?

If you already have SLEAP v1.5.1 installed, you can upgrade to v1.5.2 using the following commands based on your installation method:

If installed with uv tool install:

The simplest upgrade command (preserves your original Python version and index URLs):

uv tool upgrade sleap

Or, if you want to ensure you're using Python 3.13 and refresh your installation:

uv tool uninstall sleap
# Then reinstall with the commands from the installation section above

Note: uv tool upgrade automatically preserves the index URLs (CUDA/CPU) and Python version from your original installation. If you installed with --index https://download.pytorch.org/whl/cu128, the upgrade will continue using the CUDA 12.8 index.

If installed with pip in a conda environment:

conda activate sleap
pip install --upgrade "sleap[nn]"

For platform-specific indexes (CUDA/CPU), add the appropriate --extra-index-url:

# CUDA 12.8
pip install --upgrade "sleap[nn]" --extra-index-url https://download.pytorch.org/whl/cu128 --index-url https://pypi.org/simple

# CPU
pip install --upgrade "sleap[nn]" --extra-index-url https://download.pytorch.org/whl/cpu --index-url https://pypi.org/simple

If installed with uv add (project-based):

# Navigate to your project directory
uv sync --upgrade

If installed from source:

cd sleap
git pull
uv sync --upgrade

After upgrading, verify the installation:

python -c "import sleap; sleap.versions()"

You should see SLEAP: 1.5.2 in the output.


Highlights

  • Dependency updates:

    • Updated minimum sleap-io version to 0.5.7
    • Updated minimum sleap-nn version to 0.0.4
    • Removed cattrs dependency for simplified dependency management
    • Added --python 3.13 flag to installation commands to prevent Python 3.14 compatibility issues
  • Bug fixes:

    • Fixed color rendering in sleap-render: Videos now display correct colors with proper BGR to RGB conversion (#2444)
    • Fixed Windows GUI crash: Resolved Qt widget attribute error when loading .slp files on Windows (#2440)
    • Fixed instance coloring: Multiple instances in older SLEAP projects now display with distinct colors instead of the same color (#2434)
  • Documentation improvements:

    • Consolidated repetitive installation documentation (reduced by 55 lines while preserving all essential information)
    • Improved uv add installation workflow instructions with Windows troubleshooting tips
    • Clearer platform-specific installation guidance

Full Changelog: v1.5.1...v1.5.2

SLEAP v1.5.1

02 Oct 19:11
daf0d95

Choose a tag to compare

What's Changed

SLEAP v1.5.1 – Bug fixes & Documentation Improvements

This release focuses on a few bug fixes in the training pipeline, improving installation instructions, and updating documentation for a smoother user experience.

Note: Starting with SLEAP v1.5+, all deep learning functionality is powered by the PyTorch-based sleap-nn backend. TensorFlow models (with UNet backbones) from earlier versions are still supported for inference. Refer Migrating to 1.5+ docs for more details!

How to install?

You can now install SLEAP quickly using uv

Step 1: Install uv - an ultra-fast Python package manager

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Step 2: Install sleap

# Windows/ Linux (CUDA)
uv tool install "sleap[nn]" --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

# Windows/ Linux (CPU)
uv tool install "sleap[nn]" --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

# macOS
uv tool install "sleap[nn]"

Check the full installation guide for platform-specific instructions and advanced options.

Once you've installed SLEAP, run the below command from anywhere in your terminal

sleap-label

The GUI should open up!


Highlights

  • Improved installation:
    • Platform-specific dependency groups for sleap installation with CUDA support.
    • Fixed CUDA installation issues on Windows.
    • Updated installation instructions and options for clarity.
  • Documentation updates:
    • Fixed typos and broken links.
    • Improved CLI docs with new options and guidance on legacy CLIs.
    • Fixed MkDocs versioning and improved doc site structure.
  • Error handling: sleap-nn import errors are now handled gracefully with clear user guidance.
  • Bug fixes: Minor fixes across CLI and docs to improve stability.

Full Changelog: v1.5.0...v1.5.1

SLEAP v1.5.0

30 Sep 21:44
aeaba8b

Choose a tag to compare

What's New in SLEAP 1.5

SLEAP 1.5 represents a major milestone with significant architectural improvements, performance enhancements, and new installation methods. Here are the key changes:

Major Changes

Updated dependencies

We have now updated to support Python 3.12+ and support many new versions of the many libraries that SLEAP uses. This should make it much easier to install on modern platforms, support new architectures, and make development much easier.

UV-Based Installation

SLEAP 1.5+ now uses uv for installation, making it much faster than previous methods. Get up and running in seconds with our streamlined installation process.

PyTorch Backend

Neural network backend switched from TensorFlow to PyTorch via sleap-nn, providing:

  • Much faster training and inference speeds: Up to 2.5x faster training and inference times.
  • Modern deep learning capabilities: PyTorch with upcoming integrations with a whole slew of modern deep learning models and packages.
  • Improved developer experience: Check out the dedicated backend repo at https://github.com/talmolab/sleap-nn
  • Multi-GPU training: Full support for using multiple GPUs for accelerated and larger scale training.
  • Backwards compatibility: You are able to use your existing trained SLEAP models from v1.4.1 for the UNet backend with no changes (see notes below).

Refreshed Documentation Websites

Standalone Libraries

SLEAP GUI is now supported by two new packages for modular workflows:

SLEAP-IO

I/O backend for handling labels, processing .slp files, and data manipulation. Essential for any SLEAP workflow and can be used independently for data processing tasks.

SLEAP-NN

PyTorch-based neural network backend for training and inference. Perfect for custom training pipelines, remote processing, and headless server deployments.

Torch Backend Changes

New Backbones

SLEAP 1.5 introduces three powerful new backbone architectures (check here for more details):

  • UNet - Classic encoder-decoder architecture for precise pose estimation
  • SwinT - Swin Transformer for state-of-the-art performance
  • ConvNeXt - Modern convolutional architecture with improved efficiency

Legacy Support

We've maintained full backward compatibility:

  • GUI Support: SLEAP now uses a new YAML-based config file structure, but you can still upload and work with old SLEAP JSON files in the GUI. For details on converting legacy SLEAP 1.4 config/JSON files to the new YAML format, see our conversion guide.
  • TensorFlow Model Inference: Continue to support running inference on old TensorFlow models (UNet backbone only). Check using legacy models for more details.

SLEAP v1.4.1

19 Dec 17:57

Choose a tag to compare

SLEAP 1.4.1 releases many new changes since the last big release 1.3.3. We hope users enjoy these long awaited new features and fixes!

From 1.3.2+, to install SLEAP through pip use pip install sleap[pypi] to ensure all dependencies are gathered.

As a reminder:

The 1.3.1 dependency update requires Mamba for faster dependency resolution. If you already have anaconda installed, then you can set the solver to libmamba in the base environment:

conda update -n base conda
conda install -n base conda-libmamba-solver
conda config --set solver libmamba

Any subsequent mamba commands in the docs will need to be replaced with conda if you choose to use your existing Anaconda installation.

Otherwise, follow the recommended installation instruction for Mamba.

Quick install

mamba (Windows/Linux/GPU):

mamba create -y -n sleap -c conda-forge -c nvidia -c sleap/label/dev -c sleap -c anaconda sleap=1.4.1

mamba (Mac):

mamba create -y -n sleap -c conda-forge -c anaconda -c sleap sleap=1.4.1

pip (any OS except Apple Silicon):

pip install sleap[pypi]==1.4.1

Highlights

Full Changelog

Enhancements

Fixes

Dependencies

Documentation

Refactors

Read more

SLEAP v1.3.4

03 Sep 20:49

Choose a tag to compare

SLEAP 1.3.4 has no changes to the SLEAP source code, but adds constraints to the attrs and opencv versions being pulled in.

From 1.3.2+, to install SLEAP through pip use pip install sleap[pypi] to ensure all dependencies are gathered.

As a reminder:

The 1.3.1 dependency update requires Mamba for faster dependency resolution. If you already have anaconda installed, then you can set the solver to libmamba in the base environment:

conda update -n base conda
conda install -n base conda-libmamba-solver
conda config --set solver libmamba

Any subsequent mamba commands in the docs will need to be replaced with conda if you choose to use your existing Anaconda installation.

Otherwise, follow the recommended installation instruction for Mamba.

Quick install

mamba (Windows/Linux/GPU):

mamba create -y -n sleap -c conda-forge -c nvidia -c sleap -c anaconda sleap=1.3.4

mamba (Mac):

mamba create -y -n sleap -c conda-forge -c anaconda -c sleap sleap=1.3.4

pip (any OS except Apple Silicon):

pip install sleap[pypi]==1.3.4

Full Changelog

  • Constrain attrs (mac) and opencv (linux) in 1.3.4 #1927

SLEAP v1.4.1a2

28 Jun 18:40
436b177

Choose a tag to compare

SLEAP v1.4.1a2 Pre-release
Pre-release

SLEAP v1.4.1a2 is a pre-release. See 1.3.3 for the latest stable release. The crucial change here is Fix zmq inference by @roomrys in #1800 since inference was not working in the pre-release v1.4.1a1 due to the addition of zmq port options for training in #1780 that were not being used for inference.

Quick install

mamba (Windows/Linux/GPU):

mamba create -y -n sleap_v1.4.1a2 -c conda-forge -c nvidia -c sleap/label/dev -c anaconda sleap=1.4.1a2

mamba (Mac):

mamba create -y -n sleap_v1.4.1a2 -c conda-forge -c anaconda -c sleap/label/dev sleap=1.4.1a2

pip (any OS except Apple Silicon):

pip install sleap[pypi]==1.4.1a2

What's Changed

Fixes

Workflow Changes

Enhancements and Refactors

  • Set selected instance to None after removal by @roomrys in #1808
  • Add InstancesList class to handle backref to LabeledFrame by @roomrys in #1807

Full Changelog: v1.4.1a1...v1.4.1a2

SLEAP v1.4.1a1

03 Jun 02:53
61dbe62

Choose a tag to compare

SLEAP v1.4.1a1 Pre-release
Pre-release

SLEAP v1.4.1a1 is a pre-release. See 1.3.3 for the latest stable release. There are many changes to dependencies in this pre-release: if you are having installation issues with v1.3.3, you should try this version instead.

Quick install

mamba (Windows/Linux/GPU):

mamba create -y -n sleap_v1.4.1a1 -c conda-forge -c nvidia -c sleap/label/dev -c anaconda sleap=1.4.1a1

mamba (Mac):

mamba create -y -n sleap_v1.4.1a1 -c conda-forge -c anaconda -c sleap/label/dev sleap=1.4.1a1

pip (any OS except Apple Silicon):

pip install sleap[pypi]==1.4.1a1

What's Changed

Enhancements

Refactors

Fixes

Dependency Changes

Workflow Changes

Website Changes

New Contributors

Full Changelog: v1.3.3...v1.4.1a1