關於 Vertex AI 特徵儲存庫

Vertex AI 特徵儲存庫是代管的雲端原生特徵儲存庫服務,也是 Vertex AI 的重要組成部分。您可以在 BigQuery 資料表或檢視區塊中管理特徵資料,簡化機器學習特徵管理和線上服務程序。然後直接從 BigQuery 資料來源提供線上特徵。

Vertex AI 特徵儲存庫會佈建資源,讓您指定特徵資料來源,以設定線上提供機制。接著,這項服務會做為中繼資料層,與 BigQuery 資料來源介接,並直接從 BigQuery 提供最新的特徵值,以低延遲時間進行線上預測。

在 Vertex AI 特徵儲存庫中,包含特徵資料的 BigQuery 資料表或檢視區塊會共同形成離線儲存空間。您可以在離線儲存庫中維護特徵值,包括歷來特徵資料。由於所有特徵資料都保留在 BigQuery 中,Vertex AI 特徵儲存庫不需要在 Vertex AI 中佈建個別的離線儲存空間。此外,如要使用離線商店中的資料訓練 ML 模型,可以運用 BigQuery 的 API 和功能匯出或擷取資料。

使用 Vertex AI 特徵儲存庫設定及啟動線上服務的工作流程,可歸納如下:

  1. 在 BigQuery 中準備資料來源。

  2. 選用:建立特徵群組和特徵,註冊資料來源。

  3. 設定線上儲存庫和特徵檢視表資源,將特徵資料來源與線上供應叢集連結。

  4. 線上提供特徵檢視表的最新特徵值。

Vertex AI 特徵儲存庫資料模型和資源

本節說明與 Vertex AI 特徵儲存庫下列方面相關的資料模型和資源:

在 BigQuery 中準備資料來源

在線上提供期間,Vertex AI 特徵儲存庫會使用 BigQuery 資料來源的特徵資料。設定特徵註冊庫或線上提供資源前,請務必將特徵資料儲存在一或多個 BigQuery 資料表或檢視表中。

在 BigQuery 資料表或檢視畫面中,每個資料欄都代表一項特徵。每個資料列都包含對應至專屬 ID 的特徵值。如要進一步瞭解如何在 BigQuery 中準備特徵資料,請參閱「準備資料來源」。

舉例來說,在圖 1 中,BigQuery 資料表包含下列資料欄:

  • f1f2:特徵欄。

  • entity_id:ID 欄,內含用來識別各項特徵記錄的專屬 ID。

  • feature_timestamp時間戳記欄。

以時間序列格式包含特徵 f1 和 f2 的特徵檢視畫面。
圖 1. BigQuery 資料來源範例。

由於您是在 BigQuery 中準備資料來源,而不是在 Vertex AI 中,因此在這個階段不需要建立任何 Vertex AI 資源。

設定特徵註冊庫

在 BigQuery 中準備好資料來源後,您就可以在特徵登錄中註冊這些資料來源,包括特定特徵資料欄。

你可以選擇是否要註冊功能。即使未將 BigQuery 資料來源新增至特徵註冊庫,您仍可線上提供特徵。不過,在下列情況下,註冊功能會很有幫助:

  • 您的資料包含相同實體 ID 的多個執行個體,且您需要以時間序列格式準備資料,並加入時間戳記欄。註冊特徵時,Vertex AI 特徵儲存庫會查詢時間戳記,並只提供最新的特徵值。

  • 您想從資料來源註冊特定特徵資料欄。

  • 您想匯總多個資料來源的特定資料欄,以定義特徵檢視區塊例項。

  • 您想監控特徵統計資料並偵測特徵偏移。

特徵登錄檔中有兩種 Vertex AI 特徵儲存庫資源:

特徵資料的特徵註冊庫資源

如要在特徵登錄中註冊特徵資料,您需要建立下列 Vertex AI 特徵儲存庫資源:

  • 特徵群組 (FeatureGroup): FeatureGroup 資源會與特定 BigQuery 來源資料表或檢視區塊建立關聯。代表特徵資料欄的邏輯分組,以 Feature 資源表示。特徵群組也包含一或多個實體 ID 欄,用於識別特徵記錄。如果特徵資料採用時間序列格式,特徵群組也必須包含時間戳記欄。如要瞭解如何建立特徵群組,請參閱「建立特徵群組」。

  • 特徵 (Feature): Feature 資源代表特定資料欄,其中包含與父項 FeatureGroup 資源相關聯的特徵資料來源特徵值。如要瞭解如何在特徵群組中建立特徵,請參閱「建立特徵」。

