Skip to main content
Latest Version: v2.0.0 - Major refactoring with improved architecture, enhanced payload structure, and new features. See details below.

Version 2.0.0 (November 2025)

Breaking Changes - This release includes significant API changes. Please review the migration notes carefully.

Architecture & Infrastructure

Complete restructuring from monolithic 2000+ line files to organized, maintainable modules:New Structure:
  • labellerr/core/annotation_templates/ - Template management
  • labellerr/core/autolabel/ - Model training features
  • labellerr/core/connectors/ - S3 and GCS connections
  • labellerr/core/datasets/ - Dataset CRUD operations
  • labellerr/core/exports/ - Export handling with polling
  • labellerr/core/projects/ - Project management
  • labellerr/core/schemas/ - Pydantic validation models
  • labellerr/core/users/ - User management
Benefits:
  • Separation of concerns with single responsibility per module
  • Factory pattern for automatic type-specific object instantiation
  • Easier maintenance and extensibility
  • Better code discoverability
Major Improvement: All function parameters now use Pydantic models for validation instead of plain dictionaries.Old Approach:
New Approach:
Benefits:
  • Automatic validation before API calls
  • IDE autocomplete and type checking
  • Clear, self-documenting schema fields
  • Early error detection
  • Organized schemas by domain (autolabel, connectors, datasets, exports, files, projects, users)
New Workflow: Project creation now follows an explicit, modular pipeline for better control and reusability.Old Approach:
New Approach:
Why This Change?
  • Explicit Dependencies: Datasets and templates validated before project creation
  • Better Error Handling: Issues caught earlier in the pipeline
  • Reusability: Same dataset can be attached to multiple projects
  • Clearer Flow: Each step is explicit, testable, and maintainable
  • Type Safety: Pydantic validation at each step

New Features

Export annotations directly to cloud storage with automatic status polling:
Features:
  • Direct export to AWS S3
  • Automatic polling mechanism
  • Multiple export formats (JSON, CSV, COCO JSON)
  • Status filtering support
Train custom models on your annotated data with configurable hyperparameters:
Features:
  • Train YOLOv11 and other models
  • Configurable hyperparameters
  • Job status tracking
  • List all training jobs
Split Dataset Creation:
  • create_dataset_from_local() - For local file/folder uploads
  • create_dataset_from_connection() - For cloud storage connections
Auto-Pagination:
Additional Features:
  • New delete_dataset() function
  • Improved sync operations for AWS S3 and GCS
  • Better status tracking with polling
  • Type-specific dataset classes (Image, Video, Audio, Document)
Dedicated module for structured annotation template creation:
Features:
  • Type-safe question definitions
  • Reusable templates across projects
  • Multiple question types (BoundingBox, polygon, radio, etc.)
  • Automatic validation
Dedicated Connection Classes:
  • LabellerrS3Connection - AWS S3 operations
  • LabellerrGCSConnection - Google Cloud Storage operations
Features:
  • Connection testing before creation
  • Support for import and export types
  • Better error handling
  • Type-safe parameters

Breaking Changes

Old approach:
New approach:
Why? Explicit dependencies, better error handling, and dataset reusability.
Old:
New:
Update imports from root to labellerr.core.*:

Additional Improvements

  • Connection Pooling: Improved HTTP connection management for better performance
  • Error Handling: Enhanced error messages with automatic retry logic
  • Polling Mechanism: Smart status tracking for long-running operations (exports, datasets)
  • Testing Infrastructure: Comprehensive unit and integration test coverage
  • Documentation: Improved code examples and API documentation
  • Type-Specific Classes: Specialized methods for Image, Video, Audio, and Document types
  • Performance: Optimized request handling and data transfer

Migration Notes

  1. Update SDK: pip install --upgrade labellerr
  2. Update imports: Change to new labellerr.core.* modules
  3. Refactor project creation: Follow new 3-step process (dataset → template → project)
  4. Use Pydantic schemas: Replace dict payloads with schema models
  5. Test thoroughly: Validate all SDK operations in dev/staging before production
Need help migrating? contact support@labellerr.com
GitHub Release: v2.0.0

Version 1.0.1 (September 2025)

Improvements

  • New project creation flow with updated payload structure
  • Better validation for annotation_guide and annotation_template_id
  • "created_by" email now included automatically during project creation
  • Modularized SDK structure for easier maintenance
  • Automated release pipeline added via release_manager
  • Enhanced export status handling (polling + download URL fetching)

Bug Fixes

  • Fixed check_export_status inconsistencies
  • Improved error handling for invalid project creation payloads
  • Corrected edge-case failures in export polling
  • Minor fixes in annotation guide validation logic

Branch Strategy

  • main → production-ready releases
  • develop → pre-release testing versions
GitHub Release: https://github.com/Labellerr/SDKPython/releases/tag/v1.0.1

Version 1.0.0 (December 2024)

Initial Release

First public release of the Labellerr Python SDK.

Core Features

  • Client Initialization: Authenticate using LabellerrClient
  • Project Management: Create and configure annotation projects
  • Dataset Operations: Manage datasets across image, video, audio, text, and documents
  • Pre-annotations: Upload annotations (sync & async)
  • Export Functionality: Export annotations in json, coco_json, csv, png
  • Retrieval APIs: Fetch all projects and datasets
  • Error Handling: LabellerrError for managed exception handling

Core Modules

  • LabellerrClient — main API client
  • Project operations (initiate_create_project)
  • Pre-annotation upload methods
  • Local export utilities
  • Dataset retrieval helpers
GitHub Release: https://github.com/Labellerr/SDKPython/releases/tag/v1

Support & Resources

Documentation

Comprehensive SDK guides and examples

GitHub

View source code and report issues

Support

Get help from our team

Cookbooks

End-to-end examples and tutorials

Semantic Versioning: We follow SemVer. Breaking changes increment the major version (e.g., 1.x → 2.0).