Skip to main content



PyPI Python Downloads License

Unitlab.ai is an AI-driven data annotation platform that automates the collection of raw data, facilitating collaboration with human annotators to produce highly accurate labels for your machine learning models. With our service, you can optimize work efficiency, improve data quality, and reduce costs.

Unitlab Python SDK

Python SDK and CLI for the Unitlab.ai data annotation platform. Manage projects, upload data, and download datasets programmatically or from the command line.

Installation

pip install --upgrade unitlab

Requires Python 3.10+.

Configuration

Get your API key from unitlab.ai and configure the CLI:

# Set API key
unitlab configure --api-key YOUR_API_KEY

# Set a custom API URL
unitlab configure --api-url https://api.unitlab.ai

# Set both at once
unitlab configure --api-key YOUR_API_KEY --api-url https://api.unitlab.ai

Or set environment variables:

export UNITLAB_API_KEY=YOUR_API_KEY

# Optional: point to a custom API server (e.g. self-hosted)
export UNITLAB_API_URL=https://api.unitlab.ai

Python SDK

from unitlab import UnitlabClient

# Initialize with an explicit key
client = UnitlabClient(api_key="YOUR_API_KEY")

# Or read from UNITLAB_API_KEY env var / config file
client = UnitlabClient()

The client can also be used as a context manager:

with UnitlabClient() as client:
    projects = client.projects()

Projects

# List all projects
projects = client.projects()

# Get project details
project = client.project("PROJECT_ID")

# Get project members
members = client.project_members("PROJECT_ID")

Upload data

client.project_upload_data(
    project_id="PROJECT_ID",
    directory="./images",
)

The upload command accepts mixed directories. File type is detected per file from the supported extensions: images, text, video, audio, medical (.dcm, .nii, .nii.gz, .nrrd), and documents (.pdf).

Additional options for specific file types:

# Text files
client.project_upload_data("PROJECT_ID", "./docs", sentences_per_chunk=10)

# Video files
client.project_upload_data("PROJECT_ID", "./videos", fps=30.0)

# PDF documents
client.project_upload_data("PROJECT_ID", "./pdfs")

# DICOM, NIfTI, and NRRD medical volumes
client.project_upload_data("PROJECT_ID", "./medical")

Datasets

# List all datasets
datasets = client.datasets()

# Download one annotation split using the release's fixed export format
path = client.dataset_download("DATASET_ID", split_type="train")

# Omit split_type to download all available splits as one bundle
path = client.dataset_download("DATASET_ID")

# Download raw files
folder = client.dataset_download_files("DATASET_ID")

CLI

Projects

# List projects
unitlab project list

# Project details
unitlab project detail PROJECT_ID

# Project members
unitlab project members PROJECT_ID

# Upload data to a project
unitlab project upload PROJECT_ID --directory ./images

# Upload PDFs or medical volumes with the same command
unitlab project upload PROJECT_ID --directory ./pdfs
unitlab project upload PROJECT_ID --directory ./medical

Datasets

# List datasets
unitlab dataset list

# Download one annotation split using the release's fixed export format
unitlab dataset download DATASET_ID --split-type train

# Download all annotation splits as one bundle
unitlab dataset download DATASET_ID

# Download raw files
unitlab dataset download DATASET_ID --download-type files

Documentation

See the full documentation for detailed guides:

License

MIT

Metadata

Release files for unitlab 2.4.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for unitlab 2.4.6
File Size Uploaded
unitlab-2.4.6.tar.gz 12.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for unitlab 2.4.6
File Interpreter ABI Platform
unitlab-2.4.6-py3-none-any.whl Python 3 none any Details

Total release size: 25.1 kB

Release files / unitlab-2.4.6.tar.gz

Download URL unitlab-2.4.6.tar.gz
Size 12.5 kB
Tags Source
SHA-256 checksum
How to use checksums
6ac1a9f236e2cc7a435e51f6ae7b64128b7481058ba1c51073ad04d2e9552b81
BLAKE2b-256 checksum
How to use checksums
bf38a4512d0f18121312fe089171b0eb92e781d033f1279bcabee4cf88c71e95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / unitlab-2.4.6-py3-none-any.whl

Download URL unitlab-2.4.6-py3-none-any.whl
Size 12.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cfffb4480e96835f33a2374429076a94c8829fb7983df896d78ad4945b6a02a0
BLAKE2b-256 checksum
How to use checksums
a3b6b062b115f820cff8f0357234732dca1f44fa5820728527355841c362ed5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

3.0.5

2 release files

3.0.4

2 release files

3.0.3

2 release files

3.0.2

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.5.1

2 release files

2.5.0

2 release files

This release

2.4.6 This release

2 release files

2.4.5

2 release files

2.4.4

2 release files

2.4.3

2 release files

2.4.2

2 release files

2.4.1

2 release files

2.4.0

2 release files

2.3.48

2 release files

2.3.47

1 release file

2.3.46

1 release file

2.3.45

1 release file

2.3.44

2 release files

2.3.43

2 release files

2.3.42

2 release files

2.3.41

2 release files

2.3.40

2 release files

2.3.39

2 release files

2.3.38

2 release files

2.3.37

2 release files

2.3.36

2 release files

2.3.35

2 release files

2.3.9

2 release files

2.3.8

2 release files

2.3.7

2 release files

2.3.6

1 release file

2.3.5

2 release files

2.3.4

2 release files

2.3.3

2 release files

2.3.0

2 release files

2.2.0

1 release file

2.1.9

1 release file

2.1.8

1 release file

2.1.7

1 release file

2.1.6

1 release file

2.1.5

1 release file

2.1.4

1 release file

2.1.3

1 release file

2.1.2

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.9

1 release file

2.0.8

1 release file

2.0.7

1 release file

2.0.6

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.9.9

1 release file

1.9.8

1 release file

1.9.7

1 release file

1.9.6

1 release file

1.9.5

1 release file

1.9.4

1 release file

1.9.3

1 release file

1.9.2

1 release file

1.9.1

1 release file

1.9.0

1 release file

1.8.9

1 release file

1.8.8

1 release file

1.8.7

1 release file

1.8.6

1 release file

1.8.5

1 release file

1.8.4

1 release file

1.8.3

1 release file

1.8.2

1 release file

1.8.1

1 release file

1.8.0

1 release file

1.7.9

1 release file

1.7.8

1 release file

1.7.7

1 release file

1.7.6

1 release file

1.7.5

1 release file

1.7.4

1 release file

1.7.3

1 release file

1.7.2

1 release file

1.7.1

1 release file

1.7.0

1 release file

1.6.0

1 release file

1.5.0

1 release file

1.4.4

1 release file

1.1.0

1 release file

0.9

1 release file

0.8

1 release file

0.7

1 release file

0.6

1 release file

0.5

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page