REST Resource: projects.locations.processors.processorVersions

Stay organized with collections Save and categorize content based on your preferences.

Resource: ProcessorVersion

A processor version is an implementation of a processor. Each processor can have multiple versions, pre-trained by Google internally or up-trained by the customer. At a time, a processor can only have one default version version. So the processor's behavior (when processing documents) is defined by a default version

JSON representation
{
  "name": string,
  "displayName": string,
  "documentSchema": {
    object (DocumentSchema)
  },
  "state": enum (State),
  "createTime": string,
  "kmsKeyName": string,
  "kmsKeyVersionName": string,
  "googleManaged": boolean,
  "deprecationInfo": {
    object (DeprecationInfo)
  }
}
Fields
name

string

The resource name of the processor version. Format: projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}

displayName

string

The display name of the processor version.

documentSchema

object (DocumentSchema)

The schema of the processor version. Describes the output.

state

enum (State)

The state of the processor version.

createTime

string (Timestamp format)

The time the processor version was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

kmsKeyName

string

The KMS key name used for encryption.

kmsKeyVersionName

string

The KMS key version with which data is encrypted.

googleManaged

boolean

Denotes that this ProcessorVersion is managed by google.

deprecationInfo

object (DeprecationInfo)

If set, information about the eventual deprecation of this version.

DocumentSchema

The schema defines the output of the processed document by a processor.

JSON representation
{
  "displayName": string,
  "description": string,
  "entityTypes": [
    {
      object (EntityType)
    }
  ],
  "metadata": {
    object (Metadata)
  }
}
Fields
displayName

string

Display name to show to users.

description

string

Description of the schema.

entityTypes[]

object (EntityType)

Entity types of the schema.

metadata

object (Metadata)

Metadata of the schema.

EntityType

EntityType is the wrapper of a label of the corresponding model with detailed attributes and limitations for entity-based processors. Multiple types can also compose a dependency tree to represent nested types.

JSON representation
{
  "displayName": string,
  "name": string,
  "baseTypes": [
    string
  ],
  "properties": [
    {
      object (Property)
    }
  ],
  "enumValues": {
    object (EnumValues)
  }
}
Fields
displayName

string

User defined name for the type.

name

string

Name of the type. It must be unique within the schema file and cannot be a 'Common Type'. Besides that we use the following naming conventions:

  • use snake_casing
  • name matching is case-sensitive
  • Maximum 64 characters.
  • Must start with a letter.
  • Allowed characters: ASCII letters [a-z0-9_-]. (For backward compatibility internal infrastructure and tooling can handle any ascii character)
  • The / is sometimes used to denote a property of a type. For example line_item/amount. This convention is deprecated, but will still be honored for backward compatibility.
baseTypes[]

string

The entity type that this type is derived from. For now, one and only one should be set.

properties[]

object (Property)

Describing the nested structure, or composition of an entity.

enumValues

object (EnumValues)

If specified, lists all the possible values for this entity. This should not be more than a handful of values. If the number of values is >10 or could change frequently use the EntityType.value_ontology field and specify a list of all possible values in a value ontology file.

EnumValues

Defines the a list of enum values.

JSON representation
{
  "values": [
    string
  ]
}
Fields
values[]

string

The individual values that this enum values type can include.

Property

Defines properties that can be part of the entity type.

JSON representation
{
  "name": string,
  "valueType": string,
  "occurrenceType": enum (OccurrenceType)
}
Fields
name

string

The name of the property. Follows the same guidelines as the EntityType name.

valueType

string

A reference to the value type of the property. This type is subject to the same conventions as the Entity.base_types field.

occurrenceType

enum (OccurrenceType)

Occurrence type limits the number of instances an entity type appears in the document.

OccurrenceType

Types of occurrences of the entity type in the document. Note: this represents the number of instances of an entity types, not number of mentions of a given entity instance.

Enums
OCCURRENCE_TYPE_UNSPECIFIED Unspecified occurrence type.
OPTIONAL_ONCE There will be zero or one instance of this entity type.
OPTIONAL_MULTIPLE The entity type will appear zero or multiple times.
REQUIRED_ONCE The entity type will only appear exactly once.
REQUIRED_MULTIPLE The entity type will appear once or more times.

Metadata

Metadata for global schema behavior.

JSON representation
{
  "documentSplitter": boolean,
  "documentAllowMultipleLabels": boolean,
  "prefixedNamingOnProperties": boolean,
  "skipNamingValidation": boolean
}
Fields
documentSplitter

boolean

If true, a document entity type can be applied to subdocument ( splitting). Otherwise, it can only be applied to the entire document (classification).

documentAllowMultipleLabels

boolean

If true, on a given page, there can be multiple document annotations covering it.

prefixedNamingOnProperties

boolean

If set, all the nested entities must be prefixed with the parents.

skipNamingValidation

boolean

If set, we will skip the naming format validation in the schema. So the string values in DocumentSchema.EntityType.name and DocumentSchema.EntityType.Property.name will not be checked.

State

The possible states of the processor version.

Enums
STATE_UNSPECIFIED The processor version is in an unspecified state.
DEPLOYED The processor version is deployed and can be used for processing.
DEPLOYING The processor version is being deployed.
UNDEPLOYED The processor version is not deployed and cannot be used for processing.
UNDEPLOYING The processor version is being undeployed.
CREATING The processor version is being created.
DELETING The processor version is being deleted.
FAILED The processor version failed and is in an indeterminate state.

DeprecationInfo

Information about the upcoming deprecation of this processor version.

JSON representation
{
  "deprecationTime": string,
  "replacementProcessorVersion": string
}
Fields
deprecationTime

string (Timestamp format)

The time at which this processor version will be deprecated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

replacementProcessorVersion

string

If set, the processor version that will be used as a replacement.

Methods

batchProcess

LRO endpoint to batch process many documents.

delete

Deletes the processor version, all artifacts under the processor version will be deleted.

deploy

Deploys the processor version.

evaluateProcessorVersion

Evaluates a ProcessorVersion against annotated documents, producing an Evaluation.

get

Gets a processor version detail.

list

Lists all versions of a processor.

process

Processes a single document.

train

Trains a new processor version.

undeploy

Undeploys the processor version.