Skip to main content

Project

It is the combination of an asset type, a dataset to be annotated, an interface adapted to the annotation task, of one or more participants, specific quality parameters, and potentially a specific machine learning model.

type Project {
_: Boolean
assetsMetrics(
metrics: [AssetMetricInput!]
granularity: Granularity!
startDate: DateTime!
endDate: DateTime
): [AssetMetric!]
categoryMetrics(
metrics: [CategoryMetricInput!]
granularity: Granularity!
startDate: DateTime!
endDate: DateTime
): [CategoryMetric!]
labelerMetrics(
metrics: [LabelerMetricInput!]
granularity: Granularity
startDate: DateTime!
endDate: DateTime
timeZone: String
resolveAll: Boolean
): LabelerMetric!
globalLabelerMetricsByUser(
startDate: DateTime!
endDate: DateTime
timeZone: String
limit: Int!
skip: Int!
resolveAll: Boolean
): GlobalSingleUserMetricByUser!
labelerActionUsers(
startDate: DateTime!
endDate: DateTime
resolveAll: Boolean
): [LabelerActionUser!]!
enforceStepSeparation: Boolean
limitAnnotationVisibilityToAssignedClasses: Boolean
steps: [ProjectWorkflowStep!]!
stepGroups: [StepGroup!]!
roles: [ProjectUser!]
myRole: ProjectUser
id: ID!
assetMetadata: JSON!
author: User
canNavigateBetweenAssets: Boolean
canSkipAsset: Boolean
canUseGeneratedShortcut: Boolean
complianceTags: [ComplianceTag]
consensusMark: Float
consensusMarkPerCategory: JSON
consensusTotCoverage: Int
createdAt: DateTime!
dataConnections: [DataConnection]
dataset: [Asset!]
description: String
deletedAt: DateTime
freeAssetSelection: Boolean
limitAccessToAssignedAssets: Boolean
geospatialSettings: JSON
hasCustomPlugins: Boolean!
honeypotMark: Float
inputType: InputType!
instructions: String
interface: JSON!
isAnonymized: Boolean!
jsonInterface: String
ocrLanguages: [OcrLanguage!]
queueStatus: ProjectQueueStatus!
metadataProperties: JSON!
minConsensusSize: Int
numberOfAssets: Int
numberOfSkippedAssets: Int
numberOfOpenIssues: Int
numberOfOpenQuestions: Int
numberOfRemainingAssets: Int
numberOfSolvedIssues: Int
numberOfSolvedQuestions: Int
numberOfReviewedAssets: Int
versions: [ProjectVersion!]
reviewCoverage: Int
rights: [Right!]!
shouldAutoAssign: Boolean
shouldRelaunchKpiComputation: Boolean
title: String
updatedAt: DateTime!
archivedAt: DateTime
useFrameTime: Boolean
useHoneyPot: Boolean
maxDatasetSize: Int!
minAndMaxPriority: [Int!]
useReviewScore: Boolean!
usesConsensus: Boolean!
workflowVersion: WorkflowVersion
}

Fields​

Project._ ● Boolean scalar​

Project.assetsMetrics ● [AssetMetric!] list interface​

Project.assetsMetrics.metrics ● [AssetMetricInput!] list enum​
Project.assetsMetrics.granularity ● Granularity! non-null enum​
Project.assetsMetrics.startDate ● DateTime! non-null scalar​
Project.assetsMetrics.endDate ● DateTime scalar​

Project.categoryMetrics ● [CategoryMetric!] list interface​

Project.categoryMetrics.metrics ● [CategoryMetricInput!] list enum​
Project.categoryMetrics.granularity ● Granularity! non-null enum​
Project.categoryMetrics.startDate ● DateTime! non-null scalar​
Project.categoryMetrics.endDate ● DateTime scalar​

Project.labelerMetrics ● LabelerMetric! non-null object​

Project.labelerMetrics.metrics ● [LabelerMetricInput!] list enum​
Project.labelerMetrics.granularity ● Granularity enum​
Project.labelerMetrics.startDate ● DateTime! non-null scalar​
Project.labelerMetrics.endDate ● DateTime scalar​
Project.labelerMetrics.timeZone ● String scalar​
Project.labelerMetrics.resolveAll ● Boolean scalar​

