搭配 BigQuery 使用 Colab Enterprise 資料科學代理

Colab Enterprise 和 BigQuery 的資料科學代理 (DSA) 可在 Colab Enterprise 筆記本中,自動執行探索性資料分析、機器學習工作,以及提供洞察資訊。

事前準備

  1. 登入 Google Cloud 帳戶。如果您未曾使用過 Google Cloud,歡迎 建立帳戶,親自體驗實際使用我們產品的成效。新客戶還能獲得價值 $300 美元的免費抵免額,用於執行、測試及部署工作負載。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. 啟用 BigQuery、Gemini for Google Cloud、Dataform 和 Compute Engine API (如有尚未啟用的 API)。

    啟用 API 所需的角色

    如要啟用 API,您必須具備 serviceusage.services.enable 權限。如果您建立了專案,可能已透過擁有者角色 (roles/owner) 取得這項權限。否則,您可以透過服務使用情形管理員角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。

    啟用 API

    如果是新專案,系統會自動啟用 BigQuery API。

如果您是第一次在 BigQuery 使用 Colab Enterprise,請參閱「建立筆記本」頁面的設定步驟。

限制

  • 資料科學代理僅適用於 Colab Enterprise 環境。
  • 資料科學代理支援下列資料來源:
    • CSV 檔案
    • BigQuery 資料表
  • 資料科學代理生成的程式碼只會在筆記本的執行階段中執行。
  • 使用 @mention 函式搜尋 BigQuery 資料表時,僅限於目前專案。使用資料表選取器,跨專案搜尋。
  • @mention 函式只會搜尋 BigQuery 資料表。如要搜尋可上傳的資料檔案,請使用 + 符號。
  • 資料科學代理中的 PySpark 只會生成 Managed Service for Apache Spark 4.0 程式碼。DSA 可協助您升級至 Managed Service for Apache Spark 4.0,但需要舊版的使用者不應使用資料科學代理。
  • 不支援客戶自行管理的加密金鑰 (CMEK)。

資料科學代理的使用時機

資料科學代理可協助您處理各種工作,包括探索性資料分析、生成機器學習預測和預測結果。DSA 的用途包括:

  • 大規模資料處理:使用 BigQuery ML、BigQuery DataFrames 或 Managed Service for Apache Spark,對大型資料集執行分散式資料處理。這樣一來,您就能有效率地清理、轉換及分析資料,即使資料量太大,無法放入單一機器的記憶體中,也能輕鬆處理。
  • 生成計畫:使用 Python、SQL、Managed Service for Apache Spark 和 BigQuery DataFrames 等常見工具,生成及修改計畫,完成特定工作。
  • 資料探索:探索資料集以瞭解其結構、找出潛在問題 (例如遺漏值和離群值),並使用 Python 或 SQL 檢查重要變數的分佈情形。
  • 資料清理:清理資料。例如移除離群資料點。
  • 資料整理:使用 one-hot 編碼或標籤編碼等技術,或使用 BigQuery ML 特徵轉換工具,將類別特徵轉換為數值表示法。建立新特徵以進行分析。
  • 資料分析:分析不同變數之間的關係。 計算數值特徵之間的相關性,並探索類別特徵的分佈情形。觀察資料中的模式和趨勢。
  • 資料視覺化:建立直方圖、箱形圖、散布圖和長條圖等圖表,呈現個別變數的分布情形和彼此之間的關係。您也可以在 Python 中為儲存在 BigQuery 的資料表建立圖表。
  • 特徵工程:從清理過的資料集建立新特徵。
  • 資料分割:將工程資料集分割為訓練、驗證和測試資料集。
  • 模型訓練:使用 pandas DataFrame (X_train、y_train)、BigQuery DataFrame、PySpark DataFrame 中的訓練資料,或使用 BigQuery ML CREATE MODEL 陳述式搭配 BigQuery 資料表,訓練模型。
  • 模型最佳化:使用驗證集最佳化模型。探索 DecisionTreeRegressor 和 RandomForestRegressor 等替代模型,並比較其效能。
  • 模型評估:使用 pandas DataFrame、BigQuery DataFrames 或 PySpark DataFrame,評估測試資料集上的模型效能。您也可以使用 BigQuery ML 模型評估函式,評估模型品質並比較使用 BigQuery ML 訓練的模型。
  • 模型推論:使用 BigQuery ML 推論函式,透過 BigQuery ML 訓練的模型、匯入的模型和遠端模型執行推論。您也可以使用 BigFrames model.predict() 方法或 PySpark 轉換器進行預測。

