Project Management

get_info

Retrieves project information.

Return

A msgspec struct containing the projects with the following structure:

Project(
    id='proj_9004a21df7b040ace4674c4879603fe8',
    name='keypoints',
    workspace_id='ws_1c8aab980f174b0296c7e35e88665b13',
    type='ObjectDetection',
    create_date=1701927649302,
    localization='MULTI',
    tags=['cat faces'],
    groups=['main', 'cats'],
    statistic=Statistic(
        tags_count=[TagsCountItem(name='cat faces', count=0)],
        total_assets=28,
        annotated_assets=0,
        total_annotations=0
    )
)

Example

from datature.nexus import Client

project = Client("5aa41e8ba........").get_project("proj_b705a........")
project.get_info()

update

Updates the project with project meta fields.

Parameters

NameTypeDescription
projectdictThe metadata of the project.

Return

A msgspec struct containing the projects with the following structure:

Project(
    id='proj_9004a21df7b040ace4674c4879603fe8',
    name='My Cool Project',
    workspace_id='ws_1c8aab980f174b0296c7e35e88665b13',
    type='ObjectDetection',
    create_date=1701927649302,
    localization='MULTI',
    tags=['cat faces'],
    groups=['main', 'cats'],
    statistic=Statistic(
        tags_count=[TagsCountItem(name='cat faces', count=0)],
        total_assets=28,
        annotated_assets=0,
        total_annotations=0
    )
)

Examples

from datature.nexus import Client, ApiTypes

project = Client("5aa41e8ba........").get_project("proj_b705a........")

project.update({"name":"My Cool Project"})
// Or
project.update(ApiTypes.ProjectMetadata(name="My Cool Project"))

list_insights

Retrieves project insight and metrics of the completed training runs.

Return

A msgspec struct containing the project insights metadata with the following structure:

[ProjectInsight(
    flow_title='Test workflow', 
    run_id='run_4a5d406d-464d-470c-bd7d-e92456621ad3', 
    dataset=InsightDataset(
        data_type='Rectangle', 
        num_classes=1, 
        average_annotations=5.19, 
        total_assets=500, 
        settings=DatasetSettings(
            split_ratio=0.3, 
            shuffle=True, 
            seed=0, 
            using_sliding_window=False
        )
    ), 
    model=InsightModel(
        name='fasterrcnn-inceptionv2-1024x1024', 
        batch_size=2, 
        training_steps=5000, 
        max_detection_per_class=100, 
        solver='momentum', 
        learning_rate=0.04, 
        momentum=0.9
    ), 
    checkpoint=RunCheckpoint(
        strategy='STRAT_ALWAYS_SAVE_LATEST', 
        evaluation_interval=250, 
        metric=None
    ), 
    artifact=InsightArtifact(
        id='artifact_65ae274540259e2a07533532', 
        is_training=False, 
        step=5000, 
        metric=ArtifactMetric(
            total_loss=0.32356, 
            classification_loss=0.012036, 
            localization_loss=0.010706, 
            regularization_loss=0.0
        )
    ),
    create_date=1705912133684
)]

Example

  • View the training insight of all training runs:
from datature.nexus import Client

project = Client("5aa41e8ba........").get_project("proj_b705a........")

project.list_insights()
  • View the training insight of all training runs with EfficientDet D1 640x640:
import datature

project = Client("5aa41e8ba........").get_project("proj_b705a........")

insights = project.list_insights()

filtered = [
    run for run in insights if run.model.name == "efficientdet-d1-640x640"
]

list_users

Retrieves all users in the project, this includes Project Owners, Collaborators, and Datature Experts.

Return

A list of msgspec struct containing the project user metadata with the following structure:

[ProjectUser(
    id='user_6323fea23e292439f31c58cd',
    access_type='Owner',
    email='raighne@datature.io',
    nickname='raighne',
    picture='https://s.gravatar.com/avatar/avatars%2Fra.png'
)]

Examples

from datature.nexus import Client

project = Client("5aa41e8ba........").get_project("proj_b705a........")
project.list_users()