Project.globalLabelerMetricsByUser ● GlobalSingleUserMetricByUser! non-null object​

Project.globalLabelerMetricsByUser.startDate ● DateTime! non-null scalar​
Project.globalLabelerMetricsByUser.endDate ● DateTime scalar​
Project.globalLabelerMetricsByUser.timeZone ● String scalar​
Project.globalLabelerMetricsByUser.limit ● Int! non-null scalar​
Project.globalLabelerMetricsByUser.skip ● Int! non-null scalar​
Project.globalLabelerMetricsByUser.resolveAll ● Boolean scalar​

Project.labelerActionUsers ● [LabelerActionUser!]! non-null object​

Project.labelerActionUsers.startDate ● DateTime! non-null scalar​
Project.labelerActionUsers.endDate ● DateTime scalar​
Project.labelerActionUsers.resolveAll ● Boolean scalar​

Project.enforceStepSeparation ● Boolean scalar​

Prevents the same user from being assigned to multiple steps in the workflow for a same asset, ensuring independent review and labeling processes.

Default: true

Project.limitAnnotationVisibilityToAssignedClasses ● Boolean scalar​

Limits annotation visibility to only the classes/jobs assigned to the user for the current step. When enabled, users can only see annotations for their assigned classes.

Default: false

Project.steps ● [ProjectWorkflowStep!]! non-null object​

Steps for the workflow of the project

Project.stepGroups ● [StepGroup!]! non-null object​

Step groups for the workflow of the project

Project.roles ● [ProjectUser!] list object​

One or more projectUsers inivited to the project.

Project.myRole ● ProjectUser object​

Project.id ● ID! non-null scalar​

Project.assetMetadata ● JSON! non-null scalar​

Technical field

AssetMetadata groups all different metadata keys present in the assets of the project

Project.author ● User object​

Project.canNavigateBetweenAssets ● Boolean scalar​

Allow user to use next and previous buttons in labeling interface

Project.canSkipAsset ● Boolean scalar​

Allow user to use skip button in labeling interface

Project.canUseGeneratedShortcut ● Boolean scalar​

Allow labelers and reviewers to use automatically generated shortcuts based on the category name to select an annotation task

Project.complianceTags ● [ComplianceTag] list enum​

Compliance tags are used to categorize projects based on the sensitivity of the data being handled and the legal constraints associated with it

List of compliance tags

Project.consensusMark ● Float scalar​

Consensus is quality parameter to measure the agreement between several annotations of the same asset, made by different annotators

The global mark for the project depends on the

Project.consensusMarkPerCategory ● JSON scalar​

Consensus mark per category, averaged over all assets labeled on the project

Project.consensusTotCoverage ● Int scalar​

Consensus is quality parameter to measure the agreement between several annotations of the same asset, made by different annotators

Its coverage is the percentage (between 0 and 100) of the dataset that will be annotated several times.

Project.createdAt ● DateTime! non-null scalar​

Project.dataConnections ● [DataConnection] list object​

Project.dataset ● [Asset!] list object​

The Dataset is all the assets related to this project

Project.description ● String scalar​

Project.deletedAt ● DateTime scalar​

Project.freeAssetSelection ● Boolean scalar​

Let labelers manually choose assets from the project list.

Queue rules still apply when using “Start labeling,” but are bypassed when an asset is picked directly.

Project.limitAccessToAssignedAssets ● Boolean scalar​

When free asset selection is enabled, restrict labelers to only see and select assets that have been specifically assigned to them.

Project.geospatialSettings ● JSON scalar​

Project.hasCustomPlugins ● Boolean! non-null scalar​

True if there is an activated on_custom_interface_click plugin on project

Project.honeypotMark ● Float scalar​

Honeypot is a quality parameter to measure the agreement between a pre-annotated asset (a golden standard) and the annotation made by an annotator. Quality is measured against a predefined truth.

At the project level, it is the mean accross all anotators and all assets selected for honeypot.

Project.inputType ● InputType! non-null enum​

