建構應用程式

本頁面說明如何建立應用程式並組合各種元件,例如輸入串流、分析模型和儲存資料的倉儲,以便用於 Vertex AI Vision 的應用程式平台。

如要建構應用程式,您必須考量資料來源、要執行的分析,以及結果的儲存方式。視用途而定,端對端應用程式可以有不同形式。因此,應用程式的建構方式取決於您的目標。

開始前,請從負責任的 AI 角度評估您的用途和目標,並考量模型和應用程式出錯時,可能會對使用者造成哪些影響。如要進一步瞭解評估用途公平性的初步步驟,請參閱這篇文章。此外,請確保您使用 Vertex AI Vision 時遵守 Google Cloud的《服務條款》或離線版本,以及納入的網址條款,例如 Google Cloud的《使用限制政策》。

建立應用程式時,請注意 AI 視覺技術可能會加強或產生不公平的偏見,並影響基本人權。開發應用程式時,應根據貴公司的價值觀進行道德反思,並針對特定用途 (包括高風險用途) 進行法律盡職調查。與所有技術一樣,您必須考量在導入 AI/ML 技術的區域,使用這類技術時適用的所有法律和法規。客戶有責任進行適當的盡職調查,以在特定區域實作視為高風險的用途。

建立新應用程式

如要在應用程式中新增串流或模型等元件,必須先建立應用程式。所有應用程式都必須包含下列項目才能部署:

  • 串流輸入節點 (資料來源)。
  • 至少一個其他元件節點,例如模型或倉庫。

建立新的自訂應用程式

控制台

在 Google Cloud 控制台中建立應用程式。

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 按一下「建立」按鈕。

  3. 輸入應用程式名稱並選擇區域。支援的地區

  4. 點選「建立」

使用範本建立應用程式

控制台

在 Google Cloud 控制台中建立應用程式。

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 按一下「建立」按鈕。

  3. 輸入應用程式名稱並選擇區域。支援的地區

  4. 點選「建立」

  5. 在應用程式建構工具頁面中,按一下「應用程式範本」節點。

  6. 在側邊設定面板中,按一下「選取模型」按鈕。

  7. 從下拉式選單中選取模式。

新增串流輸入

應用程式必須包含視訊串流節點。如果未新增 Streams 節點,您就無法部署應用程式。

如果應用程式尚未部署,系統會自動將串流輸入更新套用至應用程式。如果應用程式已部署,您必須先取消部署並更新應用程式,變更才會生效。詳情請參閱「更新應用程式」一節。

控制台

在 Google Cloud 控制台中,將串流新增至應用程式。

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 按一下應用程式的「查看應用程式」

  3. 從元件側邊清單中,選擇「連接器」清單中的「視訊串流」。串流節點會新增至應用程式圖表,並開啟側邊的「Video streams」(影片串流) 選單。

  4. 選取「新增影片串流」

  5. 如果選擇「從現有的串流中選取」,請選取現有串流,然後選取「新增串流」

    如果選擇「Register new streams」(註冊新串流),請為新串流命名,然後選取「Add streams」(新增串流)

REST

如要為應用程式新增串流,請使用 projects.locations.applications.addStreamInput 方法傳送 POST 要求。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT:您的 Google Cloud 專案 ID 或專案編號
  • LOCATION_ID:您使用 Vertex AI Vision 的區域。例如:us-central1europe-west4。請參閱可用區域
  • APPLICATION_ID:目標應用程式的 ID。
  • STREAM_ID:目標串流的 ID。

HTTP 方法和網址:

POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput

JSON 要求主體:

{
  "applicationStreamInputs": [
     {
       "streamWithAnnotation": {
         "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID"
       }
     },
     {
       "streamWithAnnotation": {
         "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID"
       }
     }
   ]
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

新增含有節點註解的串流輸入內容

建立應用程式輸入串流時,您可以使用 Vertex AI Vision API 將註解新增至串流。您也可以在Google Cloud 控制台中為節點新增註解。

控制台

以下範例會將可用的註解 (STREAM_ANNOTATION_TYPE_ACTIVE_ZONESTREAM_ANNOTATION_TYPE_CROSSING_LINE) 新增至入住人數模型

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 在應用程式建構工具頁面中,選取要新增註解的串流輸入模型。

  4. 在側邊模型設定面板中,展開「進階設定」部分。展開該部分後,按一下「建立活動區/範圍線」按鈕。

  5. 在串流庫檢視畫面中,選取輸入串流來繪製活動區或範圍線。

  6. 在編輯器檢視畫面中,選擇「新增多點線條」或「新增簡單多邊形」,即可新增註解。使用側邊面板重新命名區域或路線名稱、刪除現有區域/路線,或切換路線方向。

REST 和指令列

下列程式碼會新增串流註解。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT:您的 Google Cloud 專案 ID 或專案編號
  • LOCATION_ID:您使用 Vertex AI Vision 的區域。例如:us-central1europe-west4。請參閱可用區域
  • APPLICATION_ID:目標應用程式的 ID。
  • STREAM_ID:目標串流的 ID。
  • NODE_NAME:應用程式圖中的目標節點名稱。例如:builtin-occupancy-count
  • ANNOTATION_ID:目標註解的 ID。
  • ANNOTATION_DISPLAYNAME:目標註解的使用者指定顯示名稱。
  • ANNOTATION_TYPE:其中一個可用的列舉值。這個類型必須與 annotation_payload 物件相符,也就是 activeZonecrossingLine。可用的值包括:
    • STREAM_ANNOTATION_TYPE_UNSPECIFIED
    • STREAM_ANNOTATION_TYPE_ACTIVE_ZONE
    • STREAM_ANNOTATION_TYPE_CROSSING_LINE
  • normalizedVertices:每個頂點皆由 x、y 座標值指定。 座標是相對於原始圖片的正規化浮點值 [0,1];0.0 是 X_MIN 或 Y_MIN,1.0 是 X_MAX 或 Y_MAX。

HTTP 方法和網址:

POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput

JSON 要求主體:

{
  "applicationStreamInputs": [
    {
      "streamWithAnnotation": {
        "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID",
        "nodeAnnotations": [
          {
            "node": "NODE_NAME",
            "annotations": [
              {
                "id": "ANNOTATION_ID",
                "displayName": "ANNOTATION_DISPLAYNAME",
                "sourceStream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID",
                "type": ANNOTATION_TYPE,
                "activeZone": {
                  "normalizedVertices": {
                    "x": 0.07434944,
                    "y": 0.18061674
                  },
                  "normalizedVertices": {
                    "x": 0.64684016,
                    "y": 0.16079295
                  },
                  "normalizedVertices": {
                    "x": 0.6047088,
                    "y": 0.92070484
                  },
                  "normalizedVertices": {
                    "x": 0.1251549,
                    "y": 0.76651984
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

移除串流輸入內容

REST

如要從應用程式中移除串流,請使用 projects.locations.applications.removeStreamInput 方法傳送 POST 要求。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT:您的 Google Cloud 專案 ID 或專案編號
  • LOCATION_ID:您使用 Vertex AI Vision 的區域。例如:us-central1europe-west4。請參閱可用區域
  • APPLICATION_ID:目標應用程式的 ID。
  • STREAM_ID:目標串流的 ID。

HTTP 方法和網址:

POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput

JSON 要求主體:

{
  "targetStreamInputs": [
     {
       "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID"
     },
     {
       "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID"
     }
   ]
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

新增預先訓練的 Vertex AI Vision 模型

建立應用程式後,您可以新增模型,並將模型連結至串流、其他模型或媒體倉庫。

模型分為兩種:預先訓練模型使用者訓練模型。同樣地,使用者訓練模型也可以分為兩種:AutoML自訂訓練

  • 預先訓練模型會執行特定目標,並以一般化資料訓練而成,可直接使用。
  • 使用者訓練的 AutoML 或自訂訓練模型需要您識別並提供範例資料,然後訓練更適合您獨特用途的模型。您可以使用 Vertex AI 訓練這些模型。這項產品提供兩種訓練選項:AutoML 訓練模型和自訂訓練模型。詳情請參閱「選擇訓練方法」。

請按照下列操作說明,將預先訓練的 Vertex AI Vision 模型新增至應用程式圖表。

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 在應用程式建構工具頁面中,從「AI 模型」清單選取要新增的模型。每個模型都有個別的設定。

  4. 如要將這個模型連結至輸入來源節點,請選取來源節點,然後選取「新增輸出」

  5. 從「Available nodes」(可用節點) 清單中選取新建立的 AI 模型節點。

新增使用者訓練的 Vertex AI 模型

建立應用程式後,您可以新增模型,並將模型連結至串流、其他模型或媒體倉庫。

模型分為兩種:預先訓練模型使用者訓練模型。同樣地,使用者訓練模型也可以分為兩種:AutoML自訂訓練

  • 預先訓練模型會執行特定目標,並以一般化資料訓練而成,可直接使用。
  • 使用者訓練的 AutoML 或自訂訓練模型需要您識別並提供範例資料,然後訓練更適合您獨特用途的模型。您可以使用 Vertex AI 訓練這些模型。這項產品提供兩種訓練選項:AutoML 訓練模型和自訂訓練模型。詳情請參閱「選擇訓練方法」。

新增 Vertex AI AutoML 物件偵測串流模型

按照下列操作說明,將您訓練的 Vertex AI AutoML 物件偵測串流模型新增至應用程式圖表。

訓練 Vertex AI AutoML 模型前,請務必準備物件偵測資料建立資料集

訓練模型,以便在 Vertex AI Vision 中使用

在 Vertex AI 中建立包含代表性資料集合的資料集後,即可訓練模型,以用於 Vertex AI Vision。

控制台

  1. 在 Google Cloud 控制台的 Vertex AI 資訊主頁中,前往「Datasets」(資料集) 頁面。

    前往「資料集」頁面

  2. 按一下要用來訓練模型的資料集名稱,開啟詳細資料頁面。

  3. 如果資料類型使用註解集,請選取要用於這個模型的註解集。

  4. 按一下「訓練新模型」

  5. 在「訓練新模型」頁面中,為 AutoML 圖片物件偵測模型完成下列步驟:

    1. 在「模型訓練方法」部分,選擇「AutoML」

    2. 在「選擇模型的使用位置」部分,選取 「Vertex AI Vision」

    3. 按一下「繼續」

    4. 填寫「模型詳細資料」、「訓練選項」和「運算與價格」部分的值。詳情請參閱「訓練 AutoML 模型 (Google Cloud 控制台)」。

    5. 按一下「開始訓練」

      模型訓練可能需要數小時,視資料大小和複雜度而定,以及您是否指定訓練預算。您可以關閉這個分頁,稍後再返回查看。模型訓練完成後,您會收到電子郵件通知。

將訓練好的模型新增至應用程式

模型訓練完成後,即可新增至 Vertex AI Vision 應用程式。

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 在應用程式建構工具頁面中,從側邊元件清單選取「新增 Vertex AI 模型」。選取這個選項會開啟側邊選單。

  4. 在「新增 Vertex AI 模型」選單中,保留選取的「從 Vertex AI 匯入已訓練模型」選項,然後從現有 Vertex AI AutoML 模型清單中選擇模型。

  5. 選擇要匯入的模型後,選取「新增模型」

    點選「Add model」(新增模型) 按鈕後,圖表建構工具頁面側邊會顯示待處理模型。幾秒後,模型即可使用。

新增 Vertex AI 自訂模型

您也可以將 Vertex AI 自訂訓練模型匯入 Vertex AI Vision,用於資料分析。這些自訂訓練模型必須具備下列屬性:

  • 模型必須為無狀態,因為模型輸入內容是來自不同應用程式例項 (串流) 的圖片,且順序可能不正確。如需有狀態的串流處理作業,您可能需要在自己的容器中保留狀態。
  • 模型輸入內容大小上限為 1.5 MB。因此,Vertex AI Vision 必須將原始 RGB 圖片壓縮為有損格式,例如 JPG。

請按照下列操作說明,將您訓練的現有 Vertex AI 自訂訓練影片模型新增至應用程式圖表。

如要瞭解如何使用自訂容器建立 Vertex AI 自訂訓練模型,請參閱「使用自訂容器進行預測」。

指定執行個體 YAML 檔案

新增 Vertex AI 自訂訓練模型時,您必須指定儲存在 Cloud Storage 中的執行個體 YAML 檔案 (instances.yaml)。這個檔案會指定模型容器的預期輸入內容。

Vertex AI 會以以下格式傳送預測要求:

{
  "instances": [
    <value>|<simple/nested list>|<object>,
    ...
  ]
}

這裡的 instances.yaml 定義了酬載的結構。詳情請參閱「透過自訂訓練模型取得線上預測」。

Vertex AI Vision 僅支援具有一個具名預測輸入的自訂訓練模型。這個輸入類型必須是編碼的 JPEG 字串。預測輸入內容的結構定義必須以執行個體結構定義 YAML 檔案指定。這個結構定義 YAML 檔案必須採用 OpenAPI 結構定義物件格式。

舉例來說,下列結構定義會接收要求,並將圖片編碼到名為 image_bytes 的欄位中:

properties:
  image_bytes:
    type: string

自訂模型會收到下列格式的預測輸入內容:

{
  "instances": [
    {
      "image_bytes" : {
        "b64": "BASE64_ENCODED_IMAGE_BYTES"
      }
    }
  ]
}

將模型匯入 Vertex AI Vision 前,請先確認模型可正確處理這項輸入內容。

指定預測 YAML 檔案

新增 Vertex AI 自訂訓練模型時,您可以指定儲存在 Cloud Storage 中的預測 YAML 檔案 (predictions.yaml)。這個檔案會指定模型容器的輸出內容。

這個檔案為選用項目,但建議使用,可讓 Vertex AI Vision 瞭解模型的輸出結構。舉例來說,下列 classification_1.0.0.yaml 檔案說明圖片分類模型的模型輸出資訊:

title: Classification
type: object
description: >
  The predicted AnnotationSpecs.
properties:
  ids:
    type: array
    description: >
      The resource IDs of the AnnotationSpecs that had been identified.
    items:
      type: integer
      format: int64
      enum: [0]  # As values of this enum all AnnotationSpec IDs the Model
      # was trained on will be populated.
  displayNames:
    type: array
    description: >
      The display names of the AnnotationSpecs that had been identified,
      order matches the IDs.
    items:
      type: string
      enum: [""]  # As values of this enum all AnnotationSpec display_names
      # the Model was trained on will be populated.
  confidences:
    type: array
    description: >
      The Model's confidences in correctness of the predicted IDs, higher
      value means higher confidence. Order matches the Ids.
    items:
      type: number
      format: float
      minimum: 0.0
      maximum: 1.0

新增自訂訓練模型

請使用下列範例,將 Vertex AI 自訂訓練模型新增至應用程式。

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 在應用程式建構工具頁面中,從側邊元件清單選取「新增 Vertex AI 模型」。選取這個選項會開啟側邊選單。

  4. 在「新增 Vertex AI 模型」選單中,保留選取的「從 Vertex AI 匯入已訓練模型」選項,然後從現有 Vertex AI AutoML 模型清單中選擇模型。

  5. 為模型命名。

  6. 在 Cloud Storage 中指定執行個體 YAML 檔案,定義用於預測和說明要求的單一執行個體格式。

  7. 選用:在 Cloud Storage 中指定預測結構定義 YAML 檔案,定義單一預測或說明的格式。

  8. 提供模型名稱、執行個體和預測資訊後,選取「新增模型」

  9. 點選「Add model」(新增模型) 按鈕後,圖表建構工具頁面側邊會顯示待處理模型。幾秒後,模型即可使用。

(選用步驟) 附加應用程式中繼資料

除了圖片位元組,您也可以選擇設定 attach_application_metadata,要求 Vertex AI Vision 應用程式平台一併傳送應用程式的中繼資料至自訂容器。

中繼資料的結構定義如下:

'appPlatformMetadata': {
     'application': STRING;
     'instanceId': STRING;
     'node': STRING;
     'processor': STRING;
   }

(選用步驟) 新增動態設定 Pub/Sub 主題

如要動態控制 Vertex Custom Operator 將視訊影格傳送至 Vertex 自訂容器的影格速率,您可以建立 Pub/Sub 主題。將其新增至節點設定的 Dynamic Configuration 區段。

動態設定

如果已設定 Pub/Sub 主題,初始影格速率為 0。在影片處理期間,您可以即時將 Pub/Sub 訊息傳送至 Pub/Sub 主題,以變更影格速率,格式如下:

{
  "stream_id": "input-stream-id",
  "fps": 5,
}

stream_id 欄位應與應用程式輸入串流的 ID 相符。

服務帳戶和權限

自訂容器的預設服務憑證已設定為 Vertex AI Vision 應用程式平台的 Google 擁有服務帳戶。如要從容器存取其他 Google Cloud服務,請授予下列項目適當的權限service-<var>PROJECT_NUMBER</var>@gcp-sa-visionai.iam.gserviceaccount.com

(選用步驟) 使用 Cloud Run 函式和 Pub/Sub 建立模型事件通知

在 Vertex AI Vision 中,模型會接收來自攝影機等裝置的媒體資料、對資料執行 AI 預測,並持續產生註解。您通常會將處理過的資料傳送至資料目的地 (「資料接收器」),例如媒體倉儲或 BigQuery,以進行進一步的分析作業。不過,在某些情況下,您可能必須以不同方式處理部分註解,或是註解需求有時效性。與 Cloud Run 函式和 Pub/Sub 整合,有助於滿足這些需求。

支援的模型

下列模型提供 Cloud Run 函式事件產生和 Pub/Sub 事件通知整合功能:

設定 Cloud Run 函式來處理模型輸出內容

如要觸發以事件為準的通知,請先設定 Cloud Run 函式,處理模型輸出內容並產生事件。

Cloud Run 函式會連線至模型,並監聽模型的輸出內容,做為後續處理動作。您應傳回 Cloud Run 函式 AppPlatformCloudFunctionResponse。事件 (appplatformeventbody) 會傳送至您在下一個步驟中設定的 Pub/Sub 主題。

如要查看 Cloud Run 函式範例,請參閱「使用 Cloud Functions 和 Pub/Sub 啟用模型事件通知」。

請按照下列操作說明,將模型輸出串流傳送至 Cloud Run 函式:

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 按一下支援的機型,開啟機型詳細資料側邊面板。

  4. 在「事件通知」部分的「後續處理」清單中,選取現有的 Cloud Run 函式,或建立新的函式。

    在 Cloud 控制台中選取後續處理 Cloud Functions 映像檔

透過 Pub/Sub 啟用模型事件通知

設定 Cloud Run 函式來處理模型輸出內容並產生事件後,您可以使用 Pub/Sub 設定事件通知。如要從主題讀取訊息,您也需要選擇並建立 Pub/Sub 訂閱項目

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 按一下支援的機型,開啟機型詳細資料側邊面板。

  4. 在「活動通知」部分,選取「設定活動通知」

  5. 在開啟的「為事件通知設定 Pub/Sub」選項視窗中,選擇現有的 Pub/Sub 主題,或建立新主題。

  6. 在「頻率」欄位中,設定相同類型事件的通知傳送頻率值 (以秒為單位)。

    在 Cloud 控制台中設定事件通知圖片

  7. 按一下「設定」

將模型輸出內容連結至下游節點

建立模型節點後,您可以將其輸出內容連線至其他節點。

控制台

  1. 開啟 Vertex AI Vision 資訊主頁的「應用程式」分頁。

    前往「應用程式」分頁

  2. 從清單中選取應用程式名稱旁的「查看應用程式」

  3. 在應用程式圖表建構工具中,按一下輸出資料的模型節點 (例如「Occupancy Count」模型節點)。

  4. 在側邊設定面板中,按一下「新增輸出」按鈕。

  5. 新增輸出內容,然後選擇要新增的輸出節點,或選取現有的「可用節點」來傳送輸出內容。

將輸出內容連結至資料目的地

建立資料擷取串流並將處理節點新增至應用程式後,您必須選擇要將處理後的資料傳送到何處。這個資料目的地是應用程式圖表的終點,可接受串流資料,但不會產生任何串流資料。選擇目的地時,請考量您如何使用應用程式輸出資料。

連接器節點圖片
在 Google Cloud 控制台中,資料目的地會顯示在應用程式圖表頁面的「連線器」部分。

您可以將應用程式輸出資料連結至下列資料目的地:

  1. Vision Warehouse:儲存原始或分析過的影片資料,供您查看及查詢。

    如要進一步瞭解如何將應用程式輸出資料傳送至 Vision Warehouse,請參閱「連結資料並儲存至資料倉儲」。

  2. BigQuery:將資料儲存在 BigQuery 中,以便使用離線分析功能。

    如要進一步瞭解如何將應用程式輸出資料傳送至 BigQuery,請參閱「連結及儲存資料至 BigQuery」。

  3. 直播資料:如要更精細地掌控即時數據分析,以便採取行動,可以接收應用程式的即時輸出內容。

    如要進一步瞭解如何直接串流應用程式輸出資料,請參閱「啟用直播輸出」。

更新應用程式

未部署的應用程式

修改應用程式 (例如新增或移除元件節點);Vertex AI Vision 會自動儲存變更。

後續步驟

  • 請參閱「部署應用程式」,瞭解如何部署應用程式,以便擷取及分析資料。
  • 如要瞭解如何從應用程式的輸入串流開始擷取資料,請參閱「建立及管理串流」一文中的操作說明。
  • 如要瞭解如何列出應用程式,以及查看已部署應用程式的執行個體,請參閱「管理應用程式」。
  • 請參閱「讀取串流資料」,瞭解如何從擷取串流讀取應用程式輸入資料,或讀取分析模型輸出資料。