Skip to content

Instantly share code, notes, and snippets.

@MikeRalphson
Created March 23, 2020 15:13
Show Gist options
  • Save MikeRalphson/089f43db0bad792ac45a80802ea2b5ca to your computer and use it in GitHub Desktop.
Save MikeRalphson/089f43db0bad792ac45a80802ea2b5ca to your computer and use it in GitHub Desktop.
{
"id": "automl:v1beta1",
"documentationLink": "https://cloud.google.com/automl",
"revision": "20200315",
"discoveryVersion": "v1",
"version_module": true,
"schemas": {
"StructType": {
"description": "`StructType` defines the DataType-s of a STRUCT type.",
"type": "object",
"properties": {
"fields": {
"additionalProperties": {
"$ref": "DataType"
},
"description": "Unordered map of struct field names to their data types.\nFields cannot be added or removed via Update. Their names and\ndata types are still mutable.",
"type": "object"
}
},
"id": "StructType"
},
"TranslationModelMetadata": {
"id": "TranslationModelMetadata",
"description": "Model metadata that is specific to translation.",
"type": "object",
"properties": {
"targetLanguageCode": {
"description": "Output only. The target languge (The BCP-47 language code) that is used for\ntraining.",
"type": "string"
},
"sourceLanguageCode": {
"description": "Output only. Inferred from the dataset.\nThe source languge (The BCP-47 language code) that is used for training.",
"type": "string"
},
"baseModel": {
"description": "The resource name of the model to use as a baseline to train the custom\nmodel. If unset, we use the default base model provided by Google\nTranslate. Format:\n`projects/{project_id}/locations/{location_id}/models/{model_id}`",
"type": "string"
}
}
},
"ImageObjectDetectionAnnotation": {
"description": "Annotation details for image object detection.",
"type": "object",
"properties": {
"boundingBox": {
"$ref": "BoundingPoly",
"description": "Output only. The rectangle representing the object location."
},
"score": {
"type": "number",
"description": "Output only. The confidence that this annotation is positive for the parent example,\nvalue in [0, 1], higher means higher positivity confidence.",
"format": "float"
}
},
"id": "ImageObjectDetectionAnnotation"
},
"ListDatasetsResponse": {
"id": "ListDatasetsResponse",
"description": "Response message for AutoMl.ListDatasets.",
"type": "object",
"properties": {
"datasets": {
"description": "The datasets read.",
"type": "array",
"items": {
"$ref": "Dataset"
}
},
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass to ListDatasetsRequest.page_token to obtain that page.",
"type": "string"
}
}
},
"TranslationDatasetMetadata": {
"type": "object",
"properties": {
"targetLanguageCode": {
"description": "Required. The BCP-47 language code of the target language.",
"type": "string"
},
"sourceLanguageCode": {
"description": "Required. The BCP-47 language code of the source language.",
"type": "string"
}
},
"id": "TranslationDatasetMetadata",
"description": "Dataset metadata that is specific to translation."
},
"VideoObjectTrackingDatasetMetadata": {
"description": "Dataset metadata specific to video object tracking.",
"type": "object",
"properties": {},
"id": "VideoObjectTrackingDatasetMetadata"
},
"InputConfig": {
"description": "Input configuration for ImportData Action.\n\nThe format of input depends on dataset_metadata the Dataset into which\nthe import is happening has. As input source the\ngcs_source\nis expected, unless specified otherwise. Additionally any input .CSV file\nby itself must be 100MB or smaller, unless specified otherwise.\nIf an \"example\" file (that is, image, video etc.) with identical content\n(even if it had different GCS_FILE_PATH) is mentioned multiple times, then\nits label, bounding boxes etc. are appended. The same file should be always\nprovided with the same ML_USE and GCS_FILE_PATH, if it is not, then\nthese values are nondeterministically selected from the given ones.\n\nThe formats are represented in EBNF with commas being literal and with\nnon-terminal symbols defined near the end of this comment. The formats are:\n\n * For Image Classification:\n CSV file(s) with each line in format:\n ML_USE,GCS_FILE_PATH,LABEL,LABEL,...\n GCS_FILE_PATH leads to image of up to 30MB in size. Supported\n extensions: .JPEG, .GIF, .PNG, .WEBP, .BMP, .TIFF, .ICO\n For MULTICLASS classification type, at most one LABEL is allowed\n per image. If an image has not yet been labeled, then it should be\n mentioned just once with no LABEL.\n Some sample rows:\n TRAIN,gs://folder/image1.jpg,daisy\n TEST,gs://folder/image2.jpg,dandelion,tulip,rose\n UNASSIGNED,gs://folder/image3.jpg,daisy\n UNASSIGNED,gs://folder/image4.jpg\n\n * For Image Object Detection:\n CSV file(s) with each line in format:\n ML_USE,GCS_FILE_PATH,(LABEL,BOUNDING_BOX | ,,,,,,,)\n GCS_FILE_PATH leads to image of up to 30MB in size. Supported\n extensions: .JPEG, .GIF, .PNG.\n Each image is assumed to be exhaustively labeled. The minimum\n allowed BOUNDING_BOX edge length is 0.01, and no more than 500\n BOUNDING_BOX-es per image are allowed (one BOUNDING_BOX is defined\n per line). If an image has not yet been labeled, then it should be\n mentioned just once with no LABEL and the \",,,,,,,\" in place of the\n BOUNDING_BOX. For images which are known to not contain any\n bounding boxes, they should be labelled explictly as\n \"NEGATIVE_IMAGE\", followed by \",,,,,,,\" in place of the\n BOUNDING_BOX.\n Sample rows:\n TRAIN,gs://folder/image1.png,car,0.1,0.1,,,0.3,0.3,,\n TRAIN,gs://folder/image1.png,bike,.7,.6,,,.8,.9,,\n UNASSIGNED,gs://folder/im2.png,car,0.1,0.1,0.2,0.1,0.2,0.3,0.1,0.3\n TEST,gs://folder/im3.png,,,,,,,,,\n TRAIN,gs://folder/im4.png,NEGATIVE_IMAGE,,,,,,,,,\n\n * For Video Classification:\n CSV file(s) with each line in format:\n ML_USE,GCS_FILE_PATH\n where ML_USE VALIDATE value should not be used. The GCS_FILE_PATH\n should lead to another .csv file which describes examples that have\n given ML_USE, using the following row format:\n GCS_FILE_PATH,(LABEL,TIME_SEGMENT_START,TIME_SEGMENT_END | ,,)\n Here GCS_FILE_PATH leads to a video of up to 50GB in size and up\n to 3h duration. Supported extensions: .MOV, .MPEG4, .MP4, .AVI.\n TIME_SEGMENT_START and TIME_SEGMENT_END must be within the\n length of the video, and end has to be after the start. Any segment\n of a video which has one or more labels on it, is considered a\n hard negative for all other labels. Any segment with no labels on\n it is considered to be unknown. If a whole video is unknown, then\n it shuold be mentioned just once with \",,\" in place of LABEL,\n TIME_SEGMENT_START,TIME_SEGMENT_END.\n Sample top level CSV file:\n TRAIN,gs://folder/train_videos.csv\n TEST,gs://folder/test_videos.csv\n UNASSIGNED,gs://folder/other_videos.csv\n Sample rows of a CSV file for a particular ML_USE:\n gs://folder/video1.avi,car,120,180.000021\n gs://folder/video1.avi,bike,150,180.000021\n gs://folder/vid2.avi,car,0,60.5\n gs://folder/vid3.avi,,,\n\n * For Video Object Tracking:\n CSV file(s) with each line in format:\n ML_USE,GCS_FILE_PATH\n where ML_USE VALIDATE value should not be used. The GCS_FILE_PATH\n should lead to another .csv file which describes examples that have\n given ML_USE, using one of the following row format:\n GCS_FILE_PATH,LABEL,[INSTANCE_ID],TIMESTAMP,BOUNDING_BOX\n or\n GCS_FILE_PATH,,,,,,,,,,\n Here GCS_FILE_PATH leads to a video of up to 50GB in size and up\n to 3h duration. Supported extensions: .MOV, .MPEG4, .MP4, .AVI.\n Providing INSTANCE_IDs can help to obtain a better model. When\n a specific labeled entity leaves the video frame, and shows up\n afterwards it is not required, albeit preferable, that the same\n INSTANCE_ID is given to it.\n TIMESTAMP must be within the length of the video, the\n BOUNDING_BOX is assumed to be drawn on the closest video's frame\n to the TIMESTAMP. Any mentioned by the TIMESTAMP frame is expected\n to be exhaustively labeled and no more than 500 BOUNDING_BOX-es per\n frame are allowed. If a whole video is unknown, then it should be\n mentioned just once with \",,,,,,,,,,\" in place of LABEL,\n [INSTANCE_ID],TIMESTAMP,BOUNDING_BOX.\n Sample top level CSV file:\n TRAIN,gs://folder/train_videos.csv\n TEST,gs://folder/test_videos.csv\n UNASSIGNED,gs://folder/other_videos.csv\n Seven sample rows of a CSV file for a particular ML_USE:\n gs://folder/video1.avi,car,1,12.10,0.8,0.8,0.9,0.8,0.9,0.9,0.8,0.9\n gs://folder/video1.avi,car,1,12.90,0.4,0.8,0.5,0.8,0.5,0.9,0.4,0.9\n gs://folder/video1.avi,car,2,12.10,.4,.2,.5,.2,.5,.3,.4,.3\n gs://folder/video1.avi,car,2,12.90,.8,.2,,,.9,.3,,\n gs://folder/video1.avi,bike,,12.50,.45,.45,,,.55,.55,,\n gs://folder/video2.avi,car,1,0,.1,.9,,,.9,.1,,\n gs://folder/video2.avi,,,,,,,,,,,\n * For Text Extraction:\n CSV file(s) with each line in format:\n ML_USE,GCS_FILE_PATH\n GCS_FILE_PATH leads to a .JSONL (that is, JSON Lines) file which\n either imports text in-line or as documents. Any given\n .JSONL file must be 100MB or smaller.\n The in-line .JSONL file contains, per line, a proto that wraps a\n TextSnippet proto (in json representation) followed by one or more\n AnnotationPayload protos (called annotations), which have\n display_name and text_extraction detail populated. The given text\n is expected to be annotated exhaustively, for example, if you look\n for animals and text contains \"dolphin\" that is not labeled, then\n \"dolphin\" is assumed to not be an animal. Any given text snippet\n content must be 10KB or smaller, and also be UTF-8 NFC encoded\n (ASCII already is).\n The document .JSONL file contains, per line, a proto that wraps a\n Document proto. The Document proto must have either document_text\n or input_config set. In document_text case, the Document proto may\n also contain the spatial information of the document, including\n layout, document dimension and page number. In input_config case,\n only PDF documents are supported now, and each document may be up\n to 2MB large. Currently, annotations on documents cannot be\n specified at import.\n Three sample CSV rows:\n TRAIN,gs://folder/file1.jsonl\n VALIDATE,gs://folder/file2.jsonl\n TEST,gs://folder/file3.jsonl\n Sample in-line JSON Lines file for entity extraction (presented here\n with artificial line breaks, but the only actual line break is\n denoted by \\n).:\n {\n \"document\": {\n \"document_text\": {\"content\": \"dog cat\"}\n \"layout\": [\n {\n \"text_segment\": {\n \"start_offset\": 0,\n \"end_offset\": 3,\n },\n \"page_number\": 1,\n \"bounding_poly\": {\n \"normalized_vertices\": [\n {\"x\": 0.1, \"y\": 0.1},\n {\"x\": 0.1, \"y\": 0.3},\n {\"x\": 0.3, \"y\": 0.3},\n {\"x\": 0.3, \"y\": 0.1},\n ],\n },\n \"text_segment_type\": TOKEN,\n },\n {\n \"text_segment\": {\n \"start_offset\": 4,\n \"end_offset\": 7,\n },\n \"page_number\": 1,\n \"bounding_poly\": {\n \"normalized_vertices\": [\n {\"x\": 0.4, \"y\": 0.1},\n {\"x\": 0.4, \"y\": 0.3},\n {\"x\": 0.8, \"y\": 0.3},\n {\"x\": 0.8, \"y\": 0.1},\n ],\n },\n \"text_segment_type\": TOKEN,\n }\n\n ],\n \"document_dimensions\": {\n \"width\": 8.27,\n \"height\": 11.69,\n \"unit\": INCH,\n }\n \"page_count\": 1,\n },\n \"annotations\": [\n {\n \"display_name\": \"animal\",\n \"text_extraction\": {\"text_segment\": {\"start_offset\": 0,\n \"end_offset\": 3}}\n },\n {\n \"display_name\": \"animal\",\n \"text_extraction\": {\"text_segment\": {\"start_offset\": 4,\n \"end_offset\": 7}}\n }\n ],\n }\\n\n {\n \"text_snippet\": {\n \"content\": \"This dog is good.\"\n },\n \"annotations\": [\n {\n \"display_name\": \"animal\",\n \"text_extraction\": {\n \"text_segment\": {\"start_offset\": 5, \"end_offset\": 8}\n }\n }\n ]\n }\n Sample document JSON Lines file (presented here with artificial line\n breaks, but the only actual line break is denoted by \\n).:\n {\n \"document\": {\n \"input_config\": {\n \"gcs_source\": { \"input_uris\": [ \"gs://folder/document1.pdf\" ]\n }\n }\n }\n }\\n\n {\n \"document\": {\n \"input_config\": {\n \"gcs_source\": { \"input_uris\": [ \"gs://folder/document2.pdf\" ]\n }\n }\n }\n }\n\n * For Text Classification:\n CSV file(s) with each line in format:\n ML_USE,(TEXT_SNIPPET | GCS_FILE_PATH),LABEL,LABEL,...\n TEXT_SNIPPET and GCS_FILE_PATH are distinguished by a pattern. If\n the column content is a valid gcs file path, i.e. prefixed by\n \"gs://\", it will be treated as a GCS_FILE_PATH, else if the content\n is enclosed within double quotes (\"\"), it is\n treated as a TEXT_SNIPPET. In the GCS_FILE_PATH case, the path\n must lead to a .txt file with UTF-8 encoding, for example,\n \"gs://folder/content.txt\", and the content in it is extracted\n as a text snippet. In TEXT_SNIPPET case, the column content\n excluding quotes is treated as to be imported text snippet. In\n both cases, the text snippet/file size must be within 128kB.\n Maximum 100 unique labels are allowed per CSV row.\n Sample rows:\n TRAIN,\"They have bad food and very rude\",RudeService,BadFood\n TRAIN,gs://folder/content.txt,SlowService\n TEST,\"Typically always bad service there.\",RudeService\n VALIDATE,\"Stomach ache to go.\",BadFood\n\n * For Text Sentiment:\n CSV file(s) with each line in format:\n ML_USE,(TEXT_SNIPPET | GCS_FILE_PATH),SENTIMENT\n TEXT_SNIPPET and GCS_FILE_PATH are distinguished by a pattern. If\n the column content is a valid gcs file path, that is, prefixed by\n \"gs://\", it is treated as a GCS_FILE_PATH, otherwise it is treated\n as a TEXT_SNIPPET. In the GCS_FILE_PATH case, the path\n must lead to a .txt file with UTF-8 encoding, for example,\n \"gs://folder/content.txt\", and the content in it is extracted\n as a text snippet. In TEXT_SNIPPET case, the column content itself\n is treated as to be imported text snippet. In both cases, the\n text snippet must be up to 500 characters long.\n Sample rows:\n TRAIN,\"@freewrytin this is way too good for your product\",2\n TRAIN,\"I need this product so bad\",3\n TEST,\"Thank you for this product.\",4\n VALIDATE,gs://folder/content.txt,2\n\n * For Tables:\n Either\n gcs_source or\n\nbigquery_source\n can be used. All inputs is concatenated into a single\n\nprimary_table\n For gcs_source:\n CSV file(s), where the first row of the first file is the header,\n containing unique column names. If the first row of a subsequent\n file is the same as the header, then it is also treated as a\n header. All other rows contain values for the corresponding\n columns.\n Each .CSV file by itself must be 10GB or smaller, and their total\n size must be 100GB or smaller.\n First three sample rows of a CSV file:\n \"Id\",\"First Name\",\"Last Name\",\"Dob\",\"Addresses\"\n\n\"1\",\"John\",\"Doe\",\"1968-01-22\",\"[{\"status\":\"current\",\"address\":\"123_First_Avenue\",\"city\":\"Seattle\",\"state\":\"WA\",\"zip\":\"11111\",\"numberOfYears\":\"1\"},{\"status\":\"previous\",\"address\":\"456_Main_Street\",\"city\":\"Portland\",\"state\":\"OR\",\"zip\":\"22222\",\"numberOfYears\":\"5\"}]\"\n\n\"2\",\"Jane\",\"Doe\",\"1980-10-16\",\"[{\"status\":\"current\",\"address\":\"789_Any_Avenue\",\"city\":\"Albany\",\"state\":\"NY\",\"zip\":\"33333\",\"numberOfYears\":\"2\"},{\"status\":\"previous\",\"address\":\"321_Main_Street\",\"city\":\"Hoboken\",\"state\":\"NJ\",\"zip\":\"44444\",\"numberOfYears\":\"3\"}]}\n For bigquery_source:\n An URI of a BigQuery table. The user data size of the BigQuery\n table must be 100GB or smaller.\n An imported table must have between 2 and 1,000 columns, inclusive,\n and between 1000 and 100,000,000 rows, inclusive. There are at most 5\n import data running in parallel.\n Definitions:\n ML_USE = \"TRAIN\" | \"VALIDATE\" | \"TEST\" | \"UNASSIGNED\"\n Describes how the given example (file) should be used for model\n training. \"UNASSIGNED\" can be used when user has no preference.\n GCS_FILE_PATH = A path to file on GCS, e.g. \"gs://folder/image1.png\".\n LABEL = A display name of an object on an image, video etc., e.g. \"dog\".\n Must be up to 32 characters long and can consist only of ASCII\n Latin letters A-Z and a-z, underscores(_), and ASCII digits 0-9.\n For each label an AnnotationSpec is created which display_name\n becomes the label; AnnotationSpecs are given back in predictions.\n INSTANCE_ID = A positive integer that identifies a specific instance of a\n labeled entity on an example. Used e.g. to track two cars on\n a video while being able to tell apart which one is which.\n BOUNDING_BOX = VERTEX,VERTEX,VERTEX,VERTEX | VERTEX,,,VERTEX,,\n A rectangle parallel to the frame of the example (image,\n video). If 4 vertices are given they are connected by edges\n in the order provided, if 2 are given they are recognized\n as diagonally opposite vertices of the rectangle.\n VERTEX = COORDINATE,COORDINATE\n First coordinate is horizontal (x), the second is vertical (y).\n COORDINATE = A float in 0 to 1 range, relative to total length of\n image or video in given dimension. For fractions the\n leading non-decimal 0 can be omitted (i.e. 0.3 = .3).\n Point 0,0 is in top left.\n TIME_SEGMENT_START = TIME_OFFSET\n Expresses a beginning, inclusive, of a time segment\n within an example that has a time dimension\n (e.g. video).\n TIME_SEGMENT_END = TIME_OFFSET\n Expresses an end, exclusive, of a time segment within\n an example that has a time dimension (e.g. video).\n TIME_OFFSET = A number of seconds as measured from the start of an\n example (e.g. video). Fractions are allowed, up to a\n microsecond precision. \"inf\" is allowed, and it means the end\n of the example.\n TEXT_SNIPPET = A content of a text snippet, UTF-8 encoded, enclosed within\n double quotes (\"\").\n SENTIMENT = An integer between 0 and\n Dataset.text_sentiment_dataset_metadata.sentiment_max\n (inclusive). Describes the ordinal of the sentiment - higher\n value means a more positive sentiment. All the values are\n completely relative, i.e. neither 0 needs to mean a negative or\n neutral sentiment nor sentiment_max needs to mean a positive one\n - it is just required that 0 is the least positive sentiment\n in the data, and sentiment_max is the most positive one.\n The SENTIMENT shouldn't be confused with \"score\" or \"magnitude\"\n from the previous Natural Language Sentiment Analysis API.\n All SENTIMENT values between 0 and sentiment_max must be\n represented in the imported data. On prediction the same 0 to\n sentiment_max range will be used. The difference between\n neighboring sentiment values needs not to be uniform, e.g. 1 and\n 2 may be similar whereas the difference between 2 and 3 may be\n huge.\n\n Errors:\n If any of the provided CSV files can't be parsed or if more than certain\n percent of CSV rows cannot be processed then the operation fails and\n nothing is imported. Regardless of overall success or failure the per-row\n failures, up to a certain count cap, is listed in\n Operation.metadata.partial_failures.\n ",
"type": "object",
"properties": {
"gcsSource": {
"$ref": "GcsSource",
"description": "The Google Cloud Storage location for the input content.\nIn ImportData, the gcs_source points to a csv with structure described in\nthe comment."
},
"params": {
"description": "Additional domain-specific parameters describing the semantic of the\nimported data, any string must be up to 25000\ncharacters long.\n\n* For Tables:\n `schema_inference_version` - (integer) Required. The version of the\n algorithm that should be used for the initial inference of the\n schema (columns' DataTypes) of the table the data is being imported\n into. Allowed values: \"1\".",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"bigquerySource": {
"$ref": "BigQuerySource",
"description": "The BigQuery location for the input content."
}
},
"id": "InputConfig"
},
"BatchPredictOutputInfo": {
"description": "Further describes this batch predict's output.\nSupplements\n\nBatchPredictOutputConfig.",
"type": "object",
"properties": {
"bigqueryOutputDataset": {
"type": "string",
"description": "The path of the BigQuery dataset created, in bq://projectId.bqDatasetId\nformat, into which the prediction output is written."
},
"gcsOutputDirectory": {
"description": "The full path of the Google Cloud Storage directory created, into which\nthe prediction output is written.",
"type": "string"
}
},
"id": "BatchPredictOutputInfo"
},
"TextExtractionModelMetadata": {
"type": "object",
"properties": {},
"id": "TextExtractionModelMetadata",
"description": "Model metadata that is specific to text extraction."
},
"Layout": {
"description": "Describes the layout information of a text_segment in the document.",
"type": "object",
"properties": {
"pageNumber": {
"description": "Page number of the text_segment in the original document, starts\nfrom 1.",
"format": "int32",
"type": "integer"
},
"boundingPoly": {
"$ref": "BoundingPoly",
"description": "The position of the text_segment in the page.\nContains exactly 4\n\nnormalized_vertices\nand they are connected by edges in the order provided, which will\nrepresent a rectangle parallel to the frame. The\nNormalizedVertex-s are\nrelative to the page.\nCoordinates are based on top-left as point (0,0)."
},
"textSegmentType": {
"type": "string",
"enumDescriptions": [
"Should not be used.",
"The text segment is a token. e.g. word.",
"The text segment is a paragraph.",
"The text segment is a form field.",
"The text segment is the name part of a form field. It will be treated\nas child of another FORM_FIELD TextSegment if its span is subspan of\nanother TextSegment with type FORM_FIELD.",
"The text segment is the text content part of a form field. It will be\ntreated as child of another FORM_FIELD TextSegment if its span is\nsubspan of another TextSegment with type FORM_FIELD.",
"The text segment is a whole table, including headers, and all rows.",
"The text segment is a table's headers. It will be treated as child of\nanother TABLE TextSegment if its span is subspan of another TextSegment\nwith type TABLE.",
"The text segment is a row in table. It will be treated as child of\nanother TABLE TextSegment if its span is subspan of another TextSegment\nwith type TABLE.",
"The text segment is a cell in table. It will be treated as child of\nanother TABLE_ROW TextSegment if its span is subspan of another\nTextSegment with type TABLE_ROW."
],
"enum": [
"TEXT_SEGMENT_TYPE_UNSPECIFIED",
"TOKEN",
"PARAGRAPH",
"FORM_FIELD",
"FORM_FIELD_NAME",
"FORM_FIELD_CONTENTS",
"TABLE",
"TABLE_HEADER",
"TABLE_ROW",
"TABLE_CELL"
],
"description": "The type of the text_segment in document."
},
"textSegment": {
"$ref": "TextSegment",
"description": "Text Segment that represents a segment in\ndocument_text."
}
},
"id": "Layout"
},
"WaitOperationRequest": {
"type": "object",
"properties": {
"timeout": {
"type": "string",
"description": "The maximum duration to wait before timing out. If left blank, the wait\nwill be at most the time permitted by the underlying HTTP/RPC protocol.\nIf RPC context deadline is also specified, the shorter one will be used.",
"format": "google-duration"
}
},
"id": "WaitOperationRequest",
"description": "The request message for Operations.WaitOperation."
},
"SingleCategoryStats": {
"description": "The statistics of a single CATEGORY value.",
"type": "object",
"properties": {
"count": {
"description": "The number of occurrences of this value in the series.",
"format": "int64",
"type": "string"
},
"value": {
"description": "The CATEGORY value.",
"type": "string"
}
},
"id": "SingleCategoryStats"
},
"Float64Stats": {
"description": "The data statistics of a series of FLOAT64 values.",
"type": "object",
"properties": {
"histogramBuckets": {
"type": "array",
"items": {
"$ref": "HistogramBucket"
},
"description": "Histogram buckets of the data series. Sorted by the min value of the\nbucket, ascendingly, and the number of the buckets is dynamically\ngenerated. The buckets are non-overlapping and completely cover whole\nFLOAT64 range with min of first bucket being `\"-Infinity\"`, and max of\nthe last one being `\"Infinity\"`."
},
"mean": {
"description": "The mean of the series.",
"format": "double",
"type": "number"
},
"standardDeviation": {
"type": "number",
"description": "The standard deviation of the series.",
"format": "double"
},
"quantiles": {
"type": "array",
"items": {
"format": "double",
"type": "number"
},
"description": "Ordered from 0 to k k-quantile values of the data series of n values.\nThe value at index i is, approximately, the i*n/k-th smallest value in the\nseries; for i = 0 and i = k these are, respectively, the min and max\nvalues."
}
},
"id": "Float64Stats"
},
"TableSpec": {
"type": "object",
"properties": {
"columnCount": {
"description": "Output only. The number of columns of the table. That is, the number of\nchild ColumnSpec-s.",
"format": "int64",
"type": "string"
},
"inputConfigs": {
"description": "Output only. Input configs via which data currently residing in the table\nhad been imported.",
"type": "array",
"items": {
"$ref": "InputConfig"
}
},
"rowCount": {
"description": "Output only. The number of rows (i.e. examples) in the table.",
"format": "int64",
"type": "string"
},
"validRowCount": {
"description": "Output only. The number of valid rows (i.e. without values that don't match\nDataType-s of their columns).",
"format": "int64",
"type": "string"
},
"etag": {
"description": "Used to perform consistent read-modify-write updates. If not set, a blind\n\"overwrite\" update happens.",
"type": "string"
},
"name": {
"description": "Output only. The resource name of the table spec.\nForm:\n\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/tableSpecs/{table_spec_id}`",
"type": "string"
},
"timeColumnSpecId": {
"description": "column_spec_id of the time column. Only used if the parent dataset's\nml_use_column_spec_id is not set. Used to split rows into TRAIN, VALIDATE\nand TEST sets such that oldest rows go to TRAIN set, newest to TEST, and\nthose in between to VALIDATE.\nRequired type: TIMESTAMP.\nIf both this column and ml_use_column are not set, then ML use of all rows\nwill be assigned by AutoML. NOTE: Updates of this field will instantly\naffect any other users concurrently working with the dataset.",
"type": "string"
}
},
"id": "TableSpec",
"description": "A specification of a relational table.\nThe table's schema is represented via its child column specs. It is\npre-populated as part of ImportData by schema inference algorithm, the\nversion of which is a required parameter of ImportData InputConfig.\nNote: While working with a table, at times the schema may be\ninconsistent with the data in the table (e.g. string in a FLOAT64 column).\nThe consistency validation is done upon creation of a model.\nUsed by:\n * Tables"
},
"ImportDataRequest": {
"description": "Request message for AutoMl.ImportData.",
"type": "object",
"properties": {
"inputConfig": {
"$ref": "InputConfig",
"description": "Required. The desired input location and its domain specific semantics,\nif any."
}
},
"id": "ImportDataRequest"
},
"ExportDataOutputInfo": {
"type": "object",
"properties": {
"gcsOutputDirectory": {
"description": "The full path of the Google Cloud Storage directory created, into which\nthe exported data is written.",
"type": "string"
},
"bigqueryOutputDataset": {
"description": "The path of the BigQuery dataset created, in bq://projectId.bqDatasetId\nformat, into which the exported data is written.",
"type": "string"
}
},
"id": "ExportDataOutputInfo",
"description": "Further describes this export data's output.\nSupplements\nOutputConfig."
},
"DoubleRange": {
"id": "DoubleRange",
"description": "A range between two double numbers.",
"type": "object",
"properties": {
"start": {
"description": "Start of the range, inclusive.",
"format": "double",
"type": "number"
},
"end": {
"description": "End of the range, exclusive.",
"format": "double",
"type": "number"
}
}
},
"TextSnippet": {
"description": "A representation of a text snippet.",
"type": "object",
"properties": {
"content": {
"description": "Required. The content of the text snippet as a string. Up to 250000\ncharacters long.",
"type": "string"
},
"contentUri": {
"description": "Output only. HTTP URI where you can download the content.",
"type": "string"
},
"mimeType": {
"description": "Optional. The format of content. Currently the only two allowed\nvalues are \"text/html\" and \"text/plain\". If left blank, the format is\nautomatically determined from the type of the uploaded content.",
"type": "string"
}
},
"id": "TextSnippet"
},
"TextExtractionEvaluationMetrics": {
"description": "Model evaluation metrics for text extraction problems.",
"type": "object",
"properties": {
"confidenceMetricsEntries": {
"description": "Output only. Metrics that have confidence thresholds.\nPrecision-recall curve can be derived from it.",
"type": "array",
"items": {
"$ref": "TextExtractionEvaluationMetricsConfidenceMetricsEntry"
}
},
"auPrc": {
"type": "number",
"description": "Output only. The Area under precision recall curve metric.",
"format": "float"
}
},
"id": "TextExtractionEvaluationMetrics"
},
"TimeSegment": {
"description": "A time period inside of an example that has a time dimension (e.g. video).",
"type": "object",
"properties": {
"endTimeOffset": {
"type": "string",
"description": "End of the time segment (exclusive), represented as the duration since the\nexample start.",
"format": "google-duration"
},
"startTimeOffset": {
"description": "Start of the time segment (inclusive), represented as the duration since\nthe example start.",
"format": "google-duration",
"type": "string"
}
},
"id": "TimeSegment"
},
"PredictRequest": {
"description": "Request message for PredictionService.Predict.",
"type": "object",
"properties": {
"params": {
"additionalProperties": {
"type": "string"
},
"description": "Additional domain-specific parameters, any string must be up to 25000\ncharacters long.\n\n* For Image Classification:\n\n `score_threshold` - (float) A value from 0.0 to 1.0. When the model\n makes predictions for an image, it will only produce results that have\n at least this confidence score. The default is 0.5.\n\n * For Image Object Detection:\n `score_threshold` - (float) When Model detects objects on the image,\n it will only produce bounding boxes which have at least this\n confidence score. Value in 0 to 1 range, default is 0.5.\n `max_bounding_box_count` - (int64) No more than this number of bounding\n boxes will be returned in the response. Default is 100, the\n requested value may be limited by server.\n* For Tables:\n feature_imp\u003cspan\u003eortan\u003c/span\u003ece - (boolean) Whether feature importance\n should be populated in the returned TablesAnnotation.\n The default is false.",
"type": "object"
},
"payload": {
"$ref": "ExamplePayload",
"description": "Required. Payload to perform a prediction on. The payload must match the\nproblem type that the model was trained to solve."
}
},
"id": "PredictRequest"
},
"TestIamPermissionsResponse": {
"description": "Response message for `TestIamPermissions` method.",
"type": "object",
"properties": {
"permissions": {
"description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
"type": "array",
"items": {
"type": "string"
}
}
},
"id": "TestIamPermissionsResponse"
},
"BatchPredictInputConfig": {
"type": "object",
"properties": {
"gcsSource": {
"$ref": "GcsSource",
"description": "The Google Cloud Storage location for the input content."
},
"bigquerySource": {
"$ref": "BigQuerySource",
"description": "The BigQuery location for the input content."
}
},
"id": "BatchPredictInputConfig",
"description": "Input configuration for BatchPredict Action.\n\nThe format of input depends on the ML problem of the model used for\nprediction. As input source the\ngcs_source\nis expected, unless specified otherwise.\n\nThe formats are represented in EBNF with commas being literal and with\nnon-terminal symbols defined near the end of this comment. The formats\nare:\n\n * For Image Classification:\n CSV file(s) with each line having just a single column:\n GCS_FILE_PATH\n which leads to image of up to 30MB in size. Supported\n extensions: .JPEG, .GIF, .PNG. This path is treated as the ID in\n the Batch predict output.\n Three sample rows:\n gs://folder/image1.jpeg\n gs://folder/image2.gif\n gs://folder/image3.png\n\n * For Image Object Detection:\n CSV file(s) with each line having just a single column:\n GCS_FILE_PATH\n which leads to image of up to 30MB in size. Supported\n extensions: .JPEG, .GIF, .PNG. This path is treated as the ID in\n the Batch predict output.\n Three sample rows:\n gs://folder/image1.jpeg\n gs://folder/image2.gif\n gs://folder/image3.png\n * For Video Classification:\n CSV file(s) with each line in format:\n GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END\n GCS_FILE_PATH leads to video of up to 50GB in size and up to 3h\n duration. Supported extensions: .MOV, .MPEG4, .MP4, .AVI.\n TIME_SEGMENT_START and TIME_SEGMENT_END must be within the\n length of the video, and end has to be after the start.\n Three sample rows:\n gs://folder/video1.mp4,10,40\n gs://folder/video1.mp4,20,60\n gs://folder/vid2.mov,0,inf\n\n * For Video Object Tracking:\n CSV file(s) with each line in format:\n GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END\n GCS_FILE_PATH leads to video of up to 50GB in size and up to 3h\n duration. Supported extensions: .MOV, .MPEG4, .MP4, .AVI.\n TIME_SEGMENT_START and TIME_SEGMENT_END must be within the\n length of the video, and end has to be after the start.\n Three sample rows:\n gs://folder/video1.mp4,10,240\n gs://folder/video1.mp4,300,360\n gs://folder/vid2.mov,0,inf\n * For Text Classification:\n CSV file(s) with each line having just a single column:\n GCS_FILE_PATH | TEXT_SNIPPET\n Any given text file can have size upto 128kB.\n Any given text snippet content must have 60,000 characters or less.\n Three sample rows:\n gs://folder/text1.txt\n \"Some text content to predict\"\n gs://folder/text3.pdf\n Supported file extensions: .txt, .pdf\n\n * For Text Sentiment:\n CSV file(s) with each line having just a single column:\n GCS_FILE_PATH | TEXT_SNIPPET\n Any given text file can have size upto 128kB.\n Any given text snippet content must have 500 characters or less.\n Three sample rows:\n gs://folder/text1.txt\n \"Some text content to predict\"\n gs://folder/text3.pdf\n Supported file extensions: .txt, .pdf\n\n * For Text Extraction\n .JSONL (i.e. JSON Lines) file(s) which either provide text in-line or\n as documents (for a single BatchPredict call only one of the these\n formats may be used).\n The in-line .JSONL file(s) contain per line a proto that\n wraps a temporary user-assigned TextSnippet ID (string up to 2000\n characters long) called \"id\", a TextSnippet proto (in\n json representation) and zero or more TextFeature protos. Any given\n text snippet content must have 30,000 characters or less, and also\n be UTF-8 NFC encoded (ASCII already is). The IDs provided should be\n unique.\n The document .JSONL file(s) contain, per line, a proto that wraps a\n Document proto with input_config set. Only PDF documents are\n supported now, and each document must be up to 2MB large.\n Any given .JSONL file must be 100MB or smaller, and no more than 20\n files may be given.\n Sample in-line JSON Lines file (presented here with artificial line\n breaks, but the only actual line break is denoted by \\n):\n {\n \"id\": \"my_first_id\",\n \"text_snippet\": { \"content\": \"dog car cat\"},\n \"text_features\": [\n {\n \"text_segment\": {\"start_offset\": 4, \"end_offset\": 6},\n \"structural_type\": PARAGRAPH,\n \"bounding_poly\": {\n \"normalized_vertices\": [\n {\"x\": 0.1, \"y\": 0.1},\n {\"x\": 0.1, \"y\": 0.3},\n {\"x\": 0.3, \"y\": 0.3},\n {\"x\": 0.3, \"y\": 0.1},\n ]\n },\n }\n ],\n }\\n\n {\n \"id\": \"2\",\n \"text_snippet\": {\n \"content\": \"An elaborate content\",\n \"mime_type\": \"text/plain\"\n }\n }\n Sample document JSON Lines file (presented here with artificial line\n breaks, but the only actual line break is denoted by \\n).:\n {\n \"document\": {\n \"input_config\": {\n \"gcs_source\": { \"input_uris\": [ \"gs://folder/document1.pdf\" ]\n }\n }\n }\n }\\n\n {\n \"document\": {\n \"input_config\": {\n \"gcs_source\": { \"input_uris\": [ \"gs://folder/document2.pdf\" ]\n }\n }\n }\n }\n\n * For Tables:\n Either\n gcs_source or\n\nbigquery_source.\n GCS case:\n CSV file(s), each by itself 10GB or smaller and total size must be\n 100GB or smaller, where first file must have a header containing\n column names. If the first row of a subsequent file is the same as\n the header, then it is also treated as a header. All other rows\n contain values for the corresponding columns.\n The column names must contain the model's\n\ninput_feature_column_specs'\n\ndisplay_name-s\n (order doesn't matter). The columns corresponding to the model's\n input feature column specs must contain values compatible with the\n column spec's data types. Prediction on all the rows, i.e. the CSV\n lines, will be attempted. For FORECASTING\n\nprediction_type:\n all columns having\n\nTIME_SERIES_AVAILABLE_PAST_ONLY\n type will be ignored.\n First three sample rows of a CSV file:\n \"First Name\",\"Last Name\",\"Dob\",\"Addresses\"\n\n\"John\",\"Doe\",\"1968-01-22\",\"[{\"status\":\"current\",\"address\":\"123_First_Avenue\",\"city\":\"Seattle\",\"state\":\"WA\",\"zip\":\"11111\",\"numberOfYears\":\"1\"},{\"status\":\"previous\",\"address\":\"456_Main_Street\",\"city\":\"Portland\",\"state\":\"OR\",\"zip\":\"22222\",\"numberOfYears\":\"5\"}]\"\n\n\"Jane\",\"Doe\",\"1980-10-16\",\"[{\"status\":\"current\",\"address\":\"789_Any_Avenue\",\"city\":\"Albany\",\"state\":\"NY\",\"zip\":\"33333\",\"numberOfYears\":\"2\"},{\"status\":\"previous\",\"address\":\"321_Main_Street\",\"city\":\"Hoboken\",\"state\":\"NJ\",\"zip\":\"44444\",\"numberOfYears\":\"3\"}]}\n BigQuery case:\n An URI of a BigQuery table. The user data size of the BigQuery\n table must be 100GB or smaller.\n The column names must contain the model's\n\ninput_feature_column_specs'\n\ndisplay_name-s\n (order doesn't matter). The columns corresponding to the model's\n input feature column specs must contain values compatible with the\n column spec's data types. Prediction on all the rows of the table\n will be attempted. For FORECASTING\n\nprediction_type:\n all columns having\n\nTIME_SERIES_AVAILABLE_PAST_ONLY\n type will be ignored.\n\n Definitions:\n GCS_FILE_PATH = A path to file on GCS, e.g. \"gs://folder/video.avi\".\n TEXT_SNIPPET = A content of a text snippet, UTF-8 encoded, enclosed within\n double quotes (\"\")\n TIME_SEGMENT_START = TIME_OFFSET\n Expresses a beginning, inclusive, of a time segment\n within an\n example that has a time dimension (e.g. video).\n TIME_SEGMENT_END = TIME_OFFSET\n Expresses an end, exclusive, of a time segment within\n an example that has a time dimension (e.g. video).\n TIME_OFFSET = A number of seconds as measured from the start of an\n example (e.g. video). Fractions are allowed, up to a\n microsecond precision. \"inf\" is allowed and it means the end\n of the example.\n\n Errors:\n If any of the provided CSV files can't be parsed or if more than certain\n percent of CSV rows cannot be processed then the operation fails and\n prediction does not happen. Regardless of overall success or failure the\n per-row failures, up to a certain count cap, will be listed in\n Operation.metadata.partial_failures."
},
"ExportEvaluatedExamplesRequest": {
"description": "Request message for AutoMl.ExportEvaluatedExamples.",
"type": "object",
"properties": {
"outputConfig": {
"$ref": "ExportEvaluatedExamplesOutputConfig",
"description": "Required. The desired output location and configuration."
}
},
"id": "ExportEvaluatedExamplesRequest"
},
"DocumentInputConfig": {
"id": "DocumentInputConfig",
"description": "Input configuration of a Document.",
"type": "object",
"properties": {
"gcsSource": {
"$ref": "GcsSource",
"description": "The Google Cloud Storage location of the document file. Only a single path\nshould be given.\nMax supported size: 512MB.\nSupported extensions: .PDF."
}
}
},
"Dataset": {
"type": "object",
"properties": {
"textExtractionDatasetMetadata": {
"description": "Metadata for a dataset used for text extraction.",
"$ref": "TextExtractionDatasetMetadata"
},
"videoClassificationDatasetMetadata": {
"$ref": "VideoClassificationDatasetMetadata",
"description": "Metadata for a dataset used for video classification."
},
"tablesDatasetMetadata": {
"$ref": "TablesDatasetMetadata",
"description": "Metadata for a dataset used for Tables."
},
"description": {
"description": "User-provided description of the dataset. The description can be up to\n25000 characters long.",
"type": "string"
},
"imageClassificationDatasetMetadata": {
"$ref": "ImageClassificationDatasetMetadata",
"description": "Metadata for a dataset used for image classification."
},
"etag": {
"description": "Used to perform consistent read-modify-write updates. If not set, a blind\n\"overwrite\" update happens.",
"type": "string"
},
"textSentimentDatasetMetadata": {
"$ref": "TextSentimentDatasetMetadata",
"description": "Metadata for a dataset used for text sentiment."
},
"name": {
"description": "Output only. The resource name of the dataset.\nForm: `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`",
"type": "string"
},
"imageObjectDetectionDatasetMetadata": {
"$ref": "ImageObjectDetectionDatasetMetadata",
"description": "Metadata for a dataset used for image object detection."
},
"translationDatasetMetadata": {
"description": "Metadata for a dataset used for translation.",
"$ref": "TranslationDatasetMetadata"
},
"exampleCount": {
"description": "Output only. The number of examples in the dataset.",
"format": "int32",
"type": "integer"
},
"videoObjectTrackingDatasetMetadata": {
"$ref": "VideoObjectTrackingDatasetMetadata",
"description": "Metadata for a dataset used for video object tracking."
},
"displayName": {
"description": "Required. The name of the dataset to show in the interface. The name can be\nup to 32 characters long and can consist only of ASCII Latin letters A-Z\nand a-z, underscores\n(_), and ASCII digits 0-9.",
"type": "string"
},
"textClassificationDatasetMetadata": {
"$ref": "TextClassificationDatasetMetadata",
"description": "Metadata for a dataset used for text classification."
},
"createTime": {
"description": "Output only. Timestamp when this dataset was created.",
"format": "google-datetime",
"type": "string"
}
},
"id": "Dataset",
"description": "A workspace for solving a single, particular machine learning (ML) problem.\nA workspace contains examples that may be annotated."
},
"DeleteOperationMetadata": {
"id": "DeleteOperationMetadata",
"description": "Details of operations that perform deletes of any entities.",
"type": "object",
"properties": {}
},
"VideoObjectTrackingEvaluationMetrics": {
"type": "object",
"properties": {
"evaluatedFrameCount": {
"description": "Output only. The number of video frames used to create this evaluation.",
"format": "int32",
"type": "integer"
},
"boundingBoxMeanAveragePrecision": {
"description": "Output only. The single metric for bounding boxes evaluation:\nthe mean_average_precision averaged over all bounding_box_metrics_entries.",
"format": "float",
"type": "number"
},
"evaluatedBoundingBoxCount": {
"description": "Output only. The total number of bounding boxes (i.e. summed over all\nframes) the ground truth used to create this evaluation had.",
"format": "int32",
"type": "integer"
},
"boundingBoxMetricsEntries": {
"description": "Output only. The bounding boxes match metrics for each\nIntersection-over-union threshold 0.05,0.10,...,0.95,0.96,0.97,0.98,0.99\nand each label confidence threshold 0.05,0.10,...,0.95,0.96,0.97,0.98,0.99\npair.",
"type": "array",
"items": {
"$ref": "BoundingBoxMetricsEntry"
}
}
},
"id": "VideoObjectTrackingEvaluationMetrics",
"description": "Model evaluation metrics for video object tracking problems.\nEvaluates prediction quality of both labeled bounding boxes and labeled\ntracks (i.e. series of bounding boxes sharing same label and instance ID)."
},
"ColumnSpec": {
"type": "object",
"properties": {
"dataType": {
"$ref": "DataType",
"description": "The data type of elements stored in the column."
},
"name": {
"type": "string",
"description": "Output only. The resource name of the column specs.\nForm:\n\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/tableSpecs/{table_spec_id}/columnSpecs/{column_spec_id}`"
},
"topCorrelatedColumns": {
"type": "array",
"items": {
"$ref": "CorrelatedColumn"
},
"description": "Deprecated."
},
"dataStats": {
"$ref": "DataStats",
"description": "Output only. Stats of the series of values in the column.\nThis field may be stale, see the ancestor's\nDataset.tables_dataset_metadata.stats_update_time field\nfor the timestamp at which these stats were last updated."
},
"displayName": {
"type": "string",
"description": "Output only. The name of the column to show in the interface. The name can\nbe up to 100 characters long and can consist only of ASCII Latin letters\nA-Z and a-z, ASCII digits 0-9, underscores(_), and forward slashes(/), and\nmust start with a letter or a digit."
},
"etag": {
"type": "string",
"description": "Used to perform consistent read-modify-write updates. If not set, a blind\n\"overwrite\" update happens."
}
},
"id": "ColumnSpec",
"description": "A representation of a column in a relational table. When listing them, column specs are returned in the same order in which they were\ngiven on import .\nUsed by:\n * Tables"
},
"NormalizedVertex": {
"description": "A vertex represents a 2D point in the image.\nThe normalized vertex coordinates are between 0 to 1 fractions relative to\nthe original plane (image, video). E.g. if the plane (e.g. whole image) would\nhave size 10 x 20 then a point with normalized coordinates (0.1, 0.3) would\nbe at the position (1, 6) on that plane.",
"type": "object",
"properties": {
"y": {
"description": "Required. Vertical coordinate.",
"format": "float",
"type": "number"
},
"x": {
"type": "number",
"description": "Required. Horizontal coordinate.",
"format": "float"
}
},
"id": "NormalizedVertex"
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"type": "object",
"properties": {},
"id": "Empty"
},
"ImageObjectDetectionModelDeploymentMetadata": {
"type": "object",
"properties": {
"nodeCount": {
"type": "string",
"description": "Input only. The number of nodes to deploy the model on. A node is an\nabstraction of a machine resource, which can handle online prediction QPS\nas given in the model's\n\nqps_per_node.\nMust be between 1 and 100, inclusive on both ends.",
"format": "int64"
}
},
"id": "ImageObjectDetectionModelDeploymentMetadata",
"description": "Model deployment metadata specific to Image Object Detection."
},
"TextSegment": {
"type": "object",
"properties": {
"endOffset": {
"description": "Required. Zero-based character index of the first character past the end of\nthe text segment (counting character from the beginning of the text).\nThe character at the end_offset is NOT included in the text segment.",
"format": "int64",
"type": "string"
},
"startOffset": {
"description": "Required. Zero-based character index of the first character of the text\nsegment (counting characters from the beginning of the text).",
"format": "int64",
"type": "string"
},
"content": {
"description": "Output only. The content of the TextSegment.",
"type": "string"
}
},
"id": "TextSegment",
"description": "A contiguous part of a text (string), assuming it has an UTF-8 NFC encoding."
},
"GcsDestination": {
"description": "The Google Cloud Storage location where the output is to be written to.",
"type": "object",
"properties": {
"outputUriPrefix": {
"type": "string",
"description": "Required. Google Cloud Storage URI to output directory, up to 2000\ncharacters long.\nAccepted forms:\n* Prefix path: gs://bucket/directory\nThe requesting user must have write permission to the bucket.\nThe directory is created if it doesn't exist."
}
},
"id": "GcsDestination"
},
"TextSentimentAnnotation": {
"id": "TextSentimentAnnotation",
"description": "Contains annotation details specific to text sentiment.",
"type": "object",
"properties": {
"sentiment": {
"description": "Output only. The sentiment with the semantic, as given to the\nAutoMl.ImportData when populating the dataset from which the model used\nfor the prediction had been trained.\nThe sentiment values are between 0 and\nDataset.text_sentiment_dataset_metadata.sentiment_max (inclusive),\nwith higher value meaning more positive sentiment. They are completely\nrelative, i.e. 0 means least positive sentiment and sentiment_max means\nthe most positive from the sentiments present in the train data. Therefore\n e.g. if train data had only negative sentiment, then sentiment_max, would\nbe still negative (although least negative).\nThe sentiment shouldn't be confused with \"score\" or \"magnitude\"\nfrom the previous Natural Language Sentiment Analysis API.",
"format": "int32",
"type": "integer"
}
}
},
"BigQueryDestination": {
"id": "BigQueryDestination",
"description": "The BigQuery location for the output content.",
"type": "object",
"properties": {
"outputUri": {
"description": "Required. BigQuery URI to a project, up to 2000 characters long.\nAccepted forms:\n* BigQuery path e.g. bq://projectId",
"type": "string"
}
}
},
"TranslationAnnotation": {
"description": "Annotation details specific to translation.",
"type": "object",
"properties": {
"translatedContent": {
"$ref": "TextSnippet",
"description": "Output only . The translated content."
}
},
"id": "TranslationAnnotation"
},
"DocumentDimensions": {
"type": "object",
"properties": {
"width": {
"description": "Width value of the document, works together with the unit.",
"format": "float",
"type": "number"
},
"unit": {
"enum": [
"DOCUMENT_DIMENSION_UNIT_UNSPECIFIED",
"INCH",
"CENTIMETER",
"POINT"
],
"description": "Unit of the dimension.",
"type": "string",
"enumDescriptions": [
"Should not be used.",
"Document dimension is measured in inches.",
"Document dimension is measured in centimeters.",
"Document dimension is measured in points. 72 points = 1 inch."
]
},
"height": {
"description": "Height value of the document, works together with the unit.",
"format": "float",
"type": "number"
}
},
"id": "DocumentDimensions",
"description": "Message that describes dimension of a document."
},
"Operation": {
"description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
"type": "object",
"properties": {
"metadata": {
"additionalProperties": {
"type": "any",
"description": "Properties of the object. Contains field @type with type URL."
},
"description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
"type": "object"
},
"done": {
"description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
"type": "boolean"
},
"response": {
"description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
"type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
}
},
"name": {
"description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.",
"type": "string"
},
"error": {
"description": "The error result of the operation in case of failure or cancellation.",
"$ref": "Status"
}
},
"id": "Operation"
},
"TextSentimentModelMetadata": {
"type": "object",
"properties": {},
"id": "TextSentimentModelMetadata",
"description": "Model metadata that is specific to text sentiment."
},
"Status": {
"description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).",
"type": "object",
"properties": {
"details": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "any",
"description": "Properties of the object. Contains field @type with type URL."
}
},
"description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use."
},
"code": {
"description": "The status code, which should be an enum value of google.rpc.Code.",
"format": "int32",
"type": "integer"
},
"message": {
"type": "string",
"description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client."
}
},
"id": "Status"
},
"VideoClassificationDatasetMetadata": {
"description": "Dataset metadata specific to video classification.\nAll Video Classification datasets are treated as multi label.",
"type": "object",
"properties": {},
"id": "VideoClassificationDatasetMetadata"
},
"Binding": {
"description": "Associates `members` with a `role`.",
"type": "object",
"properties": {
"condition": {
"description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.",
"$ref": "Expr"
},
"members": {
"description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `[email protected]` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `[email protected]`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `[email protected]`.\n\n* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a user that has been recently deleted. For\n example, `[email protected]?uid=123456789012345678901`. If the user is\n recovered, this value reverts to `user:{emailid}` and the recovered user\n retains the role in the binding.\n\n* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus\n unique identifier) representing a service account that has been recently\n deleted. For example,\n `[email protected]?uid=123456789012345678901`.\n If the service account is undeleted, this value reverts to\n `serviceAccount:{emailid}` and the undeleted service account retains the\n role in the binding.\n\n* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a Google group that has been recently\n deleted. For example, `[email protected]?uid=123456789012345678901`. If\n the group is recovered, this value reverts to `group:{emailid}` and the\n recovered group retains the role in the binding.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
"type": "array",
"items": {
"type": "string"
}
},
"role": {
"type": "string",
"description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`."
}
},
"id": "Binding"
},
"CorrelatedColumn": {
"type": "object",
"properties": {
"correlationStats": {
"$ref": "CorrelationStats",
"description": "Correlation between this and the in-context column."
},
"columnSpecId": {
"description": "The column_spec_id of the correlated column, which belongs to the same\ntable as the in-context column.",
"type": "string"
}
},
"id": "CorrelatedColumn",
"description": "Identifies the table's column, and its correlation with the column this\nColumnSpec describes."
},
"BatchPredictOutputConfig": {
"type": "object",
"properties": {
"gcsDestination": {
"$ref": "GcsDestination",
"description": "The Google Cloud Storage location of the directory where the output is to\nbe written to."
},
"bigqueryDestination": {
"description": "The BigQuery location where the output is to be written to.",
"$ref": "BigQueryDestination"
}
},
"id": "BatchPredictOutputConfig",
"description": "Output configuration for BatchPredict Action.\n\nAs destination the\n\ngcs_destination\nmust be set unless specified otherwise for a domain. If gcs_destination is\nset then in the given directory a new directory is created. Its name\nwill be\n\"prediction-\u003cmodel-display-name\u003e-\u003ctimestamp-of-prediction-call\u003e\",\nwhere timestamp is in YYYY-MM-DDThh:mm:ss.sssZ ISO-8601 format. The contents\nof it depends on the ML problem the predictions are made for.\n\n * For Image Classification:\n In the created directory files `image_classification_1.jsonl`,\n `image_classification_2.jsonl`,...,`image_classification_N.jsonl`\n will be created, where N may be 1, and depends on the\n total number of the successfully predicted images and annotations.\n A single image will be listed only once with all its annotations,\n and its annotations will never be split across files.\n Each .JSONL file will contain, per line, a JSON representation of a\n proto that wraps image's \"ID\" : \"\u003cid_value\u003e\" followed by a list of\n zero or more AnnotationPayload protos (called annotations), which\n have classification detail populated.\n If prediction for any image failed (partially or completely), then an\n additional `errors_1.jsonl`, `errors_2.jsonl`,..., `errors_N.jsonl`\n files will be created (N depends on total number of failed\n predictions). These files will have a JSON representation of a proto\n that wraps the same \"ID\" : \"\u003cid_value\u003e\" but here followed by\n exactly one\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n containing only `code` and `message`fields.\n\n * For Image Object Detection:\n In the created directory files `image_object_detection_1.jsonl`,\n `image_object_detection_2.jsonl`,...,`image_object_detection_N.jsonl`\n will be created, where N may be 1, and depends on the\n total number of the successfully predicted images and annotations.\n Each .JSONL file will contain, per line, a JSON representation of a\n proto that wraps image's \"ID\" : \"\u003cid_value\u003e\" followed by a list of\n zero or more AnnotationPayload protos (called annotations), which\n have image_object_detection detail populated. A single image will\n be listed only once with all its annotations, and its annotations\n will never be split across files.\n If prediction for any image failed (partially or completely), then\n additional `errors_1.jsonl`, `errors_2.jsonl`,..., `errors_N.jsonl`\n files will be created (N depends on total number of failed\n predictions). These files will have a JSON representation of a proto\n that wraps the same \"ID\" : \"\u003cid_value\u003e\" but here followed by\n exactly one\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n containing only `code` and `message`fields.\n * For Video Classification:\n In the created directory a video_classification.csv file, and a .JSON\n file per each video classification requested in the input (i.e. each\n line in given CSV(s)), will be created.\n\n The format of video_classification.csv is:\n\nGCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS\n where:\n GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END = matches 1 to 1\n the prediction input lines (i.e. video_classification.csv has\n precisely the same number of lines as the prediction input had.)\n JSON_FILE_NAME = Name of .JSON file in the output directory, which\n contains prediction responses for the video time segment.\n STATUS = \"OK\" if prediction completed successfully, or an error code\n with message otherwise. If STATUS is not \"OK\" then the .JSON file\n for that line may not exist or be empty.\n\n Each .JSON file, assuming STATUS is \"OK\", will contain a list of\n AnnotationPayload protos in JSON format, which are the predictions\n for the video time segment the file is assigned to in the\n video_classification.csv. All AnnotationPayload protos will have\n video_classification field set, and will be sorted by\n video_classification.type field (note that the returned types are\n governed by `classifaction_types` parameter in\n PredictService.BatchPredictRequest.params).\n\n * For Video Object Tracking:\n In the created directory a video_object_tracking.csv file will be\n created, and multiple files video_object_trackinng_1.json,\n video_object_trackinng_2.json,..., video_object_trackinng_N.json,\n where N is the number of requests in the input (i.e. the number of\n lines in given CSV(s)).\n\n The format of video_object_tracking.csv is:\n\nGCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS\n where:\n GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END = matches 1 to 1\n the prediction input lines (i.e. video_object_tracking.csv has\n precisely the same number of lines as the prediction input had.)\n JSON_FILE_NAME = Name of .JSON file in the output directory, which\n contains prediction responses for the video time segment.\n STATUS = \"OK\" if prediction completed successfully, or an error\n code with message otherwise. If STATUS is not \"OK\" then the .JSON\n file for that line may not exist or be empty.\n\n Each .JSON file, assuming STATUS is \"OK\", will contain a list of\n AnnotationPayload protos in JSON format, which are the predictions\n for each frame of the video time segment the file is assigned to in\n video_object_tracking.csv. All AnnotationPayload protos will have\n video_object_tracking field set.\n * For Text Classification:\n In the created directory files `text_classification_1.jsonl`,\n `text_classification_2.jsonl`,...,`text_classification_N.jsonl`\n will be created, where N may be 1, and depends on the\n total number of inputs and annotations found.\n\n Each .JSONL file will contain, per line, a JSON representation of a\n proto that wraps input text snippet or input text file and a list of\n zero or more AnnotationPayload protos (called annotations), which\n have classification detail populated. A single text snippet or file\n will be listed only once with all its annotations, and its\n annotations will never be split across files.\n\n If prediction for any text snippet or file failed (partially or\n completely), then additional `errors_1.jsonl`, `errors_2.jsonl`,...,\n `errors_N.jsonl` files will be created (N depends on total number of\n failed predictions). These files will have a JSON representation of a\n proto that wraps input text snippet or input text file followed by\n exactly one\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n containing only `code` and `message`.\n\n * For Text Sentiment:\n In the created directory files `text_sentiment_1.jsonl`,\n `text_sentiment_2.jsonl`,...,`text_sentiment_N.jsonl`\n will be created, where N may be 1, and depends on the\n total number of inputs and annotations found.\n\n Each .JSONL file will contain, per line, a JSON representation of a\n proto that wraps input text snippet or input text file and a list of\n zero or more AnnotationPayload protos (called annotations), which\n have text_sentiment detail populated. A single text snippet or file\n will be listed only once with all its annotations, and its\n annotations will never be split across files.\n\n If prediction for any text snippet or file failed (partially or\n completely), then additional `errors_1.jsonl`, `errors_2.jsonl`,...,\n `errors_N.jsonl` files will be created (N depends on total number of\n failed predictions). These files will have a JSON representation of a\n proto that wraps input text snippet or input text file followed by\n exactly one\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n containing only `code` and `message`.\n\n * For Text Extraction:\n In the created directory files `text_extraction_1.jsonl`,\n `text_extraction_2.jsonl`,...,`text_extraction_N.jsonl`\n will be created, where N may be 1, and depends on the\n total number of inputs and annotations found.\n The contents of these .JSONL file(s) depend on whether the input\n used inline text, or documents.\n If input was inline, then each .JSONL file will contain, per line,\n a JSON representation of a proto that wraps given in request text\n snippet's \"id\" (if specified), followed by input text snippet,\n and a list of zero or more\n AnnotationPayload protos (called annotations), which have\n text_extraction detail populated. A single text snippet will be\n listed only once with all its annotations, and its annotations will\n never be split across files.\n If input used documents, then each .JSONL file will contain, per\n line, a JSON representation of a proto that wraps given in request\n document proto, followed by its OCR-ed representation in the form\n of a text snippet, finally followed by a list of zero or more\n AnnotationPayload protos (called annotations), which have\n text_extraction detail populated and refer, via their indices, to\n the OCR-ed text snippet. A single document (and its text snippet)\n will be listed only once with all its annotations, and its\n annotations will never be split across files.\n If prediction for any text snippet failed (partially or completely),\n then additional `errors_1.jsonl`, `errors_2.jsonl`,...,\n `errors_N.jsonl` files will be created (N depends on total number of\n failed predictions). These files will have a JSON representation of a\n proto that wraps either the \"id\" : \"\u003cid_value\u003e\" (in case of inline)\n or the document proto (in case of document) but here followed by\n exactly one\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n containing only `code` and `message`.\n\n * For Tables:\n Output depends on whether\n\ngcs_destination\n or\n\nbigquery_destination\n is set (either is allowed).\n GCS case:\n In the created directory files `tables_1.csv`, `tables_2.csv`,...,\n `tables_N.csv` will be created, where N may be 1, and depends on\n the total number of the successfully predicted rows.\n For all CLASSIFICATION\n\nprediction_type-s:\n Each .csv file will contain a header, listing all columns'\n\ndisplay_name-s\n given on input followed by M target column names in the format of\n\n\"\u003ctarget_column_specs\n\ndisplay_name\u003e_\u003ctarget\n value\u003e_score\" where M is the number of distinct target values,\n i.e. number of distinct values in the target column of the table\n used to train the model. Subsequent lines will contain the\n respective values of successfully predicted rows, with the last,\n i.e. the target, columns having the corresponding prediction\n scores.\n For REGRESSION and FORECASTING\n\nprediction_type-s:\n Each .csv file will contain a header, listing all columns'\n display_name-s given\n on input followed by the predicted target column with name in the\n format of\n\n\"predicted_\u003ctarget_column_specs\n\ndisplay_name\u003e\"\n Subsequent lines will contain the respective values of\n successfully predicted rows, with the last, i.e. the target,\n column having the predicted target value.\n If prediction for any rows failed, then an additional\n `errors_1.csv`, `errors_2.csv`,..., `errors_N.csv` will be\n created (N depends on total number of failed rows). These files\n will have analogous format as `tables_*.csv`, but always with a\n single target column having\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n represented as a JSON string, and containing only `code` and\n `message`.\n BigQuery case:\n\nbigquery_destination\n pointing to a BigQuery project must be set. In the given project a\n new dataset will be created with name\n `prediction_\u003cmodel-display-name\u003e_\u003ctimestamp-of-prediction-call\u003e`\n where \u003cmodel-display-name\u003e will be made\n BigQuery-dataset-name compatible (e.g. most special characters will\n become underscores), and timestamp will be in\n YYYY_MM_DDThh_mm_ss_sssZ \"based on ISO-8601\" format. In the dataset\n two tables will be created, `predictions`, and `errors`.\n The `predictions` table's column names will be the input columns'\n\ndisplay_name-s\n followed by the target column with name in the format of\n\n\"predicted_\u003ctarget_column_specs\n\ndisplay_name\u003e\"\n The input feature columns will contain the respective values of\n successfully predicted rows, with the target column having an\n ARRAY of\n\nAnnotationPayloads,\n represented as STRUCT-s, containing\n TablesAnnotation.\n The `errors` table contains rows for which the prediction has\n failed, it has analogous input columns while the target column name\n is in the format of\n\n\"errors_\u003ctarget_column_specs\n\ndisplay_name\u003e\",\n and as a value has\n\n[`google.rpc.Status`](https:\n//github.com/googleapis/googleapis/blob/master/google/rpc/status.proto)\n represented as a STRUCT, and containing only `code` and `message`."
},
"PredictResponse": {
"description": "Response message for PredictionService.Predict.",
"type": "object",
"properties": {
"metadata": {
"description": "Additional domain-specific prediction response metadata.\n\n* For Image Object Detection:\n `max_bounding_box_count` - (int64) At most that many bounding boxes per\n image could have been returned.\n\n* For Text Sentiment:\n `sentiment_score` - (float, deprecated) A value between -1 and 1,\n -1 maps to least positive sentiment, while 1 maps to the most positive\n one and the higher the score, the more positive the sentiment in the\n document is. Yet these values are relative to the training data, so\n e.g. if all data was positive then -1 will be also positive (though\n the least).\n The sentiment_score shouldn't be confused with \"score\" or \"magnitude\"\n from the previous Natural Language Sentiment Analysis API.",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"payload": {
"description": "Prediction result.\nTranslation and Text Sentiment will return precisely one payload.",
"type": "array",
"items": {
"$ref": "AnnotationPayload"
}
},
"preprocessedInput": {
"$ref": "ExamplePayload",
"description": "The preprocessed example that AutoML actually makes prediction on.\nEmpty if AutoML does not preprocess the input example.\n* For Text Extraction:\n If the input is a .pdf file, the OCR'ed text will be provided in\n document_text."
}
},
"id": "PredictResponse"
},
"ListOperationsResponse": {
"id": "ListOperationsResponse",
"description": "The response message for Operations.ListOperations.",
"type": "object",
"properties": {
"operations": {
"description": "A list of operations that matches the specified filter in the request.",
"type": "array",
"items": {
"$ref": "Operation"
}
},
"nextPageToken": {
"description": "The standard List next-page token.",
"type": "string"
}
}
},
"DataStats": {
"description": "The data statistics of a series of values that share the same DataType.",
"type": "object",
"properties": {
"arrayStats": {
"$ref": "ArrayStats",
"description": "The statistics for ARRAY DataType."
},
"stringStats": {
"$ref": "StringStats",
"description": "The statistics for STRING DataType."
},
"structStats": {
"description": "The statistics for STRUCT DataType.",
"$ref": "StructStats"
},
"categoryStats": {
"$ref": "CategoryStats",
"description": "The statistics for CATEGORY DataType."
},
"distinctValueCount": {
"type": "string",
"description": "The number of distinct values.",
"format": "int64"
},
"validValueCount": {
"type": "string",
"description": "The number of values that are valid.",
"format": "int64"
},
"nullValueCount": {
"type": "string",
"description": "The number of values that are null.",
"format": "int64"
},
"float64Stats": {
"$ref": "Float64Stats",
"description": "The statistics for FLOAT64 DataType."
},
"timestampStats": {
"$ref": "TimestampStats",
"description": "The statistics for TIMESTAMP DataType."
}
},
"id": "DataStats"
},
"TablesAnnotation": {
"description": "Contains annotation details specific to Tables.",
"type": "object",
"properties": {
"score": {
"description": "Output only. A confidence estimate between 0.0 and 1.0, inclusive. A higher\nvalue means greater confidence in the returned value.\nFor\n\ntarget_column_spec\nof FLOAT64 data type the score is not populated.",
"format": "float",
"type": "number"
},
"predictionInterval": {
"description": "Output only. Only populated when\n\ntarget_column_spec\nhas FLOAT64 data type. An interval in which the exactly correct target\nvalue has 95% chance to be in.",
"$ref": "DoubleRange"
},
"value": {
"type": "any",
"description": "The predicted value of the row's\n\ntarget_column.\nThe value depends on the column's DataType:\n\n* CATEGORY - the predicted (with the above confidence `score`) CATEGORY\n value.\n\n* FLOAT64 - the predicted (with above `prediction_interval`) FLOAT64 value."
},
"baselineScore": {
"description": "Output only. Stores the prediction score for the baseline example, which\nis defined as the example with all values set to their baseline values.\nThis is used as part of the Sampled Shapley explanation of the model's\nprediction. This field is populated only when feature importance is\nrequested. For regression models, this holds the baseline prediction for\nthe baseline example. For classification models, this holds the baseline\nprediction for the baseline example for the argmax class.",
"format": "float",
"type": "number"
},
"tablesModelColumnInfo": {
"description": "Output only. Auxiliary information for each of the model's\n\ninput_feature_column_specs\nwith respect to this particular prediction.\nIf no other fields than\n\ncolumn_spec_name\nand\n\ncolumn_display_name\nwould be populated, then this whole field is not.",
"type": "array",
"items": {
"$ref": "TablesModelColumnInfo"
}
}
},
"id": "TablesAnnotation"
},
"DeployModelOperationMetadata": {
"description": "Details of DeployModel operation.",
"type": "object",
"properties": {},
"id": "DeployModelOperationMetadata"
},
"UndeployModelOperationMetadata": {
"id": "UndeployModelOperationMetadata",
"description": "Details of UndeployModel operation.",
"type": "object",
"properties": {}
},
"ClassificationEvaluationMetricsConfusionMatrixRow": {
"type": "object",
"properties": {
"exampleCount": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
},
"description": "Output only. Value of the specific cell in the confusion matrix.\nThe number of values each row has (i.e. the length of the row) is equal\nto the length of the `annotation_spec_id` field or, if that one is not\npopulated, length of the display_name field."
}
},
"id": "ClassificationEvaluationMetricsConfusionMatrixRow",
"description": "Output only. A row in the confusion matrix."
},
"BoundingBoxMetricsEntry": {
"description": "Bounding box matching model metrics for a single intersection-over-union\nthreshold and multiple label match confidence thresholds.",
"type": "object",
"properties": {
"meanAveragePrecision": {
"type": "number",
"description": "Output only. The mean average precision, most often close to au_prc.",
"format": "float"
},
"confidenceMetricsEntries": {
"description": "Output only. Metrics for each label-match confidence_threshold from\n0.05,0.10,...,0.95,0.96,0.97,0.98,0.99. Precision-recall curve is\nderived from them.",
"type": "array",
"items": {
"$ref": "BoundingBoxMetricsEntryConfidenceMetricsEntry"
}
},
"iouThreshold": {
"description": "Output only. The intersection-over-union threshold value used to compute\nthis metrics entry.",
"format": "float",
"type": "number"
}
},
"id": "BoundingBoxMetricsEntry"
},
"StringStats": {
"description": "The data statistics of a series of STRING values.",
"type": "object",
"properties": {
"topUnigramStats": {
"type": "array",
"items": {
"$ref": "UnigramStats"
},
"description": "The statistics of the top 20 unigrams, ordered by\ncount."
}
},
"id": "StringStats"
},
"CreateModelOperationMetadata": {
"description": "Details of CreateModel operation.",
"type": "object",
"properties": {},
"id": "CreateModelOperationMetadata"
},
"ClassificationEvaluationMetrics": {
"description": "Model evaluation metrics for classification problems.\nNote: For Video Classification this metrics only describe quality of the\nVideo Classification predictions of \"segment_classification\" type.",
"type": "object",
"properties": {
"confusionMatrix": {
"$ref": "ConfusionMatrix",
"description": "Output only. Confusion matrix of the evaluation.\nOnly set for MULTICLASS classification problems where number\nof labels is no more than 10.\nOnly set for model level evaluation, not for evaluation per label."
},
"confidenceMetricsEntry": {
"type": "array",
"items": {
"$ref": "ClassificationEvaluationMetricsConfidenceMetricsEntry"
},
"description": "Output only. Metrics for each confidence_threshold in\n0.00,0.05,0.10,...,0.95,0.96,0.97,0.98,0.99 and\nposition_threshold = INT32_MAX_VALUE.\nROC and precision-recall curves, and other aggregated metrics are derived\nfrom them. The confidence metrics entries may also be supplied for\nadditional values of position_threshold, but from these no aggregated\nmetrics are computed."
},
"auRoc": {
"description": "Output only. The Area Under Receiver Operating Characteristic curve metric.\nMicro-averaged for the overall evaluation.",
"format": "float",
"type": "number"
},
"baseAuPrc": {
"type": "number",
"description": "Output only. The Area Under Precision-Recall Curve metric based on priors.\nMicro-averaged for the overall evaluation.\nDeprecated.",
"format": "float"
},
"annotationSpecId": {
"type": "array",
"items": {
"type": "string"
},
"description": "Output only. The annotation spec ids used for this evaluation."
},
"logLoss": {
"type": "number",
"description": "Output only. The Log Loss metric.",
"format": "float"
},
"auPrc": {
"description": "Output only. The Area Under Precision-Recall Curve metric. Micro-averaged\nfor the overall evaluation.",
"format": "float",
"type": "number"
}
},
"id": "ClassificationEvaluationMetrics"
},
"SetIamPolicyRequest": {
"type": "object",
"properties": {
"policy": {
"$ref": "Policy",
"description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
}
},
"id": "SetIamPolicyRequest",
"description": "Request message for `SetIamPolicy` method."
},
"CategoryStats": {
"type": "object",
"properties": {
"topCategoryStats": {
"description": "The statistics of the top 20 CATEGORY values, ordered by\n\ncount.",
"type": "array",
"items": {
"$ref": "SingleCategoryStats"
}
}
},
"id": "CategoryStats",
"description": "The data statistics of a series of CATEGORY values."
},
"ImageClassificationModelMetadata": {
"type": "object",
"properties": {
"trainBudget": {
"description": "Required. The train budget of creating this model, expressed in hours. The\nactual `train_cost` will be equal or less than this value.",
"format": "int64",
"type": "string"
},
"nodeCount": {
"description": "Output only. The number of nodes this model is deployed on. A node is an\nabstraction of a machine resource, which can handle online prediction QPS\nas given in the node_qps field.",
"format": "int64",
"type": "string"
},
"baseModelId": {
"description": "Optional. The ID of the `base` model. If it is specified, the new model\nwill be created based on the `base` model. Otherwise, the new model will be\ncreated from scratch. The `base` model must be in the same\n`project` and `location` as the new model to create, and have the same\n`model_type`.",
"type": "string"
},
"modelType": {
"description": "Optional. Type of the model. The available values are:\n* `cloud` - Model to be used via prediction calls to AutoML API.\n This is the default value.\n* `mobile-low-latency-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards. Expected to have low latency, but\n may have lower prediction quality than other models.\n* `mobile-versatile-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards.\n* `mobile-high-accuracy-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards. Expected to have a higher\n latency, but should also have a higher prediction quality\n than other models.\n* `mobile-core-ml-low-latency-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile device with Core\n ML afterwards. Expected to have low latency, but may have\n lower prediction quality than other models.\n* `mobile-core-ml-versatile-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile device with Core\n ML afterwards.\n* `mobile-core-ml-high-accuracy-1` - A model that, in addition to\n providing prediction via AutoML API, can also be exported\n (see AutoMl.ExportModel) and used on a mobile device with\n Core ML afterwards. Expected to have a higher latency, but\n should also have a higher prediction quality than other\n models.",
"type": "string"
},
"stopReason": {
"type": "string",
"description": "Output only. The reason that this create model operation stopped,\ne.g. `BUDGET_REACHED`, `MODEL_CONVERGED`."
},
"trainCost": {
"description": "Output only. The actual train cost of creating this model, expressed in\nhours. If this model is created from a `base` model, the train cost used\nto create the `base` model are not included.",
"format": "int64",
"type": "string"
},
"nodeQps": {
"description": "Output only. An approximate number of online prediction QPS that can\nbe supported by this model per each node on which it is deployed.",
"format": "double",
"type": "number"
}
},
"id": "ImageClassificationModelMetadata",
"description": "Model metadata for image classification."
},
"ImageObjectDetectionModelMetadata": {
"description": "Model metadata specific to image object detection.",
"type": "object",
"properties": {
"nodeCount": {
"description": "Output only. The number of nodes this model is deployed on. A node is an\nabstraction of a machine resource, which can handle online prediction QPS\nas given in the qps_per_node field.",
"format": "int64",
"type": "string"
},
"modelType": {
"type": "string",
"description": "Optional. Type of the model. The available values are:\n* `cloud-high-accuracy-1` - (default) A model to be used via prediction\n calls to AutoML API. Expected to have a higher latency, but\n should also have a higher prediction quality than other\n models.\n* `cloud-low-latency-1` - A model to be used via prediction\n calls to AutoML API. Expected to have low latency, but may\n have lower prediction quality than other models.\n* `mobile-low-latency-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards. Expected to have low latency, but\n may have lower prediction quality than other models.\n* `mobile-versatile-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards.\n* `mobile-high-accuracy-1` - A model that, in addition to providing\n prediction via AutoML API, can also be exported (see\n AutoMl.ExportModel) and used on a mobile or edge device\n with TensorFlow afterwards. Expected to have a higher\n latency, but should also have a higher prediction quality\n than other models."
},
"trainBudgetMilliNodeHours": {
"description": "The train budget of creating this model, expressed in milli node\nhours i.e. 1,000 value in this field means 1 node hour. The actual\n`train_cost` will be equal or less than this value. If further model\ntraining ceases to provide any improvements, it will stop without using\nfull budget and the stop_reason will be `MODEL_CONVERGED`.\nNote, node_hour = actual_hour * number_of_nodes_invovled.\nFor model type `cloud-high-accuracy-1`(default) and `cloud-low-latency-1`,\nthe train budget must be between 20,000 and 900,000 milli node hours,\ninclusive. The default value is 216, 000 which represents one day in\nwall time.\nFor model type `mobile-low-latency-1`, `mobile-versatile-1`,\n`mobile-high-accuracy-1`, `mobile-core-ml-low-latency-1`,\n`mobile-core-ml-versatile-1`, `mobile-core-ml-high-accuracy-1`, the train\nbudget must be between 1,000 and 100,000 milli node hours, inclusive.\nThe default value is 24, 000 which represents one day in wall time.",
"format": "int64",
"type": "string"
},
"stopReason": {
"description": "Output only. The reason that this create model operation stopped,\ne.g. `BUDGET_REACHED`, `MODEL_CONVERGED`.",
"type": "string"
},
"nodeQps": {
"type": "number",
"description": "Output only. An approximate number of online prediction QPS that can\nbe supported by this model per each node on which it is deployed.",
"format": "double"
},
"trainCostMilliNodeHours": {
"type": "string",
"description": "Output only. The actual train cost of creating this model, expressed in\nmilli node hours, i.e. 1,000 value in this field means 1 node hour.\nGuaranteed to not exceed the train budget.",
"format": "int64"
}
},
"id": "ImageObjectDetectionModelMetadata"
},
"TextExtractionDatasetMetadata": {
"description": "Dataset metadata that is specific to text extraction",
"type": "object",
"properties": {},
"id": "TextExtractionDatasetMetadata"
},
"ExportModelOperationMetadata": {
"description": "Details of ExportModel operation.",
"type": "object",
"properties": {
"outputInfo": {
"$ref": "ExportModelOutputInfo",
"description": "Output only. Information further describing the output of this model\nexport."
}
},
"id": "ExportModelOperationMetadata"
},
"TestIamPermissionsRequest": {
"description": "Request message for `TestIamPermissions` method.",
"type": "object",
"properties": {
"permissions": {
"description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
"type": "array",
"items": {
"type": "string"
}
}
},
"id": "TestIamPermissionsRequest"
},
"HistogramBucket": {
"description": "A bucket of a histogram.",
"type": "object",
"properties": {
"max": {
"description": "The maximum value of the bucket, exclusive unless max = `\"Infinity\"`, in\nwhich case it's inclusive.",
"format": "double",
"type": "number"
},
"count": {
"type": "string",
"description": "The number of data values that are in the bucket, i.e. are between\nmin and max values.",
"format": "int64"
},
"min": {
"description": "The minimum value of the bucket, inclusive.",
"format": "double",
"type": "number"
}
},
"id": "HistogramBucket"
},
"Image": {
"type": "object",
"properties": {
"inputConfig": {
"$ref": "InputConfig",
"description": "An input config specifying the content of the image."
},
"thumbnailUri": {
"description": "Output only. HTTP URI to the thumbnail image.",
"type": "string"
},
"imageBytes": {
"description": "Image content represented as a stream of bytes.\nNote: As with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.",
"format": "byte",
"type": "string"
}
},
"id": "Image",
"description": "A representation of an image.\nOnly images up to 30MB in size are supported."
},
"GcsSource": {
"description": "The Google Cloud Storage location for the input content.",
"type": "object",
"properties": {
"inputUris": {
"description": "Required. Google Cloud Storage URIs to input files, up to 2000 characters\nlong. Accepted forms:\n* Full object path, e.g. gs://bucket/directory/object.csv",
"type": "array",
"items": {
"type": "string"
}
}
},
"id": "GcsSource"
},
"ExportEvaluatedExamplesOutputInfo": {
"description": "Further describes the output of the evaluated examples export.\nSupplements\n\nExportEvaluatedExamplesOutputConfig.",
"type": "object",
"properties": {
"bigqueryOutputDataset": {
"description": "The path of the BigQuery dataset created, in bq://projectId.bqDatasetId\nformat, into which the output of export evaluated examples is written.",
"type": "string"
}
},
"id": "ExportEvaluatedExamplesOutputInfo"
},
"BatchPredictRequest": {
"description": "Request message for PredictionService.BatchPredict.",
"type": "object",
"properties": {
"inputConfig": {
"$ref": "BatchPredictInputConfig",
"description": "Required. The input configuration for batch prediction."
},
"outputConfig": {
"$ref": "BatchPredictOutputConfig",
"description": "Required. The Configuration specifying where output predictions should\nbe written."
},
"params": {
"description": "Required. Additional domain-specific parameters for the predictions, any string must\nbe up to 25000 characters long.\n\n* For Text Classification:\n\n `score_threshold` - (float) A value from 0.0 to 1.0. When the model\n makes predictions for a text snippet, it will only produce results\n that have at least this confidence score. The default is 0.5.\n\n* For Image Classification:\n\n `score_threshold` - (float) A value from 0.0 to 1.0. When the model\n makes predictions for an image, it will only produce results that\n have at least this confidence score. The default is 0.5.\n\n* For Image Object Detection:\n\n `score_threshold` - (float) When Model detects objects on the image,\n it will only produce bounding boxes which have at least this\n confidence score. Value in 0 to 1 range, default is 0.5.\n `max_bounding_box_count` - (int64) No more than this number of bounding\n boxes will be produced per image. Default is 100, the\n requested value may be limited by server.\n\n* For Video Classification :\n\n `score_threshold` - (float) A value from 0.0 to 1.0. When the model\n makes predictions for a video, it will only produce results that\n have at least this confidence score. The default is 0.5.\n `segment_classification` - (boolean) Set to true to request\n segment-level classification. AutoML Video Intelligence returns\n labels and their confidence scores for the entire segment of the\n video that user specified in the request configuration.\n The default is \"true\".\n `shot_classification` - (boolean) Set to true to request shot-level\n classification. AutoML Video Intelligence determines the boundaries\n for each camera shot in the entire segment of the video that user\n specified in the request configuration. AutoML Video Intelligence\n then returns labels and their confidence scores for each detected\n shot, along with the start and end time of the shot.\n WARNING: Model evaluation is not done for this classification type,\n the quality of it depends on training data, but there are no metrics\n provided to describe that quality. The default is \"false\".\n `1s_interval_classification` - (boolean) Set to true to request\n classification for a video at one-second intervals. AutoML Video\n Intelligence returns labels and their confidence scores for each\n second of the entire segment of the video that user specified in the\n request configuration.\n WARNING: Model evaluation is not done for this classification\n type, the quality of it depends on training data, but there are no\n metrics provided to describe that quality. The default is\n \"false\".\n\n* For Tables:\n\n feature_imp\u003cspan\u003eortan\u003c/span\u003ece - (boolean) Whether feature importance\n should be populated in the returned TablesAnnotations. The\n default is false.\n\n* For Video Object Tracking:\n\n `score_threshold` - (float) When Model detects objects on video frames,\n it will only produce bounding boxes which have at least this\n confidence score. Value in 0 to 1 range, default is 0.5.\n `max_bounding_box_count` - (int64) No more than this number of bounding\n boxes will be returned per frame. Default is 100, the requested\n value may be limited by server.\n `min_bounding_box_size` - (float) Only bounding boxes with shortest edge\n at least that long as a relative value of video frame size will be\n returned. Value in 0 to 1 range. Default is 0.",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"id": "BatchPredictRequest"
},
"DeployModelRequest": {
"description": "Request message for AutoMl.DeployModel.",
"type": "object",
"properties": {
"imageClassificationModelDeploymentMetadata": {
"$ref": "ImageClassificationModelDeploymentMetadata",
"description": "Model deployment metadata specific to Image Classification."
},
"imageObjectDetectionModelDeploymentMetadata": {
"description": "Model deployment metadata specific to Image Object Detection.",
"$ref": "ImageObjectDetectionModelDeploymentMetadata"
}
},
"id": "DeployModelRequest"
},
"ImageClassificationDatasetMetadata": {
"type": "object",
"properties": {
"classificationType": {
"enumDescriptions": [
"An un-set value of this enum.",
"At most one label is allowed per example.",
"Multiple labels are allowed for one example."
],
"enum": [
"CLASSIFICATION_TYPE_UNSPECIFIED",
"MULTICLASS",
"MULTILABEL"
],
"description": "Required. Type of the classification problem.",
"type": "string"
}
},
"id": "ImageClassificationDatasetMetadata",
"description": "Dataset metadata that is specific to image classification."
},
"Expr": {
"type": "object",
"properties": {
"title": {
"description": "Optional. Title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.",
"type": "string"
},
"location": {
"description": "Optional. String indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.",
"type": "string"
},
"description": {
"description": "Optional. Description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.",
"type": "string"
},
"expression": {
"description": "Textual representation of an expression in Common Expression Language\nsyntax.",
"type": "string"
}
},
"id": "Expr",
"description": "Represents a textual expression in the Common Expression Language (CEL)\nsyntax. CEL is a C-like expression language. The syntax and semantics of CEL\nare documented at https://github.com/google/cel-spec.\n\nExample (Comparison):\n\n title: \"Summary size limit\"\n description: \"Determines if a summary is less than 100 chars\"\n expression: \"document.summary.size() \u003c 100\"\n\nExample (Equality):\n\n title: \"Requestor is owner\"\n description: \"Determines if requestor is the document owner\"\n expression: \"document.owner == request.auth.claims.email\"\n\nExample (Logic):\n\n title: \"Public documents\"\n description: \"Determine whether the document should be publicly visible\"\n expression: \"document.type != 'private' && document.type != 'internal'\"\n\nExample (Data Manipulation):\n\n title: \"Notification string\"\n description: \"Create a notification string with a timestamp.\"\n expression: \"'New message received at ' + string(document.create_time)\"\n\nThe exact variables and functions that may be referenced within an expression\nare determined by the service that evaluates it. See the service\ndocumentation for additional information."
},
"TablesModelMetadata": {
"description": "Model metadata specific to AutoML Tables.",
"type": "object",
"properties": {
"tablesModelColumnInfo": {
"description": "Output only. Auxiliary information for each of the\ninput_feature_column_specs with respect to this particular model.",
"type": "array",
"items": {
"$ref": "TablesModelColumnInfo"
}
},
"inputFeatureColumnSpecs": {
"description": "Column specs of the dataset's primary table's columns, on which\nthe model is trained and which are used as the input for predictions.\nThe\n\ntarget_column\nas well as, according to dataset's state upon model creation,\n\nweight_column,\nand\n\nml_use_column\nmust never be included here.\n\nOnly 3 fields are used:\n\n* name - May be set on CreateModel, if set only the columns specified are\n used, otherwise all primary table's columns (except the ones listed\n above) are used for the training and prediction input.\n\n* display_name - Output only.\n\n* data_type - Output only.",
"type": "array",
"items": {
"$ref": "ColumnSpec"
}
},
"trainBudgetMilliNodeHours": {
"description": "Required. The train budget of creating this model, expressed in milli node\nhours i.e. 1,000 value in this field means 1 node hour.\n\nThe training cost of the model will not exceed this budget. The final cost\nwill be attempted to be close to the budget, though may end up being (even)\nnoticeably smaller - at the backend's discretion. This especially may\nhappen when further model training ceases to provide any improvements.\n\nIf the budget is set to a value known to be insufficient to train a\nmodel for the given dataset, the training won't be attempted and\nwill error.\n\nThe train budget must be between 1,000 and 72,000 milli node hours,\ninclusive.",
"format": "int64",
"type": "string"
},
"targetColumnSpec": {
"$ref": "ColumnSpec",
"description": "Column spec of the dataset's primary table's column the model is\npredicting. Snapshotted when model creation started.\nOnly 3 fields are used:\nname - May be set on CreateModel, if it's not then the ColumnSpec\n corresponding to the current target_column_spec_id of the dataset\n the model is trained from is used.\n If neither is set, CreateModel will error.\ndisplay_name - Output only.\ndata_type - Output only."
},
"optimizationObjectiveRecallValue": {
"type": "number",
"description": "Required when optimization_objective is \"MAXIMIZE_PRECISION_AT_RECALL\".\nMust be between 0 and 1, inclusive.",
"format": "float"
},
"trainCostMilliNodeHours": {
"description": "Output only. The actual training cost of the model, expressed in milli\nnode hours, i.e. 1,000 value in this field means 1 node hour. Guaranteed\nto not exceed the train budget.",
"format": "int64",
"type": "string"
},
"disableEarlyStopping": {
"description": "Use the entire training budget. This disables the early stopping feature.\nBy default, the early stopping feature is enabled, which means that AutoML\nTables might stop training before the entire training budget has been used.",
"type": "boolean"
},
"optimizationObjective": {
"type": "string",
"description": "Objective function the model is optimizing towards. The training process\ncreates a model that maximizes/minimizes the value of the objective\nfunction over the validation set.\n\nThe supported optimization objectives depend on the prediction type.\nIf the field is not set, a default objective function is used.\n\nCLASSIFICATION_BINARY:\n \"MAXIMIZE_AU_ROC\" (default) - Maximize the area under the receiver\n operating characteristic (ROC) curve.\n \"MINIMIZE_LOG_LOSS\" - Minimize log loss.\n \"MAXIMIZE_AU_PRC\" - Maximize the area under the precision-recall curve.\n \"MAXIMIZE_PRECISION_AT_RECALL\" - Maximize precision for a specified\n recall value.\n \"MAXIMIZE_RECALL_AT_PRECISION\" - Maximize recall for a specified\n precision value.\n\nCLASSIFICATION_MULTI_CLASS :\n \"MINIMIZE_LOG_LOSS\" (default) - Minimize log loss.\n\n\nREGRESSION:\n \"MINIMIZE_RMSE\" (default) - Minimize root-mean-squared error (RMSE).\n \"MINIMIZE_MAE\" - Minimize mean-absolute error (MAE).\n \"MINIMIZE_RMSLE\" - Minimize root-mean-squared log error (RMSLE)."
},
"optimizationObjectivePrecisionValue": {
"type": "number",
"description": "Required when optimization_objective is \"MAXIMIZE_RECALL_AT_PRECISION\".\nMust be between 0 and 1, inclusive.",
"format": "float"
}
},
"id": "TablesModelMetadata"
},
"UndeployModelRequest": {
"description": "Request message for AutoMl.UndeployModel.",
"type": "object",
"properties": {},
"id": "UndeployModelRequest"
},
"RegressionEvaluationMetrics": {
"id": "RegressionEvaluationMetrics",
"description": "Metrics for regression problems.",
"type": "object",
"properties": {
"rSquared": {
"description": "Output only. R squared.",
"format": "float",
"type": "number"
},
"rootMeanSquaredError": {
"type": "number",
"description": "Output only. Root Mean Squared Error (RMSE).",
"format": "float"
},
"rootMeanSquaredLogError": {
"description": "Output only. Root mean squared log error.",
"format": "float",
"type": "number"
},
"meanAbsoluteError": {
"description": "Output only. Mean Absolute Error (MAE).",
"format": "float",
"type": "number"
},
"meanAbsolutePercentageError": {
"description": "Output only. Mean absolute percentage error. Only set if all ground truth\nvalues are are positive.",
"format": "float",
"type": "number"
}
}
},
"VideoObjectTrackingAnnotation": {
"description": "Annotation details for video object tracking.",
"type": "object",
"properties": {
"instanceId": {
"description": "Optional. The instance of the object, expressed as a positive integer. Used to tell\napart objects of the same type (i.e. AnnotationSpec) when multiple are\npresent on a single example.\nNOTE: Instance ID prediction quality is not a part of model evaluation and\nis done as best effort. Especially in cases when an entity goes\noff-screen for a longer time (minutes), when it comes back it may be given\na new instance ID.",
"type": "string"
},
"boundingBox": {
"$ref": "BoundingPoly",
"description": "Required. The rectangle representing the object location on the frame (i.e.\nat the time_offset of the video)."
},
"timeOffset": {
"description": "Required. A time (frame) of a video to which this annotation pertains.\nRepresented as the duration since the video's start.",
"format": "google-duration",
"type": "string"
},
"score": {
"type": "number",
"description": "Output only. The confidence that this annotation is positive for the video at\nthe time_offset, value in [0, 1], higher means higher positivity\nconfidence. For annotations created by the user the score is 1. When\nuser approves an annotation, the original float score is kept (and not\nchanged to 1).",
"format": "float"
}
},
"id": "VideoObjectTrackingAnnotation"
},
"GranularStats": {
"description": "Stats split by a defined in context granularity.",
"type": "object",
"properties": {
"buckets": {
"description": "A map from granularity key to example count for that key.\nE.g. for hour_of_day `13` means 1pm, or for month_of_year `5` means May).",
"type": "object",
"additionalProperties": {
"format": "int64",
"type": "string"
}
}
},
"id": "GranularStats"
},
"ListModelEvaluationsResponse": {
"id": "ListModelEvaluationsResponse",
"description": "Response message for AutoMl.ListModelEvaluations.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass to the ListModelEvaluationsRequest.page_token field of a new\nAutoMl.ListModelEvaluations request to obtain that page.",
"type": "string"
},
"modelEvaluation": {
"description": "List of model evaluations in the requested page.",
"type": "array",
"items": {
"$ref": "ModelEvaluation"
}
}
}
},
"BatchPredictOperationMetadata": {
"id": "BatchPredictOperationMetadata",
"description": "Details of BatchPredict operation.",
"type": "object",
"properties": {
"inputConfig": {
"$ref": "BatchPredictInputConfig",
"description": "Output only. The input config that was given upon starting this\nbatch predict operation."
},
"outputInfo": {
"$ref": "BatchPredictOutputInfo",
"description": "Output only. Information further describing this batch predict's output."
}
}
},
"AnnotationPayload": {
"type": "object",
"properties": {
"videoClassification": {
"description": "Annotation details for video classification.\nReturned for Video Classification predictions.",
"$ref": "VideoClassificationAnnotation"
},
"annotationSpecId": {
"description": "Output only . The resource ID of the annotation spec that\nthis annotation pertains to. The annotation spec comes from either an\nancestor dataset, or the dataset that was used to train the model in use.",
"type": "string"
},
"classification": {
"$ref": "ClassificationAnnotation",
"description": "Annotation details for content or image classification."
},
"textExtraction": {
"$ref": "TextExtractionAnnotation",
"description": "Annotation details for text extraction."
},
"imageObjectDetection": {
"$ref": "ImageObjectDetectionAnnotation",
"description": "Annotation details for image object detection."
},
"displayName": {
"description": "Output only. The value of\ndisplay_name\nwhen the model was trained. Because this field returns a value at model\ntraining time, for different models trained using the same dataset, the\nreturned value could be different as model owner could update the\n`display_name` between any two model training.",
"type": "string"
},
"textSentiment": {
"description": "Annotation details for text sentiment.",
"$ref": "TextSentimentAnnotation"
},
"translation": {
"$ref": "TranslationAnnotation",
"description": "Annotation details for translation."
},
"videoObjectTracking": {
"$ref": "VideoObjectTrackingAnnotation",
"description": "Annotation details for video object tracking."
},
"tables": {
"$ref": "TablesAnnotation",
"description": "Annotation details for Tables."
}
},
"id": "AnnotationPayload",
"description": "Contains annotation information that is relevant to AutoML."
},
"TextSentimentEvaluationMetrics": {
"description": "Model evaluation metrics for text sentiment problems.",
"type": "object",
"properties": {
"confusionMatrix": {
"description": "Output only. Confusion matrix of the evaluation.\nOnly set for the overall model evaluation, not for evaluation of a single\nannotation spec.",
"$ref": "ConfusionMatrix"
},
"quadraticKappa": {
"description": "Output only. Quadratic weighted kappa. Only set for the overall model\nevaluation, not for evaluation of a single annotation spec.",
"format": "float",
"type": "number"
},
"meanAbsoluteError": {
"description": "Output only. Mean absolute error. Only set for the overall model\nevaluation, not for evaluation of a single annotation spec.",
"format": "float",
"type": "number"
},
"recall": {
"type": "number",
"description": "Output only. Recall.",
"format": "float"
},
"annotationSpecId": {
"description": "Output only. The annotation spec ids used for this evaluation.\nDeprecated .",
"type": "array",
"items": {
"type": "string"
}
},
"linearKappa": {
"description": "Output only. Linear weighted kappa. Only set for the overall model\nevaluation, not for evaluation of a single annotation spec.",
"format": "float",
"type": "number"
},
"f1Score": {
"type": "number",
"description": "Output only. The harmonic mean of recall and precision.",
"format": "float"
},
"precision": {
"description": "Output only. Precision.",
"format": "float",
"type": "number"
},
"meanSquaredError": {
"description": "Output only. Mean squared error. Only set for the overall model\nevaluation, not for evaluation of a single annotation spec.",
"format": "float",
"type": "number"
}
},
"id": "TextSentimentEvaluationMetrics"
},
"TranslationEvaluationMetrics": {
"id": "TranslationEvaluationMetrics",
"description": "Evaluation metrics for the dataset.",
"type": "object",
"properties": {
"bleuScore": {
"description": "Output only. BLEU score.",
"format": "double",
"type": "number"
},
"baseBleuScore": {
"description": "Output only. BLEU score for base model.",
"format": "double",
"type": "number"
}
}
},
"TablesModelColumnInfo": {
"description": "An information specific to given column and Tables Model, in context\nof the Model and the predictions created by it.",
"type": "object",
"properties": {
"columnSpecName": {
"type": "string",
"description": "Output only. The name of the ColumnSpec describing the column. Not\npopulated when this proto is outputted to BigQuery."
},
"featureImportance": {
"description": "Output only. When given as part of a Model (always populated):\nMeasurement of how much model predictions correctness on the TEST data\ndepend on values in this column. A value between 0 and 1, higher means\nhigher influence. These values are normalized - for all input feature\ncolumns of a given model they add to 1.\n\nWhen given back by Predict (populated iff\nfeature_importance\nparam is set) or Batch\nPredict (populated iff\nfeature_importance\nparam is set):\nMeasurement of how impactful for the prediction returned for the given row\nthe value in this column was. Specifically, the feature importance\nspecifies the marginal contribution that the feature made to the prediction\nscore compared to the baseline score. These values are computed using the\nSampled Shapley method.",
"format": "float",
"type": "number"
},
"columnDisplayName": {
"description": "Output only. The display name of the column (same as the display_name of\nits ColumnSpec).",
"type": "string"
}
},
"id": "TablesModelColumnInfo"
},
"ClassificationEvaluationMetricsConfidenceMetricsEntry": {
"id": "ClassificationEvaluationMetricsConfidenceMetricsEntry",
"description": "Metrics for a single confidence threshold.",
"type": "object",
"properties": {
"truePositiveCount": {
"type": "string",
"description": "Output only. The number of model created labels that match a ground truth\nlabel.",
"format": "int64"
},
"precisionAt1": {
"description": "Output only. The precision when only considering the label that has the\nhighest prediction score and not below the confidence threshold for each\nexample.",
"format": "float",
"type": "number"
},
"confidenceThreshold": {
"type": "number",
"description": "Output only. Metrics are computed with an assumption that the model\nnever returns predictions with score lower than this value.",
"format": "float"
},
"f1Score": {
"description": "Output only. The harmonic mean of recall and precision.",
"format": "float",
"type": "number"
},
"positionThreshold": {
"description": "Output only. Metrics are computed with an assumption that the model\nalways returns at most this many predictions (ordered by their score,\ndescendingly), but they all still need to meet the confidence_threshold.",
"format": "int32",
"type": "integer"
},
"trueNegativeCount": {
"type": "string",
"description": "Output only. The number of labels that were not created by the model,\nbut if they would, they would not match a ground truth label.",
"format": "int64"
},
"falseNegativeCount": {
"description": "Output only. The number of ground truth labels that are not matched\nby a model created label.",
"format": "int64",
"type": "string"
},
"falsePositiveCount": {
"description": "Output only. The number of model created labels that do not match a\nground truth label.",
"format": "int64",
"type": "string"
},
"falsePositiveRate": {
"description": "Output only. False Positive Rate for the given confidence threshold.",
"format": "float",
"type": "number"
},
"recall": {
"description": "Output only. Recall (True Positive Rate) for the given confidence\nthreshold.",
"format": "float",
"type": "number"
},
"falsePositiveRateAt1": {
"description": "Output only. The False Positive Rate when only considering the label that\nhas the highest prediction score and not below the confidence threshold\nfor each example.",
"format": "float",
"type": "number"
},
"recallAt1": {
"description": "Output only. The Recall (True Positive Rate) when only considering the\nlabel that has the highest prediction score and not below the confidence\nthreshold for each example.",
"format": "float",
"type": "number"
},
"f1ScoreAt1": {
"description": "Output only. The harmonic mean of recall_at1 and precision_at1.",
"format": "float",
"type": "number"
},
"precision": {
"description": "Output only. Precision for the given confidence threshold.",
"format": "float",
"type": "number"
}
}
},
"ListModelsResponse": {
"type": "object",
"properties": {
"model": {
"description": "List of models in the requested page.",
"type": "array",
"items": {
"$ref": "Model"
}
},
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass to ListModelsRequest.page_token to obtain that page.",
"type": "string"
}
},
"id": "ListModelsResponse",
"description": "Response message for AutoMl.ListModels."
},
"ExportDataOperationMetadata": {
"id": "ExportDataOperationMetadata",
"description": "Details of ExportData operation.",
"type": "object",
"properties": {
"outputInfo": {
"$ref": "ExportDataOutputInfo",
"description": "Output only. Information further describing this export data's output."
}
}
},
"TextExtractionEvaluationMetricsConfidenceMetricsEntry": {
"description": "Metrics for a single confidence threshold.",
"type": "object",
"properties": {
"recall": {
"description": "Output only. Recall under the given confidence threshold.",
"format": "float",
"type": "number"
},
"f1Score": {
"type": "number",
"description": "Output only. The harmonic mean of recall and precision.",
"format": "float"
},
"precision": {
"description": "Output only. Precision under the given confidence threshold.",
"format": "float",
"type": "number"
},
"confidenceThreshold": {
"type": "number",
"description": "Output only. The confidence threshold value used to compute the metrics.\nOnly annotations with score of at least this threshold are considered to\nbe ones the model would return.",
"format": "float"
}
},
"id": "TextExtractionEvaluationMetricsConfidenceMetricsEntry"
},
"OutputConfig": {
"description": "* For Translation:\n CSV file `translation.csv`, with each line in format:\n ML_USE,GCS_FILE_PATH\n GCS_FILE_PATH leads to a .TSV file which describes examples that have\n given ML_USE, using the following row format per line:\n TEXT_SNIPPET (in source language) \\t TEXT_SNIPPET (in target\n language)\n\n * For Tables:\n Output depends on whether the dataset was imported from GCS or\n BigQuery.\n GCS case:\n\ngcs_destination\n must be set. Exported are CSV file(s) `tables_1.csv`,\n `tables_2.csv`,...,`tables_N.csv` with each having as header line\n the table's column names, and all other lines contain values for\n the header columns.\n BigQuery case:\n\nbigquery_destination\n pointing to a BigQuery project must be set. In the given project a\n new dataset will be created with name\n\n`export_data_\u003cautoml-dataset-display-name\u003e_\u003ctimestamp-of-export-call\u003e`\n where \u003cautoml-dataset-display-name\u003e will be made\n BigQuery-dataset-name compatible (e.g. most special characters will\n become underscores), and timestamp will be in\n YYYY_MM_DDThh_mm_ss_sssZ \"based on ISO-8601\" format. In that\n dataset a new table called `primary_table` will be created, and\n filled with precisely the same data as this obtained on import.",
"type": "object",
"properties": {
"bigqueryDestination": {
"$ref": "BigQueryDestination",
"description": "The BigQuery location where the output is to be written to."
},
"gcsDestination": {
"description": "The Google Cloud Storage location where the output is to be written to.\nFor Image Object Detection, Text Extraction, Video Classification and\nTables, in the given directory a new directory will be created with name:\nexport_data-\u003cdataset-display-name\u003e-\u003ctimestamp-of-export-call\u003e where\ntimestamp is in YYYY-MM-DDThh:mm:ss.sssZ ISO-8601 format. All export\noutput will be written into that directory.",
"$ref": "GcsDestination"
}
},
"id": "OutputConfig"
},
"TextClassificationModelMetadata": {
"description": "Model metadata that is specific to text classification.",
"type": "object",
"properties": {
"classificationType": {
"enumDescriptions": [
"An un-set value of this enum.",
"At most one label is allowed per example.",
"Multiple labels are allowed for one example."
],
"enum": [
"CLASSIFICATION_TYPE_UNSPECIFIED",
"MULTICLASS",
"MULTILABEL"
],
"description": "Output only. Classification type of the dataset used to train this model.",
"type": "string"
}
},
"id": "TextClassificationModelMetadata"
},
"TextExtractionAnnotation": {
"description": "Annotation for identifying spans of text.",
"type": "object",
"properties": {
"score": {
"description": "Output only. A confidence estimate between 0.0 and 1.0. A higher value\nmeans greater confidence in correctness of the annotation.",
"format": "float",
"type": "number"
},
"textSegment": {
"$ref": "TextSegment",
"description": "An entity annotation will set this, which is the part of the original\ntext to which the annotation pertains."
}
},
"id": "TextExtractionAnnotation"
},
"ArrayStats": {
"type": "object",
"properties": {
"memberStats": {
"$ref": "DataStats",
"description": "Stats of all the values of all arrays, as if they were a single long\nseries of data. The type depends on the element type of the array."
}
},
"id": "ArrayStats",
"description": "The data statistics of a series of ARRAY values."
},
"UnigramStats": {
"description": "The statistics of a unigram.",
"type": "object",
"properties": {
"count": {
"description": "The number of occurrences of this unigram in the series.",
"format": "int64",
"type": "string"
},
"value": {
"description": "The unigram.",
"type": "string"
}
},
"id": "UnigramStats"
},
"ConfusionMatrix": {
"description": "Confusion matrix of the model running the classification.",
"type": "object",
"properties": {
"displayName": {
"type": "array",
"items": {
"type": "string"
},
"description": "Output only. Display name of the annotation specs used in the confusion\nmatrix, as they were at the moment of the evaluation. For Tables\nCLASSIFICATION\n\nprediction_type-s,\ndistinct values of the target column at the moment of the model\nevaluation are populated here."
},
"annotationSpecId": {
"description": "Output only. IDs of the annotation specs used in the confusion matrix.\nFor Tables CLASSIFICATION\n\nprediction_type\nonly list of annotation_spec_display_name-s is populated.",
"type": "array",
"items": {
"type": "string"
}
},
"row": {
"description": "Output only. Rows in the confusion matrix. The number of rows is equal to\nthe size of `annotation_spec_id`.\n`row[i].example_count[j]` is the number of examples that have ground\ntruth of the `annotation_spec_id[i]` and are predicted as\n`annotation_spec_id[j]` by the model being evaluated.",
"type": "array",
"items": {
"$ref": "ClassificationEvaluationMetricsConfusionMatrixRow"
}
}
},
"id": "ConfusionMatrix"
},
"BigQuerySource": {
"id": "BigQuerySource",
"description": "The BigQuery location for the input content.",
"type": "object",
"properties": {
"inputUri": {
"type": "string",
"description": "Required. BigQuery URI to a table, up to 2000 characters long.\nAccepted forms:\n* BigQuery path e.g. bq://projectId.bqDatasetId.bqTableId"
}
}
},
"AnnotationSpec": {
"type": "object",
"properties": {
"exampleCount": {
"description": "Output only. The number of examples in the parent dataset\nlabeled by the annotation spec.",
"format": "int32",
"type": "integer"
},
"name": {
"type": "string",
"description": "Output only. Resource name of the annotation spec.\nForm:\n\n'projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationSpecs/{annotation_spec_id}'"
},
"displayName": {
"type": "string",
"description": "Required. The name of the annotation spec to show in the interface. The name can be\nup to 32 characters long and must match the regexp `[a-zA-Z0-9_]+`."
}
},
"id": "AnnotationSpec",
"description": "A definition of an annotation spec."
},
"TimestampStats": {
"description": "The data statistics of a series of TIMESTAMP values.",
"type": "object",
"properties": {
"granularStats": {
"additionalProperties": {
"$ref": "GranularStats"
},
"description": "The string key is the pre-defined granularity. Currently supported:\nhour_of_day, day_of_week, month_of_year.\nGranularities finer that the granularity of timestamp data are not\npopulated (e.g. if timestamps are at day granularity, then hour_of_day\nis not populated).",
"type": "object"
}
},
"id": "TimestampStats"
},
"Policy": {
"type": "object",
"properties": {
"etag": {
"type": "string",
"description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.",
"format": "byte"
},
"version": {
"description": "Specifies the format of the policy.\n\nValid values are `0`, `1`, and `3`. Requests that specify an invalid value\nare rejected.\n\nAny operation that affects conditional role bindings must specify version\n`3`. This requirement applies to the following operations:\n\n* Getting a policy that includes a conditional role binding\n* Adding a conditional role binding to a policy\n* Changing a conditional role binding in a policy\n* Removing any role binding, with or without a condition, from a policy\n that includes conditions\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.\n\nIf a policy does not include any conditions, operations on that policy may\nspecify any valid version or leave the field unset.",
"format": "int32",
"type": "integer"
},
"bindings": {
"type": "array",
"items": {
"$ref": "Binding"
},
"description": "Associates a list of `members` to a `role`. Optionally, may specify a\n`condition` that determines how and when the `bindings` are applied. Each\nof the `bindings` must contain at least one member."
}
},
"id": "Policy",
"description": "An Identity and Access Management (IAM) policy, which specifies access\ncontrols for Google Cloud resources.\n\n\nA `Policy` is a collection of `bindings`. A `binding` binds one or more\n`members` to a single `role`. Members can be user accounts, service accounts,\nGoogle groups, and domains (such as G Suite). A `role` is a named list of\npermissions; each `role` can be an IAM predefined role or a user-created\ncustom role.\n\nOptionally, a `binding` can specify a `condition`, which is a logical\nexpression that allows access to a resource only if the expression evaluates\nto `true`. A condition can add constraints based on attributes of the\nrequest, the resource, or both.\n\n**JSON example:**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/resourcemanager.organizationAdmin\",\n \"members\": [\n \"user:[email protected]\",\n \"group:[email protected]\",\n \"domain:google.com\",\n \"serviceAccount:[email protected]\"\n ]\n },\n {\n \"role\": \"roles/resourcemanager.organizationViewer\",\n \"members\": [\"user:[email protected]\"],\n \"condition\": {\n \"title\": \"expirable access\",\n \"description\": \"Does not grant access after Sep 2020\",\n \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\",\n }\n }\n ],\n \"etag\": \"BwWWja0YfJA=\",\n \"version\": 3\n }\n\n**YAML example:**\n\n bindings:\n - members:\n - user:[email protected]\n - group:[email protected]\n - domain:google.com\n - serviceAccount:[email protected]\n role: roles/resourcemanager.organizationAdmin\n - members:\n - user:[email protected]\n role: roles/resourcemanager.organizationViewer\n condition:\n title: expirable access\n description: Does not grant access after Sep 2020\n expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\n - etag: BwWWja0YfJA=\n - version: 3\n\nFor a description of IAM and its features, see the\n[IAM documentation](https://cloud.google.com/iam/docs/)."
},
"ListLocationsResponse": {
"description": "The response message for Locations.ListLocations.",
"type": "object",
"properties": {
"locations": {
"description": "A list of locations that matches the specified filter in the request.",
"type": "array",
"items": {
"$ref": "Location"
}
},
"nextPageToken": {
"description": "The standard List next-page token.",
"type": "string"
}
},
"id": "ListLocationsResponse"
},
"Model": {
"description": "API proto representing a trained machine learning model.",
"type": "object",
"properties": {
"displayName": {
"description": "Required. The name of the model to show in the interface. The name can be\nup to 32 characters long and can consist only of ASCII Latin letters A-Z\nand a-z, underscores\n(_), and ASCII digits 0-9. It must start with a letter.",
"type": "string"
},
"deploymentState": {
"enumDescriptions": [
"Should not be used, an un-set enum has this value by default.",
"Model is deployed.",
"Model is not deployed."
],
"enum": [
"DEPLOYMENT_STATE_UNSPECIFIED",
"DEPLOYED",
"UNDEPLOYED"
],
"description": "Output only. Deployment state of the model. A model can only serve\nprediction requests after it gets deployed.",
"type": "string"
},
"imageClassificationModelMetadata": {
"$ref": "ImageClassificationModelMetadata",
"description": "Metadata for image classification models."
},
"createTime": {
"description": "Output only. Timestamp when the model training finished and can be used for prediction.",
"format": "google-datetime",
"type": "string"
},
"updateTime": {
"type": "string",
"description": "Output only. Timestamp when this model was last updated.",
"format": "google-datetime"
},
"textExtractionModelMetadata": {
"$ref": "TextExtractionModelMetadata",
"description": "Metadata for text extraction models."
},
"tablesModelMetadata": {
"$ref": "TablesModelMetadata",
"description": "Metadata for Tables models."
},
"textClassificationModelMetadata": {
"$ref": "TextClassificationModelMetadata",
"description": "Metadata for text classification models."
},
"datasetId": {
"type": "string",
"description": "Required. The resource ID of the dataset used to create the model. The dataset must\ncome from the same ancestor project and location."
},
"imageObjectDetectionModelMetadata": {
"$ref": "ImageObjectDetectionModelMetadata",
"description": "Metadata for image object detection models."
},
"textSentimentModelMetadata": {
"$ref": "TextSentimentModelMetadata",
"description": "Metadata for text sentiment models."
},
"videoObjectTrackingModelMetadata": {
"$ref": "VideoObjectTrackingModelMetadata",
"description": "Metadata for video object tracking models."
},
"name": {
"description": "Output only. Resource name of the model.\nFormat: `projects/{project_id}/locations/{location_id}/models/{model_id}`",
"type": "string"
},
"translationModelMetadata": {
"$ref": "TranslationModelMetadata",
"description": "Metadata for translation models."
},
"videoClassificationModelMetadata": {
"description": "Metadata for video classification models.",
"$ref": "VideoClassificationModelMetadata"
}
},
"id": "Model"
},
"TablesDatasetMetadata": {
"description": "Metadata for a dataset used for AutoML Tables.",
"type": "object",
"properties": {
"statsUpdateTime": {
"description": "Output only. The most recent timestamp when target_column_correlations\nfield and all descendant ColumnSpec.data_stats and\nColumnSpec.top_correlated_columns fields were last (re-)generated. Any\nchanges that happened to the dataset afterwards are not reflected in these\nfields values. The regeneration happens in the background on a best effort\nbasis.",
"format": "google-datetime",
"type": "string"
},
"targetColumnCorrelations": {
"additionalProperties": {
"$ref": "CorrelationStats"
},
"description": "Output only. Correlations between\n\nTablesDatasetMetadata.target_column_spec_id,\nand other columns of the\n\nTablesDatasetMetadataprimary_table.\nOnly set if the target column is set. Mapping from other column spec id to\nits CorrelationStats with the target column.\nThis field may be stale, see the stats_update_time field for\nfor the timestamp at which these stats were last updated.",
"type": "object"
},
"weightColumnSpecId": {
"description": "column_spec_id of the primary table's column that should be used as the\nweight column, i.e. the higher the value the more important the row will be\nduring model training.\nRequired type: FLOAT64.\nAllowed values: 0 to 10000, inclusive on both ends; 0 means the row is\n ignored for training.\nIf not set all rows are assumed to have equal weight of 1.\nNOTE: Updates of this field will instantly affect any other users\nconcurrently working with the dataset.",
"type": "string"
},
"mlUseColumnSpecId": {
"description": "column_spec_id of the primary table column which specifies a possible ML\nuse of the row, i.e. the column will be used to split the rows into TRAIN,\nVALIDATE and TEST sets.\nRequired type: STRING.\nThis column, if set, must either have all of `TRAIN`, `VALIDATE`, `TEST`\namong its values, or only have `TEST`, `UNASSIGNED` values. In the latter\ncase the rows with `UNASSIGNED` value will be assigned by AutoML. Note\nthat if a given ml use distribution makes it impossible to create a \"good\"\nmodel, that call will error describing the issue.\nIf both this column_spec_id and primary table's time_column_spec_id are not\nset, then all rows are treated as `UNASSIGNED`.\nNOTE: Updates of this field will instantly affect any other users\nconcurrently working with the dataset.",
"type": "string"
},
"primaryTableSpecId": {
"description": "Output only. The table_spec_id of the primary table of this dataset.",
"type": "string"
},
"targetColumnSpecId": {
"description": "column_spec_id of the primary table's column that should be used as the\ntraining & prediction target.\nThis column must be non-nullable and have one of following data types\n(otherwise model creation will error):\n\n* CATEGORY\n\n* FLOAT64\n\nIf the type is CATEGORY , only up to\n100 unique values may exist in that column across all rows.\n\nNOTE: Updates of this field will instantly affect any other users\nconcurrently working with the dataset.",
"type": "string"
}
},
"id": "TablesDatasetMetadata"
},
"CancelOperationRequest": {
"description": "The request message for Operations.CancelOperation.",
"type": "object",
"properties": {},
"id": "CancelOperationRequest"
},
"ExportModelRequest": {
"description": "Request message for AutoMl.ExportModel.\nModels need to be enabled for exporting, otherwise an error code will be\nreturned.",
"type": "object",
"properties": {
"outputConfig": {
"$ref": "ModelExportOutputConfig",
"description": "Required. The desired output location and configuration."
}
},
"id": "ExportModelRequest"
},
"DataType": {
"id": "DataType",
"description": "Indicated the type of data that can be stored in a structured data entity\n(e.g. a table).",
"type": "object",
"properties": {
"listElementType": {
"$ref": "DataType",
"description": "If type_code == ARRAY,\nthen `list_element_type` is the type of the elements."
},
"typeCode": {
"enum": [
"TYPE_CODE_UNSPECIFIED",
"FLOAT64",
"TIMESTAMP",
"STRING",
"ARRAY",
"STRUCT",
"CATEGORY"
],
"description": "Required. The TypeCode for this type.",
"type": "string",
"enumDescriptions": [
"Not specified. Should not be used.",
"Encoded as `number`, or the strings `\"NaN\"`, `\"Infinity\"`, or\n`\"-Infinity\"`.",
"Must be between 0AD and 9999AD. Encoded as `string` according to\ntime_format, or, if\nthat format is not set, then in RFC 3339 `date-time` format, where\n`time-offset` = `\"Z\"` (e.g. 1985-04-12T23:20:50.52Z).",
"Encoded as `string`.",
"Encoded as `list`, where the list elements are represented according to\n\nlist_element_type.",
"Encoded as `struct`, where field values are represented according to\nstruct_type.",
"Values of this type are not further understood by AutoML,\ne.g. AutoML is unable to tell the order of values (as it could with\nFLOAT64), or is unable to say if one value contains another (as it\ncould with STRING).\nEncoded as `string` (bytes should be base64-encoded, as described in RFC\n4648, section 4)."
]
},
"structType": {
"$ref": "StructType",
"description": "If type_code == STRUCT, then `struct_type`\nprovides type information for the struct's fields."
},
"timeFormat": {
"type": "string",
"description": "If type_code == TIMESTAMP\nthen `time_format` provides the format in which that time field is\nexpressed. The time_format must either be one of:\n* `UNIX_SECONDS`\n* `UNIX_MILLISECONDS`\n* `UNIX_MICROSECONDS`\n* `UNIX_NANOSECONDS`\n(for respectively number of seconds, milliseconds, microseconds and\nnanoseconds since start of the Unix epoch);\nor be written in `strftime` syntax. If time_format is not set, then the\ndefault format as described on the type_code is used."
},
"nullable": {
"description": "If true, this DataType can also be `NULL`. In .CSV files `NULL` value is\nexpressed as an empty string.",
"type": "boolean"
}
}
},
"ExamplePayload": {
"description": "Example data used for training or prediction.",
"type": "object",
"properties": {
"row": {
"$ref": "Row",
"description": "Example relational table row."
},
"textSnippet": {
"description": "Example text.",
"$ref": "TextSnippet"
},
"document": {
"description": "Example document.",
"$ref": "Document"
},
"image": {
"$ref": "Image",
"description": "Example image."
}
},
"id": "ExamplePayload"
},
"VideoClassificationModelMetadata": {
"type": "object",
"properties": {},
"id": "VideoClassificationModelMetadata",
"description": "Model metadata specific to video classification."
},
"ModelExportOutputConfig": {
"description": "Output configuration for ModelExport Action.",
"type": "object",
"properties": {
"params": {
"additionalProperties": {
"type": "string"
},
"description": "Additional model-type and format specific parameters describing the\nrequirements for the to be exported model files, any string must be up to\n25000 characters long.\n\n * For `docker` format:\n `cpu_architecture` - (string) \"x86_64\" (default).\n `gpu_architecture` - (string) \"none\" (default), \"nvidia\".",
"type": "object"
},
"gcsDestination": {
"description": "The Google Cloud Storage location where the model is to be written to.\nThis location may only be set for the following model formats:\n \"tflite\", \"edgetpu_tflite\", \"tf_saved_model\", \"tf_js\", \"core_ml\".\n\n Under the directory given as the destination a new one with name\n \"model-export-\u003cmodel-display-name\u003e-\u003ctimestamp-of-export-call\u003e\",\n where timestamp is in YYYY-MM-DDThh:mm:ss.sssZ ISO-8601 format,\n will be created. Inside the model and any of its supporting files\n will be written.",
"$ref": "GcsDestination"
},
"gcrDestination": {
"description": "The GCR location where model image is to be pushed to. This location\nmay only be set for the following model formats:\n \"docker\".\n\nThe model image will be created under the given URI.",
"$ref": "GcrDestination"
},
"modelFormat": {
"description": "The format in which the model must be exported. The available, and default,\nformats depend on the problem and model type (if given problem and type\ncombination doesn't have a format listed, it means its models are not\nexportable):\n\n* For Image Classification mobile-low-latency-1, mobile-versatile-1,\n mobile-high-accuracy-1:\n \"tflite\" (default), \"edgetpu_tflite\", \"tf_saved_model\", \"tf_js\",\n \"docker\".\n\n* For Image Classification mobile-core-ml-low-latency-1,\n mobile-core-ml-versatile-1, mobile-core-ml-high-accuracy-1:\n \"core_ml\" (default).\nFormats description:\n\n* tflite - Used for Android mobile devices.\n* edgetpu_tflite - Used for [Edge TPU](https://cloud.google.com/edge-tpu/)\n devices.\n* tf_saved_model - A tensorflow model in SavedModel format.\n* tf_js - A [TensorFlow.js](https://www.tensorflow.org/js) model that can\n be used in the browser and in Node.js using JavaScript.\n* docker - Used for Docker containers. Use the params field to customize\n the container. The container is verified to work correctly on\n ubuntu 16.04 operating system. See more at\n [containers\n\nquickstart](https:\n//cloud.google.com/vision/automl/docs/containers-gcs-quickstart)\n* core_ml - Used for iOS mobile devices.",
"type": "string"
}
},
"id": "ModelExportOutputConfig"
},
"VideoClassificationAnnotation": {
"description": "Contains annotation details specific to video classification.",
"type": "object",
"properties": {
"type": {
"description": "Output only. Expresses the type of video classification. Possible values:\n\n* `segment` - Classification done on a specified by user\n time segment of a video. AnnotationSpec is answered to be present\n in that time segment, if it is present in any part of it. The video\n ML model evaluations are done only for this type of classification.\n\n* `shot`- Shot-level classification.\n AutoML Video Intelligence determines the boundaries\n for each camera shot in the entire segment of the video that user\n specified in the request configuration. AutoML Video Intelligence\n then returns labels and their confidence scores for each detected\n shot, along with the start and end time of the shot.\n WARNING: Model evaluation is not done for this classification type,\n the quality of it depends on training data, but there are no\n metrics provided to describe that quality.\n\n* `1s_interval` - AutoML Video Intelligence returns labels and their\n confidence scores for each second of the entire segment of the video\n that user specified in the request configuration.\n WARNING: Model evaluation is not done for this classification type,\n the quality of it depends on training data, but there are no\n metrics provided to describe that quality.",
"type": "string"
},
"timeSegment": {
"$ref": "TimeSegment",
"description": "Output only . The time segment of the video to which the\nannotation applies."
},
"classificationAnnotation": {
"$ref": "ClassificationAnnotation",
"description": "Output only . The classification details of this annotation."
}
},
"id": "VideoClassificationAnnotation"
},
"ModelEvaluation": {
"description": "Evaluation results of a model.",
"type": "object",
"properties": {
"translationEvaluationMetrics": {
"description": "Model evaluation metrics for translation.",
"$ref": "TranslationEvaluationMetrics"
},
"displayName": {
"description": "Output only. The value of\ndisplay_name at\nthe moment when the model was trained. Because this field returns a value\nat model training time, for different models trained from the same dataset,\nthe values may differ, since display names could had been changed between\nthe two model's trainings.\nFor Tables CLASSIFICATION\n\nprediction_type-s\ndistinct values of the target column at the moment of the model evaluation\nare populated here.\nThe display_name is empty for the overall model evaluation.",
"type": "string"
},
"classificationEvaluationMetrics": {
"description": "Model evaluation metrics for image, text, video and tables\nclassification.\nTables problem is considered a classification when the target column\nis CATEGORY DataType.",
"$ref": "ClassificationEvaluationMetrics"
},
"createTime": {
"description": "Output only. Timestamp when this model evaluation was created.",
"format": "google-datetime",
"type": "string"
},
"annotationSpecId": {
"description": "Output only. The ID of the annotation spec that the model evaluation applies to. The\nThe ID is empty for the overall model evaluation.\nFor Tables annotation specs in the dataset do not exist and this ID is\nalways not set, but for CLASSIFICATION\n\nprediction_type-s\nthe\ndisplay_name\nfield is used.",
"type": "string"
},
"imageObjectDetectionEvaluationMetrics": {
"$ref": "ImageObjectDetectionEvaluationMetrics",
"description": "Model evaluation metrics for image object detection."
},
"textExtractionEvaluationMetrics": {
"$ref": "TextExtractionEvaluationMetrics",
"description": "Evaluation metrics for text extraction models."
},
"regressionEvaluationMetrics": {
"$ref": "RegressionEvaluationMetrics",
"description": "Model evaluation metrics for Tables regression.\nTables problem is considered a regression when the target column\nhas FLOAT64 DataType."
},
"evaluatedExampleCount": {
"description": "Output only. The number of examples used for model evaluation, i.e. for\nwhich ground truth from time of model creation is compared against the\npredicted annotations created by the model.\nFor overall ModelEvaluation (i.e. with annotation_spec_id not set) this is\nthe total number of all examples used for evaluation.\nOtherwise, this is the count of examples that according to the ground\ntruth were annotated by the\n\nannotation_spec_id.",
"format": "int32",
"type": "integer"
},
"name": {
"type": "string",
"description": "Output only. Resource name of the model evaluation.\nFormat:\n\n`projects/{project_id}/locations/{location_id}/models/{model_id}/modelEvaluations/{model_evaluation_id}`"
},
"videoObjectTrackingEvaluationMetrics": {
"$ref": "VideoObjectTrackingEvaluationMetrics",
"description": "Model evaluation metrics for video object tracking."
},
"textSentimentEvaluationMetrics": {
"$ref": "TextSentimentEvaluationMetrics",
"description": "Evaluation metrics for text sentiment models."
}
},
"id": "ModelEvaluation"
},
"Row": {
"description": "A representation of a row in a relational table.",
"type": "object",
"properties": {
"values": {
"type": "array",
"items": {
"type": "any"
},
"description": "Required. The values of the row cells, given in the same order as the\ncolumn_spec_ids, or, if not set, then in the same order as input\nfeature\n\ncolumn_specs\nof the Model this row is being passed to."
},
"columnSpecIds": {
"description": "The resource IDs of the column specs describing the columns of the row.\nIf set must contain, but possibly in a different order, all input\nfeature\n\ncolumn_spec_ids\nof the Model this row is being passed to.\nNote: The below `values` field must match order of this field, if this\nfield is set.",
"type": "array",
"items": {
"type": "string"
}
}
},
"id": "Row"
},
"Document": {
"id": "Document",
"description": "A structured text document e.g. a PDF.",
"type": "object",
"properties": {
"inputConfig": {
"description": "An input config specifying the content of the document.",
"$ref": "DocumentInputConfig"
},
"documentText": {
"description": "The plain text version of this document.",
"$ref": "TextSnippet"
},
"layout": {
"description": "Describes the layout of the document.\nSorted by page_number.",
"type": "array",
"items": {
"$ref": "Layout"
}
},
"pageCount": {
"description": "Number of pages in the document.",
"format": "int32",
"type": "integer"
},
"documentDimensions": {
"$ref": "DocumentDimensions",
"description": "The dimensions of the page in the document."
}
}
},
"ExportEvaluatedExamplesOperationMetadata": {
"description": "Details of EvaluatedExamples operation.",
"type": "object",
"properties": {
"outputInfo": {
"$ref": "ExportEvaluatedExamplesOutputInfo",
"description": "Output only. Information further describing the output of this evaluated\nexamples export."
}
},
"id": "ExportEvaluatedExamplesOperationMetadata"
},
"ListTableSpecsResponse": {
"id": "ListTableSpecsResponse",
"description": "Response message for AutoMl.ListTableSpecs.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass to ListTableSpecsRequest.page_token to obtain that page.",
"type": "string"
},
"tableSpecs": {
"description": "The table specs read.",
"type": "array",
"items": {
"$ref": "TableSpec"
}
}
}
},
"OperationMetadata": {
"description": "Metadata used across all long running operations returned by AutoML API.",
"type": "object",
"properties": {
"progressPercent": {
"type": "integer",
"description": "Output only. Progress of operation. Range: [0, 100].\nNot used currently.",
"format": "int32"
},
"deployModelDetails": {
"$ref": "DeployModelOperationMetadata",
"description": "Details of a DeployModel operation."
},
"exportModelDetails": {
"$ref": "ExportModelOperationMetadata",
"description": "Details of ExportModel operation."
},
"deleteDetails": {
"$ref": "DeleteOperationMetadata",
"description": "Details of a Delete operation."
},
"createModelDetails": {
"$ref": "CreateModelOperationMetadata",
"description": "Details of CreateModel operation."
},
"createTime": {
"description": "Output only. Time when the operation was created.",
"format": "google-datetime",
"type": "string"
},
"updateTime": {
"description": "Output only. Time when the operation was updated for the last time.",
"format": "google-datetime",
"type": "string"
},
"exportDataDetails": {
"$ref": "ExportDataOperationMetadata",
"description": "Details of ExportData operation."
},
"exportEvaluatedExamplesDetails": {
"$ref": "ExportEvaluatedExamplesOperationMetadata",
"description": "Details of ExportEvaluatedExamples operation."
},
"undeployModelDetails": {
"$ref": "UndeployModelOperationMetadata",
"description": "Details of an UndeployModel operation."
},
"importDataDetails": {
"$ref": "ImportDataOperationMetadata",
"description": "Details of ImportData operation."
},
"partialFailures": {
"description": "Output only. Partial failures encountered.\nE.g. single files that couldn't be read.\nThis field should never exceed 20 entries.\nStatus details field will contain standard GCP error details.",
"type": "array",
"items": {
"$ref": "Status"
}
},
"batchPredictDetails": {
"$ref": "BatchPredictOperationMetadata",
"description": "Details of BatchPredict operation."
}
},
"id": "OperationMetadata"
},
"GcrDestination": {
"id": "GcrDestination",
"description": "The GCR location where the image must be pushed to.",
"type": "object",
"properties": {
"outputUri": {
"description": "Required. Google Contained Registry URI of the new image, up to 2000\ncharacters long. See\n\nhttps:\n//cloud.google.com/container-registry/do\n// cs/pushing-and-pulling#pushing_an_image_to_a_registry\nAccepted forms:\n* [HOSTNAME]/[PROJECT-ID]/[IMAGE]\n* [HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG]\n\nThe requesting user must have permission to push images the project.",
"type": "string"
}
}
},
"ImageObjectDetectionDatasetMetadata": {
"description": "Dataset metadata specific to image object detection.",
"type": "object",
"properties": {},
"id": "ImageObjectDetectionDatasetMetadata"
},
"BoundingBoxMetricsEntryConfidenceMetricsEntry": {
"id": "BoundingBoxMetricsEntryConfidenceMetricsEntry",
"description": "Metrics for a single confidence threshold.",
"type": "object",
"properties": {
"recall": {
"description": "Output only. Recall under the given confidence threshold.",
"format": "float",
"type": "number"
},
"f1Score": {
"description": "Output only. The harmonic mean of recall and precision.",
"format": "float",
"type": "number"
},
"precision": {
"description": "Output only. Precision under the given confidence threshold.",
"format": "float",
"type": "number"
},
"confidenceThreshold": {
"description": "Output only. The confidence threshold value used to compute the metrics.",
"format": "float",
"type": "number"
}
}
},
"ExportEvaluatedExamplesOutputConfig": {
"description": "Output configuration for ExportEvaluatedExamples Action. Note that this call\nis available only for 30 days since the moment the model was evaluated.\nThe output depends on the domain, as follows (note that only examples from\nthe TEST set are exported):\n\n * For Tables:\n\nbigquery_destination\n pointing to a BigQuery project must be set. In the given project a\n new dataset will be created with name\n\n`export_evaluated_examples_\u003cmodel-display-name\u003e_\u003ctimestamp-of-export-call\u003e`\n where \u003cmodel-display-name\u003e will be made BigQuery-dataset-name\n compatible (e.g. most special characters will become underscores),\n and timestamp will be in YYYY_MM_DDThh_mm_ss_sssZ \"based on ISO-8601\"\n format. In the dataset an `evaluated_examples` table will be\n created. It will have all the same columns as the\n\nprimary_table\n of the\n dataset from which\n the model was created, as they were at the moment of model's\n evaluation (this includes the target column with its ground\n truth), followed by a column called \"predicted_\u003ctarget_column\u003e\". That\n last column will contain the model's prediction result for each\n respective row, given as ARRAY of\n AnnotationPayloads,\n represented as STRUCT-s, containing\n TablesAnnotation.",
"type": "object",
"properties": {
"bigqueryDestination": {
"$ref": "BigQueryDestination",
"description": "The BigQuery location where the output is to be written to."
}
},
"id": "ExportEvaluatedExamplesOutputConfig"
},
"ImportDataOperationMetadata": {
"description": "Details of ImportData operation.",
"type": "object",
"properties": {},
"id": "ImportDataOperationMetadata"
},
"StructStats": {
"description": "The data statistics of a series of STRUCT values.",
"type": "object",
"properties": {
"fieldStats": {
"type": "object",
"additionalProperties": {
"$ref": "DataStats"
},
"description": "Map from a field name of the struct to data stats aggregated over series\nof all data in that field across all the structs."
}
},
"id": "StructStats"
},
"ImageObjectDetectionEvaluationMetrics": {
"id": "ImageObjectDetectionEvaluationMetrics",
"description": "Model evaluation metrics for image object detection problems.\nEvaluates prediction quality of labeled bounding boxes.",
"type": "object",
"properties": {
"boundingBoxMeanAveragePrecision": {
"description": "Output only. The single metric for bounding boxes evaluation:\nthe mean_average_precision averaged over all bounding_box_metrics_entries.",
"format": "float",
"type": "number"
},
"evaluatedBoundingBoxCount": {
"description": "Output only. The total number of bounding boxes (i.e. summed over all\nimages) the ground truth used to create this evaluation had.",
"format": "int32",
"type": "integer"
},
"boundingBoxMetricsEntries": {
"description": "Output only. The bounding boxes match metrics for each\nIntersection-over-union threshold 0.05,0.10,...,0.95,0.96,0.97,0.98,0.99\nand each label confidence threshold 0.05,0.10,...,0.95,0.96,0.97,0.98,0.99\npair.",
"type": "array",
"items": {
"$ref": "BoundingBoxMetricsEntry"
}
}
}
},
"BoundingPoly": {
"id": "BoundingPoly",
"description": "A bounding polygon of a detected object on a plane.\nOn output both vertices and normalized_vertices are provided.\nThe polygon is formed by connecting vertices in the order they are listed.",
"type": "object",
"properties": {
"normalizedVertices": {
"description": "Output only . The bounding polygon normalized vertices.",
"type": "array",
"items": {
"$ref": "NormalizedVertex"
}
}
}
},
"TextClassificationDatasetMetadata": {
"type": "object",
"properties": {
"classificationType": {
"enumDescriptions": [
"An un-set value of this enum.",
"At most one label is allowed per example.",
"Multiple labels are allowed for one example."
],
"enum": [
"CLASSIFICATION_TYPE_UNSPECIFIED",
"MULTICLASS",
"MULTILABEL"
],
"description": "Required. Type of the classification problem.",
"type": "string"
}
},
"id": "TextClassificationDatasetMetadata",
"description": "Dataset metadata for classification."
},
"BatchPredictResult": {
"description": "Result of the Batch Predict. This message is returned in\nresponse of the operation returned\nby the PredictionService.BatchPredict.",
"type": "object",
"properties": {
"metadata": {
"description": "Additional domain-specific prediction response metadata.\n\n* For Image Object Detection:\n `max_bounding_box_count` - (int64) At most that many bounding boxes per\n image could have been returned.\n\n* For Video Object Tracking:\n `max_bounding_box_count` - (int64) At most that many bounding boxes per\n frame could have been returned.",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"id": "BatchPredictResult"
},
"TextSentimentDatasetMetadata": {
"description": "Dataset metadata for text sentiment.",
"type": "object",
"properties": {
"sentimentMax": {
"description": "Required. A sentiment is expressed as an integer ordinal, where higher value\nmeans a more positive sentiment. The range of sentiments that will be used\nis between 0 and sentiment_max (inclusive on both ends), and all the values\nin the range must be represented in the dataset before a model can be\ncreated.\nsentiment_max value must be between 1 and 10 (inclusive).",
"format": "int32",
"type": "integer"
}
},
"id": "TextSentimentDatasetMetadata"
},
"CorrelationStats": {
"description": "A correlation statistics between two series of DataType values. The series\nmay have differing DataType-s, but within a single series the DataType must\nbe the same.",
"type": "object",
"properties": {
"cramersV": {
"description": "The correlation value using the Cramer's V measure.",
"format": "double",
"type": "number"
}
},
"id": "CorrelationStats"
},
"ImageClassificationModelDeploymentMetadata": {
"id": "ImageClassificationModelDeploymentMetadata",
"description": "Model deployment metadata specific to Image Classification.",
"type": "object",
"properties": {
"nodeCount": {
"description": "Input only. The number of nodes to deploy the model on. A node is an\nabstraction of a machine resource, which can handle online prediction QPS\nas given in the model's\n\nnode_qps.\nMust be between 1 and 100, inclusive on both ends.",
"format": "int64",
"type": "string"
}
}
},
"ExportModelOutputInfo": {
"description": "Further describes the output of model export.\nSupplements\n\nModelExportOutputConfig.",
"type": "object",
"properties": {
"gcsOutputDirectory": {
"type": "string",
"description": "The full path of the Google Cloud Storage directory created, into which\nthe model will be exported."
}
},
"id": "ExportModelOutputInfo"
},
"ExportDataRequest": {
"id": "ExportDataRequest",
"description": "Request message for AutoMl.ExportData.",
"type": "object",
"properties": {
"outputConfig": {
"$ref": "OutputConfig",
"description": "Required. The desired output location."
}
}
},
"ListColumnSpecsResponse": {
"description": "Response message for AutoMl.ListColumnSpecs.",
"type": "object",
"properties": {
"columnSpecs": {
"description": "The column specs read.",
"type": "array",
"items": {
"$ref": "ColumnSpec"
}
},
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass to ListColumnSpecsRequest.page_token to obtain that page.",
"type": "string"
}
},
"id": "ListColumnSpecsResponse"
},
"Location": {
"type": "object",
"properties": {
"name": {
"description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`",
"type": "string"
},
"locationId": {
"description": "The canonical id for this location. For example: `\"us-east1\"`.",
"type": "string"
},
"displayName": {
"description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".",
"type": "string"
},
"metadata": {
"description": "Service-specific metadata. For example the available capacity at the given\nlocation.",
"type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
}
},
"labels": {
"description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"id": "Location",
"description": "A resource that represents Google Cloud Platform location."
},
"ClassificationAnnotation": {
"description": "Contains annotation details specific to classification.",
"type": "object",
"properties": {
"score": {
"type": "number",
"description": "Output only. A confidence estimate between 0.0 and 1.0. A higher value\nmeans greater confidence that the annotation is positive. If a user\napproves an annotation as negative or positive, the score value remains\nunchanged. If a user creates an annotation, the score is 0 for negative or\n1 for positive.",
"format": "float"
}
},
"id": "ClassificationAnnotation"
},
"VideoObjectTrackingModelMetadata": {
"id": "VideoObjectTrackingModelMetadata",
"description": "Model metadata specific to video object tracking.",
"type": "object",
"properties": {}
}
},
"protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"canonicalName": "Cloud Auto ML",
"auth": {
"oauth2": {
"scopes": {
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
}
}
}
},
"rootUrl": "https://automl.googleapis.com/",
"ownerDomain": "google.com",
"name": "automl",
"batchPath": "batch",
"mtlsRootUrl": "https://automl.mtls.googleapis.com/",
"fullyEncodeReservedExpansion": true,
"title": "Cloud AutoML API",
"ownerName": "Google",
"resources": {
"projects": {
"resources": {
"locations": {
"methods": {
"setIamPolicy": {
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:setIamPolicy",
"id": "automl.projects.locations.setIamPolicy",
"path": "v1beta1/{+resource}:setIamPolicy",
"description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED",
"request": {
"$ref": "SetIamPolicyRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"resource"
],
"response": {
"$ref": "Policy"
},
"parameters": {
"resource": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"testIamPermissions": {
"id": "automl.projects.locations.testIamPermissions",
"path": "v1beta1/{+resource}:testIamPermissions",
"request": {
"$ref": "TestIamPermissionsRequest"
},
"description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
"httpMethod": "POST",
"parameterOrder": [
"resource"
],
"response": {
"$ref": "TestIamPermissionsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"resource": {
"description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/.*$",
"location": "path"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/{locationsId1}:testIamPermissions"
},
"getIamPolicy": {
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:getIamPolicy",
"path": "v1beta1/{+resource}:getIamPolicy",
"id": "automl.projects.locations.getIamPolicy",
"description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
"response": {
"$ref": "Policy"
},
"parameterOrder": [
"resource"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"options.requestedPolicyVersion": {
"description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.",
"format": "int32",
"type": "integer",
"location": "query"
},
"resource": {
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
"required": true,
"type": "string"
}
}
},
"list": {
"httpMethod": "GET",
"parameterOrder": [
"name"
],
"response": {
"$ref": "ListLocationsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"filter": {
"description": "The standard list filter.",
"type": "string",
"location": "query"
},
"name": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The resource that owns the locations collection, if applicable.",
"required": true,
"type": "string"
},
"pageToken": {
"type": "string",
"location": "query",
"description": "The standard list page token."
},
"pageSize": {
"type": "integer",
"location": "query",
"description": "The standard list page size.",
"format": "int32"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations",
"id": "automl.projects.locations.list",
"path": "v1beta1/{+name}/locations",
"description": "Lists information about the supported locations for this service."
},
"get": {
"description": "Gets information about a location.",
"response": {
"$ref": "Location"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "Resource name for the location."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.get"
}
},
"resources": {
"operations": {
"methods": {
"cancel": {
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
"location": "path",
"description": "The name of the operation resource to be cancelled.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
"path": "v1beta1/{+name}:cancel",
"id": "automl.projects.locations.operations.cancel",
"request": {
"$ref": "CancelOperationRequest"
},
"description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
},
"delete": {
"httpMethod": "DELETE",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Empty"
},
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
"location": "path",
"description": "The name of the operation resource to be deleted."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
"id": "automl.projects.locations.operations.delete",
"path": "v1beta1/{+name}",
"description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`."
},
"list": {
"description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
"response": {
"$ref": "ListOperationsResponse"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "The name of the operation's parent resource."
},
"pageToken": {
"location": "query",
"description": "The standard list page token.",
"type": "string"
},
"pageSize": {
"location": "query",
"description": "The standard list page size.",
"format": "int32",
"type": "integer"
},
"filter": {
"type": "string",
"location": "query",
"description": "An expression for filtering the results of the request.\n\n* `operation_id` - for = or !=.\n* `done` - for = or !=.\n* `works_on` - for = or !=.\n\nSome examples of using the filter are:\n\n* `done=true` --\u003e The operation has finished running.\n* `works_on = projects/my-project/locations/us-central1/datasets/5`\n --\u003e The operation works on a dataset with ID 5.\n* `works_on = projects/my-project/locations/us-central1/models/15`\n --\u003e The operation works on a model with ID 15."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations",
"path": "v1beta1/{+name}/operations",
"id": "automl.projects.locations.operations.list"
},
"get": {
"description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
"response": {
"$ref": "Operation"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
"location": "path",
"description": "The name of the operation resource.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.operations.get"
},
"wait": {
"id": "automl.projects.locations.operations.wait",
"path": "v1beta1/{+name}:wait",
"description": "Waits for the specified long-running operation until it is done or reaches\nat most a specified timeout, returning the latest state. If the operation\nis already done, the latest state is immediately returned. If the timeout\nspecified is greater than the default HTTP/RPC timeout, the HTTP/RPC\ntimeout is used. If the server does not support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.\nNote that this method is on a best-effort basis. It may return the latest\nstate before the specified timeout (including immediately), meaning even an\nimmediate response is no guarantee that the operation is done.",
"request": {
"$ref": "WaitOperationRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
"location": "path",
"description": "The name of the operation resource to wait on.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait"
}
}
},
"models": {
"methods": {
"setIamPolicy": {
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:setIamPolicy",
"id": "automl.projects.locations.models.setIamPolicy",
"path": "v1beta1/{+resource}:setIamPolicy",
"description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED",
"request": {
"$ref": "SetIamPolicyRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"resource"
],
"response": {
"$ref": "Policy"
},
"parameters": {
"resource": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"undeploy": {
"request": {
"$ref": "UndeployModelRequest"
},
"description": "Undeploys a model. If the model is not deployed this method has no effect.\n\nOnly applicable for Text Classification, Image Object Detection and Tables;\nall other domains manage deployment automatically.\n\nReturns an empty response in the\nresponse field when it completes.",
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "Required. Resource name of the model to undeploy."
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:undeploy",
"id": "automl.projects.locations.models.undeploy",
"path": "v1beta1/{+name}:undeploy"
},
"export": {
"response": {
"$ref": "Operation"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"location": "path",
"description": "Required. The resource name of the model to export.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:export",
"path": "v1beta1/{+name}:export",
"id": "automl.projects.locations.models.export",
"request": {
"$ref": "ExportModelRequest"
},
"description": "Exports a trained, \"export-able\", model to a user specified Google Cloud\nStorage location. A model is considered export-able if and only if it has\nan export format defined for it in\n\nModelExportOutputConfig.\n\nReturns an empty response in the\nresponse field when it completes."
},
"getIamPolicy": {
"path": "v1beta1/{+resource}:getIamPolicy",
"id": "automl.projects.locations.models.getIamPolicy",
"description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
"response": {
"$ref": "Policy"
},
"parameterOrder": [
"resource"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"options.requestedPolicyVersion": {
"location": "query",
"description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.",
"format": "int32",
"type": "integer"
},
"resource": {
"description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:getIamPolicy"
},
"batchPredict": {
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "Required. Name of the model requested to serve the batch prediction.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:batchPredict",
"path": "v1beta1/{+name}:batchPredict",
"id": "automl.projects.locations.models.batchPredict",
"request": {
"$ref": "BatchPredictRequest"
},
"description": "Perform a batch prediction. Unlike the online Predict, batch\nprediction result won't be immediately available in the response. Instead,\na long running operation object is returned. User can poll the operation\nresult via GetOperation\nmethod. Once the operation is done, BatchPredictResult is returned in\nthe response field.\nAvailable for following ML problems:\n* Image Classification\n* Image Object Detection\n* Video Classification\n* Video Object Tracking * Text Extraction\n* Tables",
"response": {
"$ref": "Operation"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST"
},
"list": {
"path": "v1beta1/{+parent}/models",
"id": "automl.projects.locations.models.list",
"description": "Lists models.",
"response": {
"$ref": "ListModelsResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"parameters": {
"parent": {
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "Required. Resource name of the project, from which to list the models.",
"required": true,
"type": "string"
},
"filter": {
"type": "string",
"location": "query",
"description": "An expression for filtering the results of the request.\n\n * `model_metadata` - for existence of the case (e.g.\n video_classification_model_metadata:*).\n * `dataset_id` - for = or !=. Some examples of using the filter are:\n\n * `image_classification_model_metadata:*` --\u003e The model has\n image_classification_model_metadata.\n * `dataset_id=5` --\u003e The model was created from a dataset with ID 5."
},
"pageToken": {
"location": "query",
"description": "A token identifying a page of results for the server to return\nTypically obtained via\nListModelsResponse.next_page_token of the previous\nAutoMl.ListModels call.",
"type": "string"
},
"pageSize": {
"location": "query",
"description": "Requested page size.",
"format": "int32",
"type": "integer"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models"
},
"create": {
"httpMethod": "POST",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "Operation"
},
"parameters": {
"parent": {
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path",
"description": "Required. Resource name of the parent project where the model is being created.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models",
"id": "automl.projects.locations.models.create",
"path": "v1beta1/{+parent}/models",
"description": "Creates a model.\nReturns a Model in the response\nfield when it completes.\nWhen you create a model, several model evaluations are created for it:\na global evaluation, and one evaluation for each annotation spec.",
"request": {
"$ref": "Model"
}
},
"deploy": {
"id": "automl.projects.locations.models.deploy",
"path": "v1beta1/{+name}:deploy",
"description": "Deploys a model. If a model is already deployed, deploying it with the\nsame parameters has no effect. Deploying with different parametrs\n(as e.g. changing\n\nnode_number)\n will reset the deployment state without pausing the model's availability.\n\nOnly applicable for Text Classification, Image Object Detection , Tables, and Image Segmentation; all other domains manage\ndeployment automatically.\n\nReturns an empty response in the\nresponse field when it completes.",
"request": {
"$ref": "DeployModelRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"parameters": {
"name": {
"description": "Required. Resource name of the model to deploy.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:deploy"
},
"predict": {
"request": {
"$ref": "PredictRequest"
},
"description": "Perform an online prediction. The prediction result will be directly\nreturned in the response.\nAvailable for following ML problems, and their expected request payloads:\n* Image Classification - Image in .JPEG, .GIF or .PNG format, image_bytes\n up to 30MB.\n* Image Object Detection - Image in .JPEG, .GIF or .PNG format, image_bytes\n up to 30MB.\n* Text Classification - TextSnippet, content up to 60,000 characters,\n UTF-8 encoded.\n* Text Extraction - TextSnippet, content up to 30,000 characters,\n UTF-8 NFC encoded.\n* Translation - TextSnippet, content up to 25,000 characters, UTF-8\n encoded.\n* Tables - Row, with column values matching the columns of the model,\n up to 5MB. Not available for FORECASTING\n\nprediction_type.\n* Text Sentiment - TextSnippet, content up 500 characters, UTF-8\n encoded.",
"response": {
"$ref": "PredictResponse"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "Required. Name of the model requested to serve the prediction."
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:predict",
"path": "v1beta1/{+name}:predict",
"id": "automl.projects.locations.models.predict"
},
"get": {
"httpMethod": "GET",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Model"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "Required. Resource name of the model."
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}",
"id": "automl.projects.locations.models.get",
"path": "v1beta1/{+name}",
"description": "Gets a model."
},
"exportEvaluatedExamples": {
"request": {
"$ref": "ExportEvaluatedExamplesRequest"
},
"description": "Exports examples on which the model was evaluated (i.e. which were in the\nTEST set of the dataset the model was created from), together with their\nground truth annotations and the annotations created (predicted) by the\nmodel.\nThe examples, ground truth and predictions are exported in the state\nthey were at the moment the model was evaluated.\n\nThis export is available only for 30 days since the model evaluation is\ncreated.\n\nCurrently only available for Tables.\n\nReturns an empty response in the\nresponse field when it completes.",
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"location": "path",
"description": "Required. The resource name of the model whose evaluated examples are to\nbe exported.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}:exportEvaluatedExamples",
"id": "automl.projects.locations.models.exportEvaluatedExamples",
"path": "v1beta1/{+name}:exportEvaluatedExamples"
},
"delete": {
"description": "Deletes a model.\nReturns `google.protobuf.Empty` in the\nresponse field when it completes,\nand `delete_details` in the\nmetadata field.",
"response": {
"$ref": "Operation"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path",
"description": "Required. Resource name of the model being deleted.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.models.delete"
}
},
"resources": {
"modelEvaluations": {
"methods": {
"get": {
"response": {
"$ref": "ModelEvaluation"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+/modelEvaluations/[^/]+$",
"location": "path",
"description": "Required. Resource name for the model evaluation."
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}/modelEvaluations/{modelEvaluationsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.models.modelEvaluations.get",
"description": "Gets a model evaluation."
},
"list": {
"parameters": {
"pageToken": {
"location": "query",
"description": "A token identifying a page of results for the server to return.\nTypically obtained via\nListModelEvaluationsResponse.next_page_token of the previous\nAutoMl.ListModelEvaluations call.",
"type": "string"
},
"pageSize": {
"description": "Requested page size.",
"format": "int32",
"type": "integer",
"location": "query"
},
"parent": {
"description": "Required. Resource name of the model to list the model evaluations for.\nIf modelId is set as \"-\", this will list model evaluations from across all\nmodels of the parent location.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$",
"location": "path"
},
"filter": {
"location": "query",
"description": "An expression for filtering the results of the request.\n\n * `annotation_spec_id` - for =, != or existence. See example below for\n the last.\n\nSome examples of using the filter are:\n\n * `annotation_spec_id!=4` --\u003e The model evaluation was done for\n annotation spec with ID different than 4.\n * `NOT annotation_spec_id:*` --\u003e The model evaluation was done for\n aggregate of all annotation specs.",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/models/{modelsId}/modelEvaluations",
"id": "automl.projects.locations.models.modelEvaluations.list",
"path": "v1beta1/{+parent}/modelEvaluations",
"description": "Lists model evaluations.",
"httpMethod": "GET",
"response": {
"$ref": "ListModelEvaluationsResponse"
},
"parameterOrder": [
"parent"
]
}
}
}
}
},
"datasets": {
"methods": {
"getIamPolicy": {
"description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
"response": {
"$ref": "Policy"
},
"parameterOrder": [
"resource"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"options.requestedPolicyVersion": {
"location": "query",
"description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.",
"format": "int32",
"type": "integer"
},
"resource": {
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path",
"description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:getIamPolicy",
"path": "v1beta1/{+resource}:getIamPolicy",
"id": "automl.projects.locations.datasets.getIamPolicy"
},
"patch": {
"description": "Updates a dataset.",
"request": {
"$ref": "Dataset"
},
"httpMethod": "PATCH",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Dataset"
},
"parameters": {
"name": {
"description": "Output only. The resource name of the dataset.\nForm: `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path"
},
"updateMask": {
"location": "query",
"description": "The update mask applies to the resource.",
"format": "google-fieldmask",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
"id": "automl.projects.locations.datasets.patch",
"path": "v1beta1/{+name}"
},
"get": {
"response": {
"$ref": "Dataset"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path",
"description": "Required. The resource name of the dataset to retrieve.",
"required": true,
"type": "string"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.datasets.get",
"description": "Gets a dataset."
},
"exportData": {
"path": "v1beta1/{+name}:exportData",
"id": "automl.projects.locations.datasets.exportData",
"description": "Exports dataset's data to the provided output location.\nReturns an empty response in the\nresponse field when it completes.",
"request": {
"$ref": "ExportDataRequest"
},
"response": {
"$ref": "Operation"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST",
"parameters": {
"name": {
"description": "Required. The resource name of the dataset.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:exportData"
},
"importData": {
"id": "automl.projects.locations.datasets.importData",
"path": "v1beta1/{+name}:importData",
"description": "Imports data into a dataset.\nFor Tables this method can only be called on an empty Dataset.\n\nFor Tables:\n* A\nschema_inference_version\n parameter must be explicitly set.\nReturns an empty response in the\nresponse field when it completes.",
"request": {
"$ref": "ImportDataRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path",
"description": "Required. Dataset name. Dataset must already exist. All imported\nannotations and examples will be added.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:importData"
},
"delete": {
"description": "Deletes a dataset and all of its contents.\nReturns empty response in the\nresponse field when it completes,\nand `delete_details` in the\nmetadata field.",
"httpMethod": "DELETE",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
},
"parameters": {
"name": {
"description": "Required. The resource name of the dataset to delete.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
"id": "automl.projects.locations.datasets.delete",
"path": "v1beta1/{+name}"
},
"list": {
"description": "Lists datasets in a project.",
"response": {
"$ref": "ListDatasetsResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"parameters": {
"pageToken": {
"type": "string",
"location": "query",
"description": "A token identifying a page of results for the server to return\nTypically obtained via\nListDatasetsResponse.next_page_token of the previous\nAutoMl.ListDatasets call."
},
"pageSize": {
"location": "query",
"description": "Requested page size. Server may return fewer results than requested.\nIf unspecified, server will pick a default size.",
"format": "int32",
"type": "integer"
},
"parent": {
"description": "Required. The resource name of the project from which to list datasets.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"location": "path"
},
"filter": {
"location": "query",
"description": "An expression for filtering the results of the request.\n\n * `dataset_metadata` - for existence of the case (e.g.\n image_classification_dataset_metadata:*). Some examples of using the filter are:\n\n * `translation_dataset_metadata:*` --\u003e The dataset has\n translation_dataset_metadata.",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets",
"path": "v1beta1/{+parent}/datasets",
"id": "automl.projects.locations.datasets.list"
},
"setIamPolicy": {
"description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED",
"request": {
"$ref": "SetIamPolicyRequest"
},
"response": {
"$ref": "Policy"
},
"parameterOrder": [
"resource"
],
"httpMethod": "POST",
"parameters": {
"resource": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path",
"description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:setIamPolicy",
"path": "v1beta1/{+resource}:setIamPolicy",
"id": "automl.projects.locations.datasets.setIamPolicy"
},
"create": {
"response": {
"$ref": "Dataset"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"location": "path",
"description": "Required. The resource name of the project to create the dataset for.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets",
"path": "v1beta1/{+parent}/datasets",
"id": "automl.projects.locations.datasets.create",
"description": "Creates a dataset.",
"request": {
"$ref": "Dataset"
}
}
},
"resources": {
"annotationSpecs": {
"methods": {
"get": {
"response": {
"$ref": "AnnotationSpec"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationSpecs/[^/]+$",
"location": "path",
"description": "Required. The resource name of the annotation spec to retrieve.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationSpecs/{annotationSpecsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.datasets.annotationSpecs.get",
"description": "Gets an annotation spec."
}
}
},
"tableSpecs": {
"methods": {
"get": {
"description": "Gets a table spec.",
"response": {
"$ref": "TableSpec"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/tableSpecs/[^/]+$",
"location": "path",
"description": "Required. The resource name of the table spec to retrieve."
},
"fieldMask": {
"location": "query",
"description": "Mask specifying which fields to read.",
"format": "google-fieldmask",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs/{tableSpecsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.datasets.tableSpecs.get"
},
"list": {
"response": {
"$ref": "ListTableSpecsResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
"location": "path",
"description": "Required. The resource name of the dataset to list table specs from.",
"required": true,
"type": "string"
},
"filter": {
"type": "string",
"location": "query",
"description": "Filter expression, see go/filtering."
},
"fieldMask": {
"location": "query",
"description": "Mask specifying which fields to read.",
"format": "google-fieldmask",
"type": "string"
},
"pageToken": {
"location": "query",
"description": "A token identifying a page of results for the server to return.\nTypically obtained from the\nListTableSpecsResponse.next_page_token field of the previous\nAutoMl.ListTableSpecs call.",
"type": "string"
},
"pageSize": {
"description": "Requested page size. The server can return fewer results than requested.\nIf unspecified, the server will pick a default size.",
"format": "int32",
"type": "integer",
"location": "query"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs",
"path": "v1beta1/{+parent}/tableSpecs",
"id": "automl.projects.locations.datasets.tableSpecs.list",
"description": "Lists table specs in a dataset."
},
"patch": {
"httpMethod": "PATCH",
"parameterOrder": [
"name"
],
"response": {
"$ref": "TableSpec"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Output only. The resource name of the table spec.\nForm:\n\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/tableSpecs/{table_spec_id}`",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/tableSpecs/[^/]+$",
"location": "path"
},
"updateMask": {
"type": "string",
"location": "query",
"description": "The update mask applies to the resource.",
"format": "google-fieldmask"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs/{tableSpecsId}",
"id": "automl.projects.locations.datasets.tableSpecs.patch",
"path": "v1beta1/{+name}",
"request": {
"$ref": "TableSpec"
},
"description": "Updates a table spec."
}
},
"resources": {
"columnSpecs": {
"methods": {
"get": {
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs/{tableSpecsId}/columnSpecs/{columnSpecsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.datasets.tableSpecs.columnSpecs.get",
"description": "Gets a column spec.",
"response": {
"$ref": "ColumnSpec"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"location": "path",
"description": "Required. The resource name of the column spec to retrieve.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/tableSpecs/[^/]+/columnSpecs/[^/]+$"
},
"fieldMask": {
"location": "query",
"description": "Mask specifying which fields to read.",
"format": "google-fieldmask",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"list": {
"description": "Lists column specs in a table spec.",
"httpMethod": "GET",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "ListColumnSpecsResponse"
},
"parameters": {
"fieldMask": {
"description": "Mask specifying which fields to read.",
"format": "google-fieldmask",
"type": "string",
"location": "query"
},
"pageToken": {
"type": "string",
"location": "query",
"description": "A token identifying a page of results for the server to return.\nTypically obtained from the\nListColumnSpecsResponse.next_page_token field of the previous\nAutoMl.ListColumnSpecs call."
},
"pageSize": {
"location": "query",
"description": "Requested page size. The server can return fewer results than requested.\nIf unspecified, the server will pick a default size.",
"format": "int32",
"type": "integer"
},
"parent": {
"description": "Required. The resource name of the table spec to list column specs from.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/tableSpecs/[^/]+$",
"location": "path"
},
"filter": {
"location": "query",
"description": "Filter expression, see go/filtering.",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs/{tableSpecsId}/columnSpecs",
"id": "automl.projects.locations.datasets.tableSpecs.columnSpecs.list",
"path": "v1beta1/{+parent}/columnSpecs"
},
"patch": {
"response": {
"$ref": "ColumnSpec"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"updateMask": {
"description": "The update mask applies to the resource.",
"format": "google-fieldmask",
"type": "string",
"location": "query"
},
"name": {
"description": "Output only. The resource name of the column specs.\nForm:\n\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/tableSpecs/{table_spec_id}/columnSpecs/{column_spec_id}`",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/tableSpecs/[^/]+/columnSpecs/[^/]+$",
"location": "path"
}
},
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/tableSpecs/{tableSpecsId}/columnSpecs/{columnSpecsId}",
"path": "v1beta1/{+name}",
"id": "automl.projects.locations.datasets.tableSpecs.columnSpecs.patch",
"request": {
"$ref": "ColumnSpec"
},
"description": "Updates a column spec."
}
}
}
}
}
}
}
}
}
}
}
},
"parameters": {
"uploadType": {
"location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string"
},
"fields": {
"type": "string",
"location": "query",
"description": "Selector specifying which fields to include in a partial response."
},
"callback": {
"type": "string",
"location": "query",
"description": "JSONP"
},
"oauth_token": {
"type": "string",
"location": "query",
"description": "OAuth 2.0 token for the current user."
},
"$.xgafv": {
"location": "query",
"enum": [
"1",
"2"
],
"description": "V1 error format.",
"type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
]
},
"alt": {
"description": "Data format for response.",
"default": "json",
"enum": [
"json",
"media",
"proto"
],
"type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query"
},
"key": {
"type": "string",
"location": "query",
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token."
},
"access_token": {
"location": "query",
"description": "OAuth access token.",
"type": "string"
},
"upload_protocol": {
"type": "string",
"location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
},
"quotaUser": {
"location": "query",
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
"type": "string"
},
"prettyPrint": {
"description": "Returns response with indentations and line breaks.",
"type": "boolean",
"default": "true",
"location": "query"
}
},
"version": "v1beta1",
"baseUrl": "https://automl.googleapis.com/",
"description": "Train high-quality custom machine learning models with minimum effort and machine learning expertise.",
"kind": "discovery#restDescription",
"servicePath": "",
"basePath": ""
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment