mirror of
https://github.com/clearml/clearml-server
synced 2025-01-31 19:06:55 +00:00
641 lines
21 KiB
Plaintext
641 lines
21 KiB
Plaintext
_description: "Provides support for defining Projects containing Tasks, Models and Dataset Versions."
|
|
_definitions {
|
|
multi_field_pattern_data {
|
|
type: object
|
|
properties {
|
|
pattern {
|
|
description: "Pattern string (regex)"
|
|
type: string
|
|
}
|
|
fields {
|
|
description: "List of field names"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
}
|
|
}
|
|
project {
|
|
type: object
|
|
properties {
|
|
id {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
name {
|
|
description: "Project name"
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Project description"
|
|
type: string
|
|
}
|
|
user {
|
|
description: "Associated user id"
|
|
type: string
|
|
}
|
|
company {
|
|
description: "Company id"
|
|
type: string
|
|
}
|
|
created {
|
|
description: "Creation time"
|
|
type: string
|
|
format: "date-time"
|
|
}
|
|
tags {
|
|
type: array
|
|
description: "User-defined tags"
|
|
items { type: string }
|
|
}
|
|
system_tags {
|
|
type: array
|
|
description: "System tags. This field is reserved for system use, please don't use it."
|
|
items {type: string}
|
|
}
|
|
default_output_destination {
|
|
description: "The default output destination URL for new tasks under this project"
|
|
type: string
|
|
}
|
|
last_update {
|
|
description: """Last project update time. Reflects the last time the project metadata was changed or a task in this project has changed status"""
|
|
type: string
|
|
format: "date-time"
|
|
}
|
|
}
|
|
}
|
|
stats_status_count {
|
|
type: object
|
|
properties {
|
|
total_runtime {
|
|
description: "Total run time of all tasks in project (in seconds)"
|
|
type: integer
|
|
}
|
|
status_count {
|
|
description: "Status counts"
|
|
type: object
|
|
properties {
|
|
created {
|
|
description: "Number of 'created' tasks in project"
|
|
type: integer
|
|
}
|
|
queued {
|
|
description: "Number of 'queued' tasks in project"
|
|
type: integer
|
|
}
|
|
in_progress {
|
|
description: "Number of 'in_progress' tasks in project"
|
|
type: integer
|
|
}
|
|
stopped {
|
|
description: "Number of 'stopped' tasks in project"
|
|
type: integer
|
|
}
|
|
published {
|
|
description: "Number of 'published' tasks in project"
|
|
type: integer
|
|
}
|
|
closed {
|
|
description: "Number of 'closed' tasks in project"
|
|
type: integer
|
|
}
|
|
failed {
|
|
description: "Number of 'failed' tasks in project"
|
|
type: integer
|
|
}
|
|
unknown {
|
|
description: "Number of 'unknown' tasks in project"
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stats {
|
|
type: object
|
|
properties {
|
|
active {
|
|
description: "Stats for active tasks"
|
|
"$ref": "#/definitions/stats_status_count"
|
|
}
|
|
archived {
|
|
description: "Stats for archived tasks"
|
|
"$ref": "#/definitions/stats_status_count"
|
|
}
|
|
}
|
|
}
|
|
projects_get_all_response_single {
|
|
// copy-paste from project definition
|
|
type: object
|
|
properties {
|
|
id {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
name {
|
|
description: "Project name"
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Project description"
|
|
type: string
|
|
}
|
|
user {
|
|
description: "Associated user id"
|
|
type: string
|
|
}
|
|
company {
|
|
description: "Company id"
|
|
type: string
|
|
}
|
|
created {
|
|
description: "Creation time"
|
|
type: string
|
|
format: "date-time"
|
|
}
|
|
tags {
|
|
type: array
|
|
description: "User-defined tags"
|
|
items { type: string }
|
|
}
|
|
system_tags {
|
|
type: array
|
|
description: "System tags. This field is reserved for system use, please don't use it."
|
|
items {type: string}
|
|
}
|
|
default_output_destination {
|
|
description: "The default output destination URL for new tasks under this project"
|
|
type: string
|
|
}
|
|
// extra properties
|
|
stats: {
|
|
description: "Additional project stats"
|
|
"$ref": "#/definitions/stats"
|
|
}
|
|
}
|
|
}
|
|
metric_variant_result {
|
|
type: object
|
|
properties {
|
|
metric {
|
|
description: "Metric name"
|
|
type: string
|
|
}
|
|
metric_hash {
|
|
description: """Metric name hash. Used instead of the metric name when categorizing
|
|
last metrics events in task objects."""
|
|
type: string
|
|
}
|
|
variant {
|
|
description: "Variant name"
|
|
type: string
|
|
}
|
|
variant_hash {
|
|
description: """Variant name hash. Used instead of the variant name when categorizing
|
|
last metrics events in task objects."""
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
tags_request {
|
|
type: object
|
|
properties {
|
|
include_system {
|
|
description: "If set to 'true' then the list of the system tags is also returned. The default value is 'false'"
|
|
type: boolean
|
|
default: false
|
|
}
|
|
projects {
|
|
description: "The list of projects under which the tags are searched. If not passed or empty then all the projects are searched"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
filter {
|
|
description: "Filter on entities to collect tags from"
|
|
type: object
|
|
properties {
|
|
tags {
|
|
description: "The list of tag values to filter by. Use 'null' value to specify empty tags. Use '__Snot' value to specify that the following value should be excluded"
|
|
type: array
|
|
items {type: string}
|
|
}
|
|
system_tags {
|
|
description: "The list of system tag values to filter by. Use 'null' value to specify empty system tags. Use '__Snot' value to specify that the following value should be excluded"
|
|
type: array
|
|
items {type: string}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
tags_response {
|
|
type: object
|
|
properties {
|
|
tags {
|
|
description: "The list of unique tag values"
|
|
type: array
|
|
items {type: string}
|
|
}
|
|
system_tags {
|
|
description: "The list of unique system tag values. Returned only if 'include_system' is set to 'true' in the request"
|
|
type: array
|
|
items {type: string}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
create {
|
|
"2.1" {
|
|
description: "Create a new project"
|
|
request {
|
|
type: object
|
|
required :[
|
|
name
|
|
description
|
|
]
|
|
properties {
|
|
name {
|
|
description: "Project name Unique within the company."
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Project description. "
|
|
type: string
|
|
}
|
|
tags {
|
|
type: array
|
|
description: "User-defined tags"
|
|
items { type: string }
|
|
}
|
|
system_tags {
|
|
type: array
|
|
description: "System tags. This field is reserved for system use, please don't use it."
|
|
items {type: string}
|
|
}
|
|
default_output_destination {
|
|
description: "The default output destination URL for new tasks under this project"
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
id {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
get_by_id {
|
|
"2.1" {
|
|
description: ""
|
|
request {
|
|
type: object
|
|
required: [ project ]
|
|
properties {
|
|
project {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
project {
|
|
description: "Project info"
|
|
"$ref": "#/definitions/project"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
get_all {
|
|
"2.1" {
|
|
description: "Get all the company's projects and all public projects"
|
|
request {
|
|
type: object
|
|
properties {
|
|
id {
|
|
description: "List of IDs to filter by"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
name {
|
|
description: "Get only projects whose name matches this pattern (python regular expression syntax)"
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Get only projects whose description matches this pattern (python regular expression syntax)"
|
|
type: string
|
|
}
|
|
tags {
|
|
description: "User-defined tags list used to filter results. Prepend '-' to tag name to indicate exclusion"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
system_tags {
|
|
description: "System tags list used to filter results. Prepend '-' to system tag name to indicate exclusion"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
order_by {
|
|
description: "List of field names to order by. When search_text is used, '@text_score' can be used as a field representing the text score of returned documents. Use '-' prefix to specify descending order. Optional, recommended when using page"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
page {
|
|
description: "Page number, returns a specific page out of the resulting list of dataviews"
|
|
type: integer
|
|
minimum: 0
|
|
}
|
|
page_size {
|
|
description: "Page size, specifies the number of results returned in each page (last page may contain fewer results)"
|
|
type: integer
|
|
minimum: 1
|
|
}
|
|
search_text {
|
|
description: "Free text search query"
|
|
type: string
|
|
}
|
|
only_fields {
|
|
description: "List of document's field names (nesting is supported using '.', e.g. execution.model_labels). If provided, this list defines the query's projection (only these fields will be returned for each result entry)"
|
|
type: array
|
|
items { type: string }
|
|
}
|
|
_all_ {
|
|
description: "Multi-field pattern condition (all fields match pattern)"
|
|
"$ref": "#/definitions/multi_field_pattern_data"
|
|
}
|
|
_any_ {
|
|
description: "Multi-field pattern condition (any field matches pattern)"
|
|
"$ref": "#/definitions/multi_field_pattern_data"
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
projects {
|
|
description: "Projects list"
|
|
type: array
|
|
items { "$ref": "#/definitions/projects_get_all_response_single" }
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
get_all_ex {
|
|
internal: true
|
|
"2.1": ${get_all."2.1"} {
|
|
request {
|
|
properties {
|
|
include_stats {
|
|
description: "If true, include project statistic in response."
|
|
type: boolean
|
|
default: false
|
|
}
|
|
stats_for_state {
|
|
description: "Report stats include only statistics for tasks in the specified state. If Null is provided, stats for all task states will be returned."
|
|
type: string
|
|
enum: [ active, archived ]
|
|
default: active
|
|
}
|
|
non_public {
|
|
description: "Return only non-public projects"
|
|
type: boolean
|
|
default: false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
update {
|
|
"2.1" {
|
|
description: "Update project information"
|
|
request {
|
|
type: object
|
|
required: [ project ]
|
|
properties {
|
|
project {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
name {
|
|
description: "Project name. Unique within the company."
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Project description. "
|
|
type: string
|
|
}
|
|
description {
|
|
description: "Project description"
|
|
type: string
|
|
}
|
|
tags {
|
|
type: array
|
|
description: "User-defined tags"
|
|
items { type: string }
|
|
}
|
|
system_tags {
|
|
type: array
|
|
description: "System tags. This field is reserved for system use, please don't use it."
|
|
items {type: string}
|
|
}
|
|
default_output_destination {
|
|
description: "The default output destination URL for new tasks under this project"
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
updated {
|
|
description: "Number of projects updated (0 or 1)"
|
|
type: integer
|
|
enum: [ 0, 1 ]
|
|
}
|
|
fields {
|
|
description: "Updated fields names and values"
|
|
type: object
|
|
additionalProperties: true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
delete {
|
|
"2.1" {
|
|
description: "Deletes a project"
|
|
request {
|
|
type: object
|
|
required: [ project ]
|
|
properties {
|
|
project {
|
|
description: "Project id"
|
|
type: string
|
|
}
|
|
force {
|
|
description: """If not true, fails if project has tasks.
|
|
If true, and project has tasks, they will be unassigned"""
|
|
type: boolean
|
|
default: false
|
|
}
|
|
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
deleted {
|
|
description: "Number of projects deleted (0 or 1)"
|
|
type: integer
|
|
}
|
|
disassociated_tasks {
|
|
description: "Number of tasks disassociated from the deleted project"
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
get_unique_metric_variants {
|
|
"2.1" {
|
|
description: """Get all metric/variant pairs reported for tasks in a specific project.
|
|
If no project is specified, metrics/variant paris reported for all tasks will be returned.
|
|
If the project does not exist, an empty list will be returned."""
|
|
request {
|
|
type: object
|
|
properties {
|
|
project {
|
|
description: "Project ID"
|
|
type: string
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
metrics {
|
|
description: "A list of metric variants reported for tasks in this project"
|
|
type: array
|
|
items { "$ref": "#/definitions/metric_variant_result" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
get_hyper_parameters {
|
|
"2.9" {
|
|
description: """Get a list of all hyper parameter sections and names used in tasks within the given project."""
|
|
request {
|
|
type: object
|
|
properties {
|
|
project {
|
|
description: "Project ID"
|
|
type: string
|
|
}
|
|
page {
|
|
description: "Page number"
|
|
default: 0
|
|
type: integer
|
|
}
|
|
page_size {
|
|
description: "Page size"
|
|
default: 500
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
parameters {
|
|
description: "A list of parameter sections and names"
|
|
type: array
|
|
items {type: object}
|
|
}
|
|
remaining {
|
|
description: "Remaining results"
|
|
type: integer
|
|
}
|
|
total {
|
|
description: "Total number of results"
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
get_task_tags {
|
|
"2.8" {
|
|
description: "Get user and system tags used for the tasks under the specified projects"
|
|
request = ${_definitions.tags_request}
|
|
response = ${_definitions.tags_response}
|
|
}
|
|
}
|
|
|
|
get_model_tags {
|
|
"2.8" {
|
|
description: "Get user and system tags used for the models under the specified projects"
|
|
request = ${_definitions.tags_request}
|
|
response = ${_definitions.tags_response}
|
|
}
|
|
}
|
|
|
|
make_public {
|
|
"2.9" {
|
|
description: """Convert company projects to public"""
|
|
request {
|
|
type: object
|
|
properties {
|
|
ids {
|
|
description: "Ids of the projects to convert"
|
|
type: array
|
|
items { type: string}
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
updated {
|
|
description: "Number of projects updated"
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
make_private {
|
|
"2.9" {
|
|
description: """Convert public projects to private"""
|
|
request {
|
|
type: object
|
|
properties {
|
|
ids {
|
|
description: "Ids of the projects to convert. Only the projects originated by the company can be converted"
|
|
type: array
|
|
items { type: string}
|
|
}
|
|
}
|
|
}
|
|
response {
|
|
type: object
|
|
properties {
|
|
updated {
|
|
description: "Number of projects updated"
|
|
type: integer
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |