Gemini (舊稱Duet AI) 在 Google Cloud 中是一個持續運行的協作工具,為 Google Cloud 用戶提供生成式人工智慧支援,包括開發人員、數據科學家和運營人員。為了提供一個集成的支援體驗,Gemini 已嵌入到許多 Google Cloud 產品中。
您向 Gemini 提出的問題,包括您希望分析或完成的任何輸入訊息或程式碼,稱為指令(Prompt)。您從 Gemini 獲得的答案或程式碼完成稱為回應。Gemini 不會使用您的指令或其回應作為資料來訓練其模型。
Gemini(舊稱 Duet AI) 能做什麼?
- 輔助開發:您可以使用自然語言提示 Gemini,以幫助您在多種流行的編程語言中編寫代碼
- 輔助數據分析:在 BigQuery 和 Cloud Spanner 中,Gemini 提供上下文 SQL 語句完成和 SQL 填充,包括語法建議的函數和關鍵詞。
- 輔助運營:當您在 Google Cloud 控制台中使用 Gemini 時,您可以用自然語言提問關於 Google Cloud 的問題。
Gemini 與 BigQuery 整合
產生 SQL 查詢
您可以向 Gemini 提供一個自然語言陳述(或指令),以根據您的數據架構生成 SQL 查詢。即使您從無程式碼開始,對數據架構的了解有限,或者只對 Google SQL 語法有基本了解,Gemini 也可以建議一個或多個 SQL 語句。
操作步驟:
- 在 Google Cloud 控制台中,前往 BigQuery 頁面。
- 在導覽選單中,點選 BigQuery Studio。
- 在 SQL 查詢編輯器中,按一下撰寫新查詢。
- 在查詢編輯器中,輸入以下自然語言指令之一,然後按 Enter。
範例:
為了獲得數據架構,Gemini 需要數據集和表格的名稱,這些名稱必須以反引號( ` )開頭和結尾。
`bigquery-public-data.austin_bikeshare.bikeshare_trips` 生成查詢
5. 若要接受。Gemini Code Assist 完成建議,請按 Tab。
6. 若要執行查詢,請按一下「執行」。
透過在 BigQuery 查詢編輯器中使用 (#) 字符來開始 SQL 生成。
例如:產生一個查詢,分析 美國名字 數據中名字出現的頻率,並列出出現次數最少的前 5 名
Gemini 會產生建議一個或多個回答您的提示。若要查看建議,將指標停在建議的 SQL 上。可以點選建議的 SQL 或接受語句中建議的單字 Control+Right Arrow
改善 BigQuery 中 Gemini 提供的建議
- 您可以在表格架構中包含列描述。BigQuery 中的 Gemini 將使用列描述訊息,與自然語言陳述附帶的提示前言一起使用。
- 如果列名或其語義關係不清晰或複雜,您可以在提示中提供上下文,以引導 Gemini 朝向您想要的答案。這稱為提示工程。
例如,為了鼓勵生成的查詢參考列名,請描述列名以及它與您想要的答案的相關性。要鼓勵參考像生命周期價值或毛利等複雜術語的答案,請描述這個概念以及它與您的數據的相關性,以改善SQL生成的結果。 - 提示可以在查詢編輯器中跨越多行,但每行必須以 (#) 字符開頭
完成 SQL 查詢
SQL 完成嘗試根據查詢編輯器中的內容提供上下文適當的建議。當您鍵入時,Gemini 可以建議與目前查詢上下文相關的邏輯後續步驟,或協助您迭代查詢。
若要嘗試使用 Duet AI 進行 SQL 完成,請依照下列步驟操作 (範例):
- 在 Google Cloud 控制台中,前往 BigQuery 頁面。
- 在查詢編輯器中,使用以下內容:
錯誤訊息顯示 subscriber_type 既未分組也未聚合。需要一些幫助來確保查詢正確無誤是很常見的。
3. 要觸發SQL完成,請按 Enter 或 Space。Gemini 會建議對查詢進行改進,可能會導致出現類似以下文本
4. 要接受建議,請按 Tab,或將指針懸停在建議的文本上,並點擊切換到替代建議。要取消建議,請按 ESC 或繼續輸入。
解釋一個 SQL 查詢
在 BigQuery 中提示 Gemini 以自然語言解釋一個 SQL 查詢。這個解釋可以幫助您理解一個查詢,因為查詢的長度或複雜性可能使其語法、底層架構和業務上下文難以評估。
操作步驟:
- 在 Google Cloud 控制台中,前往 BigQuery 頁面。
- 在查詢編輯器中,開啟或貼上要解釋的查詢。
- 反白您希望 Gemini 解釋的查詢。
SQL 解釋在右側 Gemini 窗格中顯示:
這個 Google SQL 查詢的目的是找出每個訂閱類型的平均行程長度,並按一天中的小時進行分組。查詢首先從 `bigquery-public-data.austin_bikeshare.bikeshare_trips` 表格中選擇了訂閱類型、一天中的小時和每次行程的持續時間。然後將結果按訂閱類型和一天中的小時進行分組,最後按訂閱類型和一天中的小時進行排序。
Gemini和 BigQuery 數據
當您在 BigQuery 中輸入 Gemini 指令時,指令中引用的資料集的資訊架構將會傳送到 Gemini 。發送的資訊可以包括列名稱、資料類型和列描述。表、視圖和模型中的資料保留在 BigQuery 中,不會傳送到 Gemini 。
參考資料
[1] https://cloud.google.com/bigquery/docs/write-sql-duet-ai
[2] https://cloud.google.com/duet-ai/docs/overview