舉例來說,圖 2 顯示的特徵群組包含特徵資料欄 f1f2,這些資料欄來自與特徵群組相關聯的 BigQuery 資料表。BigQuery 資料來源包含四個特徵資料欄,其中兩個資料欄會經過彙整,形成特徵群組。特徵群組也包含實體 ID 欄和特徵時間戳記欄。

包含時間序列格式特徵 f1 和 f2 的特徵群組。
圖 2. 以下是包含兩個 Feature 欄的 FeatureGroup 範例,這些欄來自 BigQuery 資料來源。

特徵監控的特徵登錄資源

您可以透過特徵監控資源,監控使用 FeatureGroupFeature 資源註冊的特徵資料。您可以建立下列與功能監控相關的資源:

  • 特徵監控器 (FeatureMonitor): FeatureMonitor 資源會與 FeatureGroup 資源和該特徵群組中的一或多項特徵建立關聯。指定監控排程。您可以建立多個特徵監控器資源,為特徵群組中的同一組特徵設定不同的監控排程。舉例來說,如果功能 f1f2 每小時更新一次,但功能 f3f4 每天更新一次,您可以建立兩個功能監控資源,有效監控這些功能:

    • 特徵監控器 fm1,每小時會對特徵 f1f2 執行監控工作。

    • 特徵監控器 fm2,每天對特徵 f3f4 執行監控工作。

  • 特徵監控工作 (FeatureMonitorJob): FeatureMonitorJob 資源包含執行特徵監控工作時擷取的特徵統計資料和資訊。此外,這份報告也可能包含異常狀況的相關資訊,例如特徵資料中偵測到的特徵漂移。

如要進一步瞭解如何建立特徵監控資源,請參閱「監控特徵是否有異常狀況」。

線上提供設定

如要提供線上預測所需的特徵,您必須定義並設定至少一個線上供應叢集,然後將其與特徵資料來源或特徵登錄資源建立關聯。在 Vertex AI 特徵儲存庫中,線上服務叢集稱為線上商店執行個體。線上商店例項可包含多個功能檢視例項,每個功能檢視都與功能資料來源相關聯。

線上服務資源

如要設定線上服務,請建立下列 Vertex AI 特徵儲存庫資源:

  • 線上商店 (FeatureOnlineStore): FeatureOnlineStore 資源代表線上服務叢集執行個體,並包含線上服務設定,例如線上服務節點數量。線上商店執行個體不會指定特徵資料來源,但包含 FeatureView 資源,可指定 BigQuery 或特徵註冊庫中的特徵資料來源。如要瞭解如何建立網路商店執行個體,請參閱「建立網路商店執行個體」。

  • 特徵檢視畫面 (FeatureView): FeatureView 資源是線上商店執行個體中的特徵邏輯集合。建立特徵檢視區塊時,您可以透過下列任一方式指定特徵資料來源的位置:

    • 從特徵登錄檔關聯一或多個特徵群組和特徵。特徵群組會指定 BigQuery 資料來源的位置。特徵群組中的特徵會指向該資料來源中的特定特徵資料欄。

    • 或者,也可以關聯 BigQuery 來源資料表或檢視表。

    如要瞭解如何在線上商店中建立特徵檢視區塊執行個體,請參閱「建立特徵檢視區塊」。

舉例來說,圖 3 說明特徵檢視畫面包含特徵資料欄 f2f4,這些資料欄來自與 BigQuery 資料表相關聯的兩個不同特徵群組。

特徵檢視區包含來自兩個特徵群組的特徵 f2 和 f4。
圖 3. 範例:FeatureView 包含來自兩個不同特徵群組的特徵。

線上提供

