ApplicationConfigs

Nachricht, in der der Graph der Anwendung gespeichert wird.

JSON-Darstellung
{
  "nodes": [
    {
      object (Node)
    }
  ]
}
Felder
nodes[]

object (Node)

Eine Liste der Knoten im Anwendungsgraphen.

Knoten

Nachricht, die das Knotenobjekt beschreibt.

JSON-Darstellung
{
  "name": string,
  "displayName": string,
  "nodeConfig": {
    object (ProcessorConfig)
  },
  "processor": string,
  "parents": [
    {
      object (InputEdge)
    }
  ],

  // Union field stream_output_config can be only one of the following:
  "outputAllOutputChannelsToStream": boolean
  // End of list of possible types for union field stream_output_config.
}
Felder
name

string

Pflichtangabe. Ein eindeutiger Name für den Knoten.

displayName

string

Ein nutzerfreundlicher Anzeigename für den Knoten.

nodeConfig

object (ProcessorConfig)

Knotenkonfiguration

processor

string

Der Name des Prozessors bezieht sich auf die ausgewählte Prozessorressource.

parents[]

object (InputEdge)

Übergeordneter Knoten. Der Eingabeknoten darf keinen übergeordneten Knoten haben. Bei V1 Alpha1/Beta kann nur der Media-Warehouse-Knoten mehrere übergeordnete Elemente haben, andere Knotentypen nur eins.

Union-Feld stream_output_config.

Für stream_output_config ist nur einer der folgenden Werte zulässig:

outputAllOutputChannelsToStream

boolean

Standardmäßig ist die Ausgabe des Knotens nur für nachfolgende Knoten verfügbar. Wenn Sie die direkte Ausgabe vom Anwendungsknoten verwenden möchten, muss die Ausgabe zuerst an Vision AI-Streams gesendet werden.

Wenn Sie „outputAllOutputChannelsToStream“ auf „wahr“ setzen, sendet die App-Plattform automatisch alle Ausgaben des aktuellen Knotens an Vision AI-Streamressourcen (ein Stream pro Ausgabekanal). Die Ausgabestream-Ressource wird während der Bereitstellung automatisch von der App-Plattform erstellt und nach der Deaktivierung der Anwendung gelöscht. Diese Konfiguration gilt für alle Anwendungsinstanzen.

Der Ausgabestream kann auf Instanzebene überschrieben werden, indem der Abschnitt outputResources der Instanzressource konfiguriert wird. producerNode sollte der aktuelle Knoten sein, outputResourceBinding der Name des Ausgabekanals (oder leer lassen, wenn es nur einen Ausgabekanal des Prozessors gibt) und outputResource der Zielausgabestream.

ProcessorConfig

Nächste ID: 28

JSON-Darstellung
{

  // Union field processor_config can be only one of the following:
  "videoStreamInputConfig": {
    object (VideoStreamInputConfig)
  },
  "aiEnabledDevicesInputConfig": {
    object (AIEnabledDevicesInputConfig)
  },
  "mediaWarehouseConfig": {
    object (MediaWarehouseConfig)
  },
  "personBlurConfig": {
    object (PersonBlurConfig)
  },
  "occupancyCountConfig": {
    object (OccupancyCountConfig)
  },
  "personVehicleDetectionConfig": {
    object (PersonVehicleDetectionConfig)
  },
  "vertexAutomlVisionConfig": {
    object (VertexAutoMLVisionConfig)
  },
  "vertexAutomlVideoConfig": {
    object (VertexAutoMLVideoConfig)
  },
  "vertexCustomConfig": {
    object (VertexCustomConfig)
  },
  "generalObjectDetectionConfig": {
    object (GeneralObjectDetectionConfig)
  },
  "bigQueryConfig": {
    object (BigQueryConfig)
  },
  "personalProtectiveEquipmentDetectionConfig": {
    object (PersonalProtectiveEquipmentDetectionConfig)
  }
  // End of list of possible types for union field processor_config.
}
Felder

Union-Feld processor_config.

Für processor_config ist nur einer der folgenden Werte zulässig:

videoStreamInputConfig