在 BigQuery 使用資料科學代理

下列步驟說明如何在 BigQuery 使用資料科學代理。

  1. 建立或開啟 Colab Enterprise 筆記本。

  2. 選用:透過下列任一方式參照資料:

    • 上傳 CSV 檔案,或在提示中使用 + 符號搜尋可用檔案。
    • 在資料表選取器中,從目前專案或您有權存取的其他專案,選擇一或多個 BigQuery 資料表。
    • 在提示中參照 BigQuery 資料表名稱,格式如下:project_id:dataset.table。
    • 輸入 @ 符號,使用 @mention 函式搜尋 BigQuery 資料表名稱。
  3. 輸入提示詞,說明要執行的資料分析或要建構的原型。資料科學代理的預設行為是使用 sklearn 等開放原始碼程式庫生成 Python 程式碼,完成複雜的機器學習任務。如要使用特定工具,請在提示中加入下列關鍵字:

    • 如要使用 BigQuery ML,請加入「SQL」關鍵字。
    • 如要使用「BigQuery DataFrames」,請指定「BigFrames」或「BigQuery DataFrames」關鍵字。
    • 如要使用 PySpark,請加入「Apache Spark」或「PySpark」關鍵字。

    如需協助,請參閱提示範例。

  4. 選擇模型。預設模型為 Gemini 3.0 Flash。

  5. 傳送提示並查看結果。

分析 CSV 檔案

如要在 BigQuery 中使用資料科學代理分析 CSV,請按照下列步驟操作。

  1. 前往「BigQuery」頁面

    前往「BigQuery」

  2. 在左側窗格中展開專案,然後按一下「Notebooks」。

  3. 依序點選「新增筆記本」 > 「空白筆記本」。

    或者,在分頁列中,按一下 arrow_drop_down「Add」圖示旁的 arrow_drop_down 下拉式箭頭,然後依序點選「Notebook」>「Empty notebook」。

  4. 按一下「spark」「Toggle Gemini in Colab」(在 Colab 中切換 Gemini) 按鈕,開啟對話方塊。

  5. 上傳 CSV 檔案。

    1. 在對話方塊中,依序點選「新增至 Gemini」圖示 「上傳」。

    2. 視需要授權 Google 帳戶。

    3. 找到 CSV 檔案的位置,然後按一下「開啟」。

  6. 或者,在提示中輸入 + 符號,搜尋可上傳的檔案。

  7. 在對話視窗中輸入提示詞。例如:Identify trends and anomalies in this file.

  8. 選擇模型。預設模型為 Gemini 3.0 Flash。

  9. 按一下「傳送」。結果會顯示在對話視窗中。

  10. 您可以要求代理變更計畫,也可以點選「Accept & run」(接受並執行) 執行計畫。執行計畫時,生成的程式碼和文字會顯示在筆記本中。按一下「取消」即可停止。

分析 BigQuery 資料表

如要分析 BigQuery 資料表,請在資料表選取器中選擇一或多個資料表、在提示中提供資料表參照,或使用 @ 符號搜尋資料表。

  1. 前往「BigQuery」頁面

    前往「BigQuery」

  2. 在左側窗格中展開專案,然後按一下「Notebooks」。

  3. 依序點選「新增筆記本」 > 「空白筆記本」。

    或者,在分頁列中,按一下 arrow_drop_down「Add」圖示旁的 arrow_drop_down 下拉式箭頭,然後依序點選「Notebook」>「Empty notebook」。

  4. 按一下「spark」「Toggle Gemini in Colab」(在 Colab 中切換 Gemini) 按鈕,開啟對話方塊。

  5. 在對話視窗中輸入提示詞。

  6. 請透過下列其中一種方式參照資料:

    1. 使用表格選取器選擇一或多個表格:

      1. 按一下 新增至 Gemini > BigQuery 資料表。

      2. 在「BigQuery tables」(BigQuery 資料表) 視窗中,選取專案中的一或多個資料表。您可以使用搜尋列,跨專案搜尋資料表,並篩選資料表。

    2. 直接在提示中加入 BigQuery 資料表名稱。例如:「幫我執行探索性資料分析,並取得這個資料表中資料的深入分析:project_id:dataset.table。」

      更改下列內容:

      • project_id:專案 ID
      • dataset:資料集名稱,其中包含您要分析的資料表
      • table:要分析的資料表名稱
    3. 輸入 @,在目前專案中搜尋 BigQuery 資料表。

  7. 選擇模型。預設模型為 Gemini 3.0 Flash。

  8. 按一下「傳送」。

    結果會顯示在對話視窗中。

  9. 您可以要求代理變更計畫,也可以點選「Accept & run」(接受並執行) 執行計畫。執行計畫時,生成的程式碼和文字會顯示在筆記本中。如要執行計畫中的其他步驟,您可能需要再次按一下「Accept & run」(接受並執行)。按一下「取消」即可停止。