Vertex AI 特徵儲存庫提供下列類型的線上服務,可進行即時線上預測:

  • Bigtable 線上提供功能適用於提供大量資料 (數 TB 的資料)。這與 Vertex AI 特徵儲存庫 (舊版) 的線上提供功能類似,但提供更完善的快取機制。Bigtable 線上服務不支援嵌入。如需提供大量經常更新的資料,且不需要提供嵌入,請使用 Bigtable 線上服務。

  • 最佳化線上供應 (已淘汰) 可讓您以超低延遲時間線上供應特徵。 最佳化線上服務也支援管理嵌入內容。

    如要使用最佳化線上服務,您需要設定公開端點或專屬的 Private Service Connect 端點。

如要瞭解如何在設定特徵後,在 Vertex AI 特徵儲存庫中設定線上提供機制,請參閱「線上提供類型」。

離線服務,用於批次預測或模型訓練

由於您不需要將特徵資料從 BigQuery 複製或匯入 Vertex AI 中的獨立離線存放區,因此可以使用 BigQuery 的資料管理和匯出功能執行下列操作:

如要進一步瞭解如何使用 BigQuery 進行機器學習,請參閱 BigQuery ML 簡介

Vertex AI 特徵儲存庫術語

特徵工程
  • 特徵工程是指將原始機器學習 (ML) 資料轉換為特徵的程序,這些特徵可用於訓練 ML 模型或進行推論。

功能
  • 在機器學習 (ML) 中,特徵是執行個體或實體的特徵或屬性,用來做為訓練 ML 模型或進行推論的輸入。

特徵值
  • 特徵值對應於執行個體或實體的特徵 (屬性) 實際可測量的值。不重複實體的特徵值集合代表與該實體對應的特徵記錄。

特徵時間戳記
  • 特徵時間戳記表示實體特定特徵記錄中的一組特徵值產生時間。

功能記錄
  • 特徵記錄會匯總所有特徵值,用於描述特定時間點的專屬實體屬性。

與特徵登錄相關的字詞

特徵註冊表
  • 特徵註冊庫是集中式介面,用於記錄要提供線上推論的特徵資料來源。詳情請參閱「功能登錄設定」。

特徵群組
  • 特徵群組是一組特徵註冊庫資源,對應的 BigQuery 來源資料表或檢視表包含特徵資料。特徵檢視畫面可能包含特徵,可視為資料來源中特徵資料欄的邏輯分組。

功能服務
  • 特徵提供是指匯出或擷取特徵值,以用於訓練或推論的程序。在 Vertex AI 中,特徵提供分為兩種:線上提供和離線提供。線上供應功能會擷取特徵資料來源子集的最新特徵值,用於線上推論。離線或批次服務會匯出大量特徵資料 (包括歷來資料),以供離線處理,例如訓練機器學習模型。

實體商店
  • 離線商店是儲存近期和歷史特徵資料的儲存空間,通常用於訓練機器學習模型。離線儲存庫也包含最新的特徵值,可供線上推論使用。

線上商店
  • 在特徵管理中,線上儲存庫是最新特徵值的儲存設施,可供線上推論使用。

特徵檢視畫面
  • 特徵檢視畫面是從 BigQuery 資料來源具體化至線上商店例項的特徵邏輯集合。特徵檢視區會儲存並定期重新整理客戶的特徵資料,這些資料會定期從 BigQuery 來源重新整理。特徵檢視與特徵資料儲存空間直接相關聯,或透過與特徵註冊庫資源的關聯相關聯。

位置限制

所有 Vertex AI 特徵儲存庫資源都必須與 BigQuery 資料來源位於相同地區或多地區位置。舉例來說,如果特徵資料來源位於 us-central1,您就只能在 us-central1US 多地區位置建立 FeatureOnlineStore 執行個體。

特徵中繼資料

Vertex AI 特徵儲存庫與 Dataplex Universal Catalog 整合,可提供特徵管理功能,包括特徵中繼資料。線上商店執行個體、特徵檢視區塊和特徵群組會自動註冊為 Data Catalog 中的資料資產,這項功能會為這些資源的中繼資料建立目錄。然後,您可以使用 Dataplex Universal Catalog 的中繼資料搜尋功能,搜尋、查看及管理這些資源的中繼資料。如要進一步瞭解如何搜尋 Vertex AI 特徵儲存庫資源,請參閱「在 Data Catalog 中搜尋資源中繼資料」。

功能標籤

您可以在建立資源時或之後為資源加上標籤。 如要進一步瞭解如何為現有 Vertex AI 特徵儲存庫資源新增標籤,請參閱「更新標籤」。