object (VideoStreamInputConfig)

Konfigurationen des Stream-Eingabeprozessors.

aiEnabledDevicesInputConfig

object (AIEnabledDevicesInputConfig)

Konfiguration von KI-gestützten Eingabegeräten

mediaWarehouseConfig

object (MediaWarehouseConfig)

Konfigurationen des Media-Warehouse-Prozessors.

personBlurConfig

object (PersonBlurConfig)

Konfigurationen des Prozesses zum Unkenntlichmachen von Personen.

occupancyCountConfig

object (OccupancyCountConfig)

Konfigurationen des Belegungszählers

personVehicleDetectionConfig

object (PersonVehicleDetectionConfig)

Konfigurationen des Prozessors für die Personen-/Fahrzeugerkennung.

vertexAutomlVisionConfig

object (VertexAutoMLVisionConfig)

Konfigurationen des Vertex AutoML Vision-Prozessors

vertexAutomlVideoConfig

object (VertexAutoMLVideoConfig)

Konfigurationen des Vertex AutoML-Videoprozessors

vertexCustomConfig

object (VertexCustomConfig)

Konfigurationen des benutzerdefinierten Vertex-Prozessors.

generalObjectDetectionConfig

object (GeneralObjectDetectionConfig)

Konfigurationen des allgemeinen Objekterkennungs-Prozessors.

bigQueryConfig

object (BigQueryConfig)

Konfigurationen des BigQuery-Prozessors.

personalProtectiveEquipmentDetectionConfig

object (PersonalProtectiveEquipmentDetectionConfig)

Konfigurationen von personalProtectiveEquipmentDetectionConfig

VideoStreamInputConfig

Nachricht mit Videostream-Eingabekonfiguration Diese Nachricht sollte nur als Platzhalter für den Prozessor „builtin:stream-input“ verwendet werden. Die tatsächliche Streambindung sollte mit der entsprechenden API angegeben werden.

JSON-Darstellung
{
  "streams": [
    string
  ],
  "streamsWithAnnotation": [
    {
      object (StreamWithAnnotation)
    }
  ]
}
Felder
streams[]
(deprecated)

string

streamsWithAnnotation[]
(deprecated)

object (StreamWithAnnotation)

AIEnabledDevicesInputConfig

Nachricht mit der Konfiguration der Eingabe für KI-fähige Geräte

MediaWarehouseConfig

Nachricht mit Beschreibung von MediaWarehouseConfig.

JSON-Darstellung
{
  "corpus": string,
  "region": string,
  "ttl": string
}
Felder
corpus

string

Ressourcenname des Media Warehouse-Korpus. Format: projects/${projectId}/locations/${locationId}/corpora/${corpus_id}

region
(deprecated)

string

Verworfen.

ttl

string (Duration format)

Die Dauer, für die alle Medien-Assets, zugehörigen Metadaten und Suchdokumente vorhanden sein können.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

PersonBlurConfig

Nachricht zur Beschreibung von FaceBlurConfig.

JSON-Darstellung
{
  "personBlurType": enum (PersonBlurType),
  "facesOnly": boolean
}
Felder
personBlurType

enum (PersonBlurType)

Art des Unkenntlichmachens von Personen.

facesOnly

boolean

Ob nur Gesichter und nicht das gesamte Objekt im Prozessor unkenntlich gemacht werden sollen.

PersonBlurType

Art der Unkenntlichmachung von Personen

Enums
PERSON_BLUR_TYPE_UNSPECIFIED Typ der Personenunkenntlichmachung: UNSPECIFIED.
FULL_OCCULUSION FaceBlur-Typ „Vollständige Verdeckung“.
BLUR_FILTER Unkenntlichmachen von Gesichtern

OccupancyCountConfig

Nachricht mit einer Beschreibung von OccupancyCountConfig.

JSON-Darstellung
{
  "enablePeopleCounting": boolean,
  "enableVehicleCounting": boolean,
  "enableDwellingTimeTracking": boolean
}
Felder
enablePeopleCounting

boolean

