SuperAnnotate Python SDK#

Python Versions License Changelog

Welcome to the SuperAnnotate Python Software Development Kit (SDK), which enables Python programmers to create software that incorporates services of the platform and effortlessly integrates SuperAnnotate into their AI process.

Resources#

Authentication#

from superannotate import SAClient
# by environment variable SA_TOKEN
sa_client = SAClient()
# by token
sa_client = SAClient(token='<API key>')
# by config file
# default path is ~/.superannotate/config.ini
sa_client = SAClient(config_path='~/.superannotate/dev_config.ini')

config.ini example#

[DEFAULT]
SA_TOKEN = <API key>
LOGGING_LEVEL = INFO
LOGGING_PATH = /Users/username/data/superannotate_logs

Using superannotate#

from superannotate import SAClient


sa_client = SAClient()

project = 'Dogs'

sa_client.create_project(
        project_name=project,
        project_description='Test project generated via SDK',
        project_type='Vector'
    )

sa_client.create_annotation_class(
    project=project,
    name='dog',
    color='#F9E0FA',
    class_type='tag'
)

sa_client.attach_items(
        project=project,
        attachments=[
            {
                'url': 'https://drive.google.com/uc?export=download&id=1ipOrZNSTlPUkI_hnrW9aUD5yULqqq5Vl',
                'name': 'dog.jpeg'
            }
        ]
    )

sa_client.upload_annotations(
        project=project,
        annotations=[
            {
                'metadata': {'name': 'dog.jpeg'},
                'instances': [
                    {'type': 'tag', 'className': 'dog'}
                ]
            }
        ]
    )

sa_client.get_annotations(project=project, items=['dog.jpeg'])

Installation#

SuperAnnotate python SDK is available on PyPI:

pip install superannotate

The package officially supports Python 3.10+ and was tested under Linux and Windows (Anaconda ) platforms.

Questions and Issues#

For questions and issues please use this repo’s issue tracker on GitHub or contact support@superannotate.com.