資源版本中繼資料

Vertex AI 特徵儲存庫僅支援特徵的 0 版本。

特徵監控

Vertex AI 特徵儲存庫可讓您設定特徵監控功能,以擷取特徵統計資料並偵測特徵資料中的異常狀況。您可以設定監控排程,定期執行監控工作,也可以手動執行監控工作。如要進一步瞭解如何設定特徵監控功能及執行特徵監控工作,請參閱「監控特徵是否有異常狀況」。

嵌入管理和向量擷取

Vertex AI 特徵儲存庫的線上最佳化服務支援嵌入管理。您可以將嵌入內容儲存在 BigQuery 中,做為一般double陣列。使用 Vertex AI 特徵儲存庫的嵌入項目管理功能,您可以執行向量相似度搜尋,擷取指定實體或嵌入項目值的近似最鄰近項目。

如要在 Vertex AI 特徵儲存庫中使用嵌入管理功能,請完成下列步驟:

如要瞭解如何在 Vertex AI 特徵儲存庫中執行向量相似度搜尋,請參閱「對實體執行向量搜尋」。

資料保留

Vertex AI 特徵儲存庫會根據資料來源中與特徵值相關聯的時間戳記,保留特定 ID 的最新特徵值。網路商店沒有資料保留期限。

由於離線儲存庫是由 BigQuery 佈建,因此 BigQuery 的資料保留限制或配額可能適用於特徵資料來源,包括歷來特徵值。進一步瞭解 BigQuery 的配額和限制

配額與限制

Vertex AI 特徵儲存庫會強制執行配額和限制,協助您設定用量限制來管理資源,並預防用量突然暴增的情況,進而保障Google Cloud 使用者社群的權益。如要有效使用 Vertex AI 特徵儲存庫資源,且不超出這些限制,請參閱 Vertex AI 特徵儲存庫配額和限制

定價

如要瞭解 Vertex AI 特徵儲存庫的資源用量定價,請參閱 Vertex AI 特徵儲存庫定價

筆記本教學課程

請參閱下列範例和教學課程,進一步瞭解 Vertex AI 特徵儲存庫。

透過 Vertex AI 特徵儲存庫 Bigtable 線上服務,線上提供特徵並擷取 BigQuery 資料

在本教學課程中,您將瞭解如何在 Vertex AI 特徵儲存庫中使用 Bigtable 線上服務,以便在 BigQuery 中提供線上服務及擷取特徵值。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

透過 Vertex AI 特徵儲存庫提供線上特徵並擷取 BigQuery 資料,提供最佳化線上服務

本教學課程說明如何使用 Vertex AI 特徵儲存庫中的最佳化線上服務,從 BigQuery 提供及擷取特徵值。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

透過 Vertex AI 特徵儲存庫,線上提供特徵並擷取 BigQuery 資料的向量

在本教學課程中,您將瞭解如何使用 Vertex AI 特徵儲存庫,在 BigQuery 中線上提供特徵值和擷取向量。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

Vertex AI 特徵儲存庫特徵檢視畫面服務代理

在本教學課程中,您將瞭解如何啟用特徵檢視畫面服務代理程式,並授予每個特徵檢視畫面存取所用特定來源資料的權限。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

以 Vertex AI 特徵儲存庫為基礎的 LLM 基礎教學課程

在本教學課程中,您將瞭解如何將使用者提供的資料分塊,然後使用具備嵌入生成功能的大型語言模型 (LLM),為每個分塊生成嵌入向量。然後將產生的嵌入向量資料集載入 Vertex AI 特徵儲存庫,即可快速擷取特徵,並有效率地提供線上服務。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

使用 Vertex AI 特徵儲存庫和 BigQuery 建構生成式 AI RAG 應用程式

在本教學課程中,您將瞭解如何使用 BigQuery 向量搜尋和 Vertex AI 特徵儲存庫,為生成式 AI 應用程式建構低延遲的向量搜尋系統。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

在 Vertex AI 特徵儲存庫中設定 IAM 政策

在本教學課程中,您將瞭解如何設定 IAM 政策,控管 Vertex AI 特徵儲存庫中儲存的資源和資料存取權。

在 Colab 中開啟  |  在 Colab Enterprise 中開啟  |  在 GitHub 上查看

後續步驟