Unabhängig davon, ob die Anzahl der Personen gezählt werden soll, haben die Ausgabezahlen „Personen“ als Schlüssel.

enableVehicleCounting

boolean

Unabhängig davon, ob die Anzahl der Fahrzeuge gezählt werden soll, haben die Ausgabezahlen „vehicle“ als Schlüssel.

enableDwellingTimeTracking

boolean

Ob die Verweildauer jedes einzelnen Objekts in der Szene oder einer bestimmten Zone erfasst werden soll.

PersonVehicleDetectionConfig

Nachricht zur Beschreibung von PersonVehicleDetectionConfig.

JSON-Darstellung
{
  "enablePeopleCounting": boolean,
  "enableVehicleCounting": boolean
}
Felder
enablePeopleCounting

boolean

Mindestens eines der Felder „enablePeopleCounting“ und „enableVehicleCounting“ muss auf „wahr“ gesetzt sein. Unabhängig davon, ob die Anzahl der Personen gezählt werden soll, haben die Ausgabezahlen „Personen“ als Schlüssel.

enableVehicleCounting

boolean

Unabhängig davon, ob die Anzahl der Fahrzeuge gezählt werden soll, haben die Ausgabezahlen „vehicle“ als Schlüssel.

VertexAutoMLVisionConfig

Nachricht zu den Konfigurationen von Vertex AutoML Vision-Prozessoren.

JSON-Darstellung
{
  "confidenceThreshold": number,
  "maxPredictions": integer
}
Felder
confidenceThreshold

number

Es werden nur Entitäten mit einer höheren Bewertung als dem Schwellenwert zurückgegeben. Der Wert „0,0“ bedeutet, dass alle erkannten Entitäten zurückgegeben werden.

maxPredictions

integer

Pro Ausgabeframe werden maximal diese Anzahl von Vorhersagen zurückgegeben. Der Wert „0“ bedeutet, dass alle erkannten Entitäten zurückgegeben werden.

VertexAutoMLVideoConfig

Nachricht, die VertexAutoMLVideoConfig beschreibt.

JSON-Darstellung
{
  "confidenceThreshold": number,
  "blockedLabels": [
    string
  ],
  "maxPredictions": integer,
  "boundingBoxSizeLimit": number
}
Felder
confidenceThreshold

number

Es werden nur Entitäten mit einer höheren Bewertung als dem Schwellenwert zurückgegeben. Der Wert „0,0“ bedeutet, dass alle erkannten Entitäten zurückgegeben werden.

blockedLabels[]

string

In diesem Feld angegebene Labels werden nicht zurückgegeben.

maxPredictions

integer

Pro Ausgabeframe werden maximal diese Anzahl von Vorhersagen zurückgegeben. Der Wert „0“ bedeutet, dass alle erkannten Entitäten zurückgegeben werden.

boundingBoxSizeLimit

number

Es werden nur Begrenzungsrahmen zurückgegeben, deren Größe größer als dieses Limit ist. Nur Objekt-Tracking. Der Wert „0,0“ bedeutet, dass alle erkannten Entitäten zurückgegeben werden.

VertexCustomConfig

Nachricht, die VertexCustomConfig beschreibt.

JSON-Darstellung
{
  "maxPredictionFps": integer,
  "dedicatedResources": {
    object (DedicatedResources)
  },
  "postProcessingCloudFunction": string,
  "attachApplicationMetadata": boolean
}
Felder
maxPredictionFps

integer

Die maximale Anzahl von Vorhersageframes pro Sekunde. Mit diesem Attribut wird festgelegt, wie schnell der Operator Vorhersageanfragen an den Vertex AI-Endpunkt sendet. Der Standardwert ist 0, was bedeutet, dass die fps für Vorhersagen nicht begrenzt sind. Der Operator sendet Vorhersageanfragen mit der Eingabe-fps.

dedicatedResources

object (DedicatedResources)

Eine Beschreibung von Ressourcen, die dem bereitgestellten Modell zugewiesen sind und eine stärkere manuelle Konfiguration erfordern.

postProcessingCloudFunction

string