The type of asset for the project :

AUDIO IMAGE PDF TEXT VIDEO LLM_RLHF LLM_INSTR_FOLLOWING LLM_STATIC

Project.instructions ● String scalar​

Project.interface ● JSON! non-null scalar​

A JSON file containing all the informations regarding the graphical user interface configured at the beginning of a project, made available to users, to enable them to perform the annotation task. Duplicate of jsonInterface formatted as as JSON instead of a string.

Project.isAnonymized ● Boolean! non-null scalar​

If a project is anonymized for labelers and reviewers

Project.jsonInterface ● String scalar​

A JSON file containing all the informations regarding the graphical user interface configured at the beginning of a project, made available to users, to enable them to perform the annotation task.

Project.ocrLanguages ● [OcrLanguage!] list enum​

Languages the labeling interface loads for OCR.

Null when the project was never configured, which the interface reads as its eng+fra default.

Project.queueStatus ● ProjectQueueStatus! non-null enum​

The status of the labeling queue.

Project.metadataProperties ● JSON! non-null scalar​

Configuration of metadata properties for the project

Project.minConsensusSize ● Int scalar​

Consensus is quality parameter to measure the agreement between several annotations of the same asset, made by different annotators

Its minimum size is the number of annotators that will have to annotate the same asset. It must be set to a number less than or equal to the total number of annotators. For now, it is limited to at most 10 labelers, for performance reasons.

Project.numberOfAssets ● Int scalar​

Project.numberOfSkippedAssets ● Int scalar​

The number of assets one annotator at least skipped in the project.

Project.numberOfOpenIssues ● Int scalar​

The total number of open issues in the project.

Project.numberOfOpenQuestions ● Int scalar​

The total number of open questions in the project.

Project.numberOfRemainingAssets ● Int scalar​

The number of unlabeled assets in the project

Project.numberOfSolvedIssues ● Int scalar​

The total number of solved issues in the project.

Project.numberOfSolvedQuestions ● Int scalar​

The total number of solved questions in the project.

Project.numberOfReviewedAssets ● Int scalar​

The number of assets reviewed in the project

Project.versions ● [ProjectVersion!] list object​

List of project versions.

Project.reviewCoverage ● Int scalar​

Review is a quality assessment procedure in which the reviewer validate or not the label created on asset. He can create issues on the labels or on several annotations, or send back to annotation.

Its coverage is the percentage (between 0 and 100) of the dataset that will be up for review once labeled

Project.rights ● [Right!]! non-null enum​

The list of project rights.

Project.shouldAutoAssign ● Boolean scalar​

If true, asset is automatically assigned to a labeler on new label. If set to false, auto-assign is disabled.

Project.shouldRelaunchKpiComputation ● Boolean scalar​

Technical field.

Project.title ● String scalar​

Project.updatedAt ● DateTime! non-null scalar​

Project.archivedAt ● DateTime scalar​

Project.useFrameTime ● Boolean scalar​

Use frame time offset for video positioning

Project.useHoneyPot ● Boolean scalar​

Honeypot is a quality parameter to measure the agreement between a pre-annotated asset (a golden standard) and the annotation made by an annotator. Quality is measured against a predefined truth.

True or false depending on if Honeypot is activated for this project.

Project.maxDatasetSize ● Int! non-null scalar​

Get the maxDatasetSize of the project

Project.minAndMaxPriority ● [Int!] list scalar​

Min and max priority of the assets of the project

Project.useReviewScore ● Boolean! non-null scalar​

True if review scores are computed for the project

Project.usesConsensus ● Boolean! non-null scalar​

True if the project does consensus. Computed, not a column: either a step is configured for consensus, or at least one asset was already selected for it — on the asset itself in workflow v1, on an asset step from v2 on.

It says consensus is in play somewhere on the project, not that a given asset is in it. The assets it applies to carry isUsedForConsensus, and those are the ones that cannot be skipped.

Project.workflowVersion ● WorkflowVersion enum​

Workflow version used on the project.

Member Of​

Asset object ● DataConnection object ● DataIntegration object ● Issue object ● ProjectModel object ● ProjectUser object ● ProjectVersion object