提示範例

無論提示有多複雜,資料科學代理都會生成計畫,您可以根據需求調整。

以下範例說明可與 DSA 搭配使用的提示類型。

Python 提示

除非您在提示中使用特定關鍵字 (例如「BigQuery ML」或「SQL」),否則系統預設會生成 Python 程式碼。

  • 「使用 K 近鄰 (KNN) 機器學習演算法,調查並填補遺漏值。」
  • 「依經驗等級繪製薪資圖表。使用 experience_level 欄將薪資分組,並為每個群組建立盒鬚圖,顯示 salary_in_usd 欄的值。」
  • 「使用 XGBoost 演算法建立模型,判斷特定水果的 class 變數。將資料分割為訓練和測試資料集,以便產生模型並判斷模型準確度。建立混淆矩陣,顯示每個類別的預測結果,包括所有正確和不正確的預測結果。
  • 「預測 filename.csv 的 target_variable 在未來六個月的表現。」

SQL 和 BigQuery ML 提示

  • 「使用 BigQuery SQL,在 bigquery-public-data.ml_datasets.census_adult_income 上建立及評估分類模型。」
  • 「使用 SQL,根據 bigquery-public-data.google_analytics_sample.ga_sessions_* 預測我網站下個月的流量,然後繪製過往記錄和預測值。」
  • 「使用 KMeans 模型和 BigQuery ML SQL 函式,將相似的客戶分組,建立指定目標的行銷廣告活動。使用三個特徵進行分群。接著,建立一系列 2D 散布圖,以圖表呈現結果。使用表格 bigquery-public-data.ml_datasets.census_adult_income。」
  • 「使用 bigquery-public-data.imdb.reviews 中的評論內容,在 BigQuery ML 生成文字嵌入。」

如需支援的模型和機器學習工作清單,請參閱 BigQuery ML 說明文件。

DataFrame 提示

  • 「針對 project_id:dataset.table 中的資料,建立 pandas DataFrame。分析資料中的空值,然後使用圖表類型繪製每個資料欄的分布情形。測量值用小提琴圖呈現,類別則用長條圖。」
  • 「讀取 filename.csv 並建構 DataFrame。對 DataFrame 執行分析,判斷如何處理值。例如,是否有需要替換或移除的遺漏值,或需要處理的重複資料列。請使用資料檔案,判斷每個城市位置投資金額 (美元) 的分布情形。Graph the top 20 results using a bar graph that shows the results in descending order as Location versus Avg Amount Invested (USD)."
  • 「使用 BigQuery DataFrames,在 project_id:dataset.table 建立及評估分類模型。」
  • 「使用 BigQuery DataFrames 建立 project_id:dataset.table 的時間序列預測模型,並以圖表呈現模型評估結果。」
  • 「使用 BigQuery DataFrames,以圖表呈現 BigQuery 資料表 project_id:dataset.table 過去一年的銷售數據。」
  • 「使用 BigQuery DataFrames,找出最能預測資料表 bigquery-public_data.ml_datasets.penguins 中企鵝物種的特徵。」

PySpark 提示

  • 「使用 Managed Service for Apache Spark,在 project_id:dataset.table 建立及評估分類模型。」
  • 「將類似的客戶分組,建立指定行銷廣告活動,但首先要使用 PCA 模型進行降維。請使用 PySpark 對資料表 project_id:dataset.table 執行這項操作。」

關閉 Gemini in BigQuery

如要為 Google Cloud 專案停用 Gemini in BigQuery,管理員必須停用 Gemini for Google Cloud API。詳情請參閱停用服務的相關說明。

如要為特定使用者停用 Gemini in BigQuery,管理員必須撤銷該名使用者的「Gemini for Google Cloud 使用者」 (roles/cloudaicompanion.user) 角色。請參閱「撤銷單一 IAM 角色」一節。

定價

資料科學代理的定價取決於輸入和輸出資料。詳情請參閱「BigQuery 定價模式」中的代理程式定價。

支援的地區

如要查看 Colab Enterprise 資料科學代理支援的地區,請參閱「位置」。