Wenn das Attribut nicht leer ist, wird das Vorhersageergebnis zur Nachbearbeitung an die angegebene Cloud-Funktion gesendet. * Die Cloud-Funktion empfängt AppPlatformCloudFunctionRequest, wobei das Feld „annotations“ das JSON-Format von proto PredictResponse ist. * Die Cloud-Funktion sollte AppPlatformCloudFunctionResponse mit PredictResponse zurückgeben, die im Feld „annotations“ gespeichert ist. * Wenn Sie die Ausgabe der Vorhersage nicht benötigen, löschen Sie einfach das Nutzlastfeld in der zurückgegebenen AppPlatformCloudFunctionResponse.

attachApplicationMetadata

boolean

Wenn „true“ festgelegt ist, enthält die vom benutzerdefinierten Modell empfangene Vorhersageanfrage auch Metadaten mit dem folgenden Schema: 'appPlatformMetadata': { 'ingestionTime': DOUBLE; (UNIX-Zeitstempel) 'application': STRING; 'instanceId': STRING; 'node': STRING; 'processor': STRING; }

DedicatedResources

Eine Beschreibung von Ressourcen, die einem bereitgestellten Modell zugewiesen sind und eine stärkere manuelle Konfiguration erfordern.

JSON-Darstellung
{
  "machineSpec": {
    object (MachineSpec)
  },
  "minReplicaCount": integer,
  "maxReplicaCount": integer,
  "autoscalingMetricSpecs": [
    {
      object (AutoscalingMetricSpec)
    }
  ]
}
Felder
machineSpec

object (MachineSpec)

Pflichtangabe. Nicht veränderbar. Die Spezifikation eines einzelnen Computers, der für die Vorhersage verwendet wird.

minReplicaCount

integer

Pflichtangabe. Nicht veränderbar. Die Mindestanzahl von Maschinenreplikaten, auf denen dieses bereitgestellte Modell immer bereitgestellt wird. Dieser Wert muss größer oder gleich 1 sein.

Wenn der Traffic für das bereitgestellte Modell zunimmt, kann es dynamisch auf mehr Repliken bereitgestellt werden. Wenn der Traffic abnimmt, werden einige dieser zusätzlichen Repliken möglicherweise freigegeben.

maxReplicaCount

integer

Nicht veränderbar. Die maximale Anzahl von Replikaten, auf denen dieses bereitgestellte Modell bereitgestellt werden kann, wenn der Traffic darauf zunimmt. Wenn der angeforderte Wert zu hoch ist, schlägt die Bereitstellung fehl. Wenn die Bereitstellung jedoch erfolgreich ist, kann das Modell auf diese Anzahl von Replikas skaliert werden (sofern keine Dienstausfälle auftreten). Wenn der Traffic für das bereitgestellte Modell über das hinausgeht, was seine Replikate maximal verarbeiten können, wird ein Teil des Traffics verworfen. Wenn dieser Wert nicht angegeben wird, wird minReplicaCount als Standardwert verwendet.

Der Wert dieses Felds wirkt sich auf die Inanspruchnahme der Vertex-CPU- und ‑GPU-Kontingente aus. Sie werden speziell für maxReplicaCount * Anzahl der Kerne im ausgewählten Maschinentyp und maxReplicaCount * Anzahl der GPUs pro Replikat im ausgewählten Maschinentyp in Rechnung gestellt.

autoscalingMetricSpecs[]

object (AutoscalingMetricSpec)

Nicht veränderbar. Die Messwertspezifikationen, die den Zielwert eines Messwerts für die Ressourcennutzung (CPU-Auslastung, Arbeitszyklus des Accelerators usw.) überschreiben (Standardwert: 60, wenn nicht festgelegt). Pro Messwert ist maximal ein Eintrag zulässig.

Wenn machineSpec.accelerator_count über 0 liegt, basiert das Autoscaling sowohl auf den Messwerten für die CPU-Auslastung als auch auf den Messwerten für den Taktzyklus des Accelerators. Es wird nach oben skaliert, wenn einer der Messwerte den Zielwert überschreitet, und nach unten, wenn beide Messwerte unter dem Zielwert liegen. Der Standardzielwert ist für beide Messwerte 60.

Wenn machineSpec.accelerator_count = 0 ist, basiert das Autoscaling nur auf dem Messwert „CPU-Auslastung“ mit dem Standardzielwert 60, sofern dieser nicht explizit festgelegt wurde.

Wenn Sie beispielsweise bei der Online-Prognose die CPU-Zielauslastung auf 80 % überschreiben möchten, sollten Sie autoscalingMetricSpecs.metric_name auf aiplatform.googleapis.com/prediction/online/cpu/utilization und autoscalingMetricSpecs.target auf 80 festlegen.

MachineSpec

Spezifikation einer einzelnen Maschine.

JSON-Darstellung
{
  "machineType": string,
  "acceleratorType": enum (AcceleratorType),
  "acceleratorCount": integer
}
Felder
machineType

string

Nicht veränderbar. Der Typ des Geräts.

Liste der für die Vorhersage unterstützten Maschinentypen

Hier finden Sie eine Liste der Maschinentypen, die für benutzerdefiniertes Training unterstützt werden.

Für [DeployedModel][] ist dieses Feld optional und der Standardwert ist n1-standard-2. Für [BatchPredictionJob][] oder als Teil von [WorkerPoolSpec][] ist dieses Feld erforderlich.

acceleratorType

enum (AcceleratorType)

Nicht veränderbar. Die Art der Beschleuniger, die gemäß acceleratorCount an die Maschine angeschlossen werden können.

acceleratorCount

integer

Die Anzahl der Beschleuniger, die an die Maschine angehängt werden sollen.

AcceleratorType

Stellt einen Hardwarebeschleunigertyp dar.

Enums
ACCELERATOR_TYPE_UNSPECIFIED Nicht angegebener Beschleunigertyp, d. h. kein Beschleuniger.
NVIDIA_TESLA_K80 Nvidia Tesla K80 GPU
NVIDIA_TESLA_P100 Nvidia Tesla P100 GPU
NVIDIA_TESLA_V100 Nvidia Tesla V100 GPU
NVIDIA_TESLA_P4 Nvidia Tesla P4 GPU
NVIDIA_TESLA_T4 Nvidia Tesla T4 GPU
NVIDIA_TESLA_A100 Nvidia Tesla A100 GPU
TPU_V2 TPU v2
TPU_V3 TPU v3.

AutoscalingMetricSpec

Die Messwertspezifikation, die die Zielressourcenauslastung (CPU-Auslastung, Arbeitszyklus des Accelerators usw.) für die Berechnung der gewünschten Replikatzahl definiert.

JSON-Darstellung
{
  "metricName": string,
  "target": integer
}
Felder
metricName

string

Pflichtangabe. Der Name des Ressourcenmesswerts. Unterstützte Messwerte:

  • Für die Onlinevorhersage:
  • aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle
  • aiplatform.googleapis.com/prediction/online/cpu/utilization
target

integer

Die Zielressourcenauslastung in Prozent (1 % bis 100%) für den angegebenen Messwert. Sobald die tatsächliche Nutzung um einen bestimmten Prozentsatz vom Ziel abweicht, ändern sich die Maschinenrepliken. Wenn Sie keinen Wert angeben, wird standardmäßig „60“ (60%) verwendet.

GeneralObjectDetectionConfig

Nachricht mit Konfigurationen für den allgemeinen Objekterkennungs-Prozessor.

BigQueryConfig

Nachricht mit Konfigurationen für den BigQuery-Prozessor.

JSON-Darstellung
{
  "table": string,
  "cloudFunctionMapping": {
    string: string,
    ...
  },
  "createDefaultTableIfNotExists": boolean
}
Felder
table

string

BigQuery-Tabellenressource, in die die Vision AI Platform Anmerkungen aufnehmen soll.

cloudFunctionMapping

map (key: string, value: string)

Datenschema: Standardmäßig versucht die Vision AI-Anwendung, Anmerkungen mit dem folgenden Schema in die Ziel-BigQuery-Tabelle zu schreiben:

ingestion_time: TIMESTAMP, der Zeitpunkt der Datenaufnahme der ursprünglichen Daten.

application: STRING, Name der Anwendung, die die Anmerkung generiert.

instance: STRING, die ID der Instanz, die die Anmerkung generiert.

node: STRING, Name des Knotens im Anwendungsgraphen, der die Anmerkung generiert.

annotation: STRING oder JSON. Das tatsächliche Annotations-Protobuf wird in einen JSON-String mit dem Byte-Feld als base64-codierter String umgewandelt. Sie kann sowohl in eine Spalte vom Typ „String“ als auch in eine vom Typ „JSON“ geschrieben werden.

Wenn Anmerkungsdaten an eine vorhandene BigQuery-Tabelle weitergeleitet werden sollen, muss der Kunde die Kompatibilität des Schemas prüfen. Die Zuordnung ordnet den Namen des Anwendungsknotens dem entsprechenden Cloud-Funktionsendpunkt zu, um die Anmerkungen direkt in die google.cloud.bigquery.storage.v1.AppendRowsRequest zu transformieren. Es sollten nur „avro_rows“ oder „proto_rows“ festgelegt werden. Wenn sie konfiguriert sind, werden Anmerkungen, die vom entsprechenden Anwendungsknoten erstellt wurden, zuerst an die Cloud-Funktion gesendet, bevor sie an BigQuery weitergeleitet werden.

Wenn das Standardtabellenschema nicht passt, kann der Kunde die Anmerkungsausgabe aus der Vision AI-Anwendung mit einer Cloud-Funktion in ein beliebiges BigQuery-Tabellenschema umwandeln. * Die Cloud-Funktion erhält die AppPlatformCloudFunctionRequest, bei der das Feld „annotations“ das JSON-Format der Vision AI-Anmerkung ist. * Die Cloud-Funktion sollte AppPlatformCloudFunctionResponse mit AppendRowsRequest zurückgeben, das im Feld „Anmerkungen“ gespeichert ist. * Wenn Sie die Anmerkung entfernen möchten, löschen Sie einfach das Feld „annotations“ in der zurückgegebenen AppPlatformCloudFunctionResponse.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createDefaultTableIfNotExists

boolean

Wenn diese Option aktiviert ist, erstellt die App-Plattform das BigQuery-Dataset und die BigQuery-Tabelle mit dem Standardschema, wenn die angegebene Tabelle nicht vorhanden ist. Das funktioniert nicht, wenn ein benutzerdefiniertes Schema für Cloud Functions angegeben ist, da das System das gewünschte Schema nicht kennt. Die JSON-Spalte wird in der von der App-Plattform erstellten Standardtabelle verwendet.

PersonalProtectiveEquipmentDetectionConfig

Nachricht zur Beschreibung von PersonalProtectiveEquipmentDetectionConfig.

JSON-Darstellung
{
  "enableFaceCoverageDetection": boolean,
  "enableHeadCoverageDetection": boolean,
  "enableHandsCoverageDetection": boolean
}
Felder
enableFaceCoverageDetection

boolean

Gibt an, ob die Erkennung von bedeckten Gesichtern aktiviert werden soll.

enableHeadCoverageDetection

boolean

Gibt an, ob die Erkennung der Kopfbedeckung aktiviert werden soll.

enableHandsCoverageDetection

boolean

Gibt an, ob die Erkennung der Abdeckung durch die Hände aktiviert werden soll.

InputEdge

Nachricht, die eine Kante beschreibt, die auf einen Knoten zeigt.

JSON-Darstellung
{
  "parentNode": string,
  "parentOutputChannel": string,
  "connectedInputChannel": string
}
Felder
parentNode

string

Der Name des übergeordneten Knotens.

parentOutputChannel

string

Das verbundene Ausgabeartefakt des übergeordneten Knotens. Sie kann weggelassen werden, wenn der Zielprozessor nur ein Ausgabeartefakt hat.

connectedInputChannel

string

Der verbundene Eingabekanal des Prozessors des aktuellen Knotens. Er kann weggelassen werden, wenn der Zielprozessor nur einen Eingabekanal hat.