在 Google Cloud Shell 編輯器中,開發人員專用 Gemini Code Assist Standard 和 Enterprise 版導覽

在 Google Cloud Shell 編輯器中,開發人員專用 Gemini Code Assist Standard 和 Enterprise 版導覽

程式碼研究室簡介

subject上次更新時間:2月 25, 2025
account_circle作者:Romin Irani

1. 簡介

在本研究室中,您將使用 Google Cloud 中的 AI 技術輔助協作工具 Gemini Code Assist。您將瞭解如何使用 Gemini Chat 和內嵌程式碼輔助功能,生成程式碼、瞭解程式碼,以及執行其他 AI 輔助程式碼工作。

  • 您將使用 Cloud Shell IDE 下載網頁應用程式的現有程式碼範本。
  • 您將使用 Cloud Shell IDE 中的 Gemini Chat 來詢問 Google Cloud 的一般問題。
  • 您將在 Cloud Shell IDE 中使用 Gemini Code Assist 內嵌程式碼輔助功能,產生、摘要和完成程式碼。

課程內容

  • 如何使用 Gemini Code Assist 執行多項開發人員工作,例如生成程式碼、補全程式碼和摘要程式碼。
  • 如何使用 Cloud Assist 瞭解 Google Cloud。

事前準備...

  • Chrome 網路瀏覽器
  • Gmail 帳戶
  • 已啟用計費功能的 Cloud 專案
  • 已為雲端專案啟用 Gemini Code Assist

本實驗室適合所有等級的開發人員,包括初學者。雖然本範例應用程式使用 Python 語言,但您不必熟悉 Python 程式設計,也能瞭解相關內容。我們將著重於讓您熟悉 Gemini Code Assist 的開發人員功能。

2. 設定

本節將說明您需要採取的所有步驟,才能開始進行本實驗室。

在 Google Cloud 專案中啟用 Cloud Assist

我們現在會在 Google Cloud 專案中啟用 Cloud Assist。請按照下列步驟操作:

  1. 請前往 https://console.cloud.google.com,確認您已選取本實驗室要使用的 Google Cloud 專案。按一下右上方的「Open Gemini」圖示。

28f084ec1e159938.png

  1. Cloud Assist 即時通訊視窗會在控制台右側開啟。按一下「啟用」按鈕,如下圖所示。如果畫面上沒有「啟用」按鈕,而是顯示即時通訊介面,表示您可能已為專案啟用 Cloud Assist,可以直接進行下一個步驟。

3d9ae68104b49a5b.png

  1. 啟用後,您可以透過提示測試 Cloud Assist。系統會顯示幾個查詢範例,但您也可以試試 What is Cloud Run? 這類查詢

27835a44c7b7f7c.png

Cloud Assist 會回覆問題的答案。你可以按一下右上角的 f68286b2b2ea5c0a.png 圖示,關閉 Cloud Assist 即時通訊視窗。

在 Cloud Shell IDE 中啟用 Gemini Code Assist

我們會在程式碼研究室的後續部分使用 Cloud Shell IDE,這是一個全代管的 Code OSS 開發環境。我們需要在 Cloud Shell IDE 中啟用及設定 Code Assist,步驟如下:

  1. 前往 ide.cloud.google.com。IDE 可能需要一段時間才會顯示,請耐心等候。
  2. 按一下底部狀態列中的「Cloud Code - Sign in」按鈕,如下圖所示。按照指示授權外掛程式。如果狀態列顯示「Cloud Code - no project」,請選取該項目,然後從您要使用的專案清單中選取特定 Google Cloud 專案。

609d1645201cc7a3.png

  1. 按一下右下角的 Gemini 按鈕,如圖所示,最後一次選取正確的 Google Cloud 專案。如果系統提示您啟用 Gemini for Google Cloud API,請按照提示操作,然後繼續操作。
  2. 選取 Google Cloud 專案後,請確認您可以在狀態列中看到 Cloud Code 狀態訊息,並且已在狀態列右側啟用 Code Assist,如下所示:

365a09ae0c4b1ac6.png

您可以開始使用 Gemini Code Assist!

選用:如果右下方狀態列中沒有顯示 Gemini,請在 Cloud Code 中啟用 Gemini。在執行這項操作前,請先確認 IDE 已啟用 Gemini,方法是前往 Cloud Code Extension → Settings,然後輸入「Gemini」文字,如以下所示。確認已勾選核取方塊。請重新載入 IDE。這樣就能在 Cloud Code 中啟用 Gemini,IDE 的狀態列也會顯示 Gemini 圖示。

3741f07b73a939c8.png

3. 建立範例應用程式

我們將建立範例應用程式 (Python Flask 應用程式),用於探索 Gemini Code Assist 的功能。

請按照下列步驟操作:

  1. 按一下下方狀態列中的 Google Cloud 專案名稱

d3652354efac576d.png

  1. 系統會顯示選項清單。按一下下方清單中的「New Application」

91ea9836f38b7f74.png

  1. 選取「Cloud Run」應用程式。
  2. 選取「Python (Flask): Cloud Run」應用程式範本。
  3. 將新應用程式儲存在偏好的位置。
  4. 系統會顯示通知,確認已建立應用程式,並開啟新視窗載入應用程式,如下所示。系統會開啟 README.md 檔案。您可以先關閉該檢視畫面。

aaa3725b17ce27cf.png

4. 與 Gemini 對話

我們將先瞭解如何與 Gemini 對話。Gemini 可做為 Cloud Shell IDE 中的即時通訊助理,也是 VS Code 中 Cloud Code 擴充功能的一部分。只要按一下左側導覽列中的 Gemini 按鈕,即可開啟這項功能。在左側導覽列工具列中找出 Gemini 圖示 a489f98a34898727.png,然後按一下該圖示。

這麼做會在 Cloud Shell IDE 中顯示「Chat: Gemini」窗格,您可以與 Gemini 對話,取得 Google Cloud 相關協助。

41bbcb85e89f4ff4.png

我們將使用 Gemini Chat 窗格輸入提示,並查看 Gemini 的回覆。輸入下列提示:

What is Cloud Run? 

Gemini 應在回覆中提供 Cloud Run 的詳細資訊。提示是指透過問題或陳述來說明所需協助。在提示中加入 Google Cloud 分析的現有程式碼背景資訊,可得到更實用或完整的回覆。如要進一步瞭解如何撰寫提示或生成有效回覆,請參閱「在 Google Cloud 撰寫優質 Gemini 提示」。

請試試下列範例提示或自行提出問題,瞭解 Google Cloud 相關資訊:

  • What is the difference between Cloud Run and Cloud Functions?
  • What services are available on Google Cloud to run containerized workloads?
  • What are the best practices to optimize costs while working with Google Cloud Storage?

請注意頂端的垃圾桶圖示,這是用來重設 Code Assist 即時通訊記錄的背景資訊。請注意,這項即時通訊互動會根據您在 IDE 中處理的檔案內容提供相關資訊。

5. 程式碼說明

為了減少切換情境,進而提升工作效率,Gemini Code Assist 會直接在程式碼編輯器中提供 AI 技術輔助的智慧動作。在程式碼編輯器中選取程式碼時,您可以查看與當前內容相關的動作清單,並從中選取所需動作。

您可以使用 Gemini Code Assist 瞭解應用程式程式碼的部分內容。返回我們在先前步驟中建立的應用程式,您可以使用 Gemini Code Assist 說明 IDE 中可用的檔案和程式碼。

  1. 如果找不到檔案,請在 IDE 活動列中點按「Explorer」圖示 Code OSS Explorer 選單
  2. 在 Explorer 窗格中選取「Dockerfile」
  3. 您可以選取任何部分的檔案內容,然後依序點按燈泡圖示 ( Code OSS Duet AI 燈泡) 和「Gemini: Explain this」。舉例來說,選取開頭為「ENTRYPOINT」的程式碼行,然後依序點選燈泡圖示 ( Code OSS Duet AI 燈泡) 和「Gemini: Explain this」。Gemini 會針對您需要進一步瞭解的 Dockerfile 特定部分,產生自然語言說明。Gemini 會針對 ENTRYPOINT 指令提供詳細回覆。您會瞭解到,若按照該說明操作,Docker 就會在容器啟動時執行 app.py 檔案。
  4. 如要查看 app.py 檔案的內容,請依序點按活動列中的「Explorer」圖示 Code OSS Explorer 選單app.py
  5. hello() 函式定義中,您可以選取要進一步瞭解的程式碼行。接著依序點選燈泡圖示 Code OSS Duet AI 燈泡 和「Gemini:說明這項內容」。在本例中,我們選取了以下兩行程式碼,然後觸發 Gemini:解釋此程式碼動作。

14d9c56af016b65d.png

  1. Gemini 會在回覆中詳細說明這兩個 Cloud Run 環境變數 (K_SERVICE, K_REVISION),以及如何在應用程式程式碼中使用這些變數。請注意,Gemini 具備 Google Cloud 和 Cloud Run 等服務的相關知識,因此不僅會解釋 Python 程式碼,也會說明這些變數在 Cloud Run 中的含意。

請嘗試以下其他方式,取得程式碼說明:

  1. app.py 成為 IDE 中目前開啟的檔案。前往 VS Code 左側導覽列的 Gemini 對話方塊,然後輸入提示「Explain this file」。這會考量整個檔案,並向您說明。
  2. 你也可以選取檔案的任何部分,然後使用左側的 Gemini 對話方塊,輸入提示「Explain this」。這項功能只會說明檔案的所選部分。這就像您按一下燈泡圖示 ( Code OSS Duet AI 燈泡),然後點選「Gemini:說明這項內容」
  3. 您也可以選取部分文字,然後按一下 IDE 右上方的「Gemini:智慧動作」(如下圖所示),取得可對所選文字執行的動作清單。其中一個選項就是「解釋這個內容」動作:

fb4d25c7d9240f14.png

6. 使用提示產生程式碼

本節說明如何使用 Gemini Code Assist 從註解產生程式碼。

我們來試試這些功能。請按照下列步驟操作:

  1. 建立名為 utils.py 的新檔案。
  2. 在新程式碼檔案的新行中輸入 # Function to print a list of blobs in a Google Cloud Storage bucket,然後按下 Enter (適用於 Windows 和 Linux) 或 Return (適用於 macOS)。Gemini 可能會在您輸入內容時嘗試產生程式碼,但不會接受。我們會在下一個步驟中觸發程式碼產生作業。
  3. 如要觸發程式碼產生作業,請按下 Control+Enter (適用於 Windows 和 Linux) 或 Control+Return (適用於 macOS)。Gemini Code Assist 會在 Python 檔案中的提示文字旁,以鬼影文字的形式產生程式碼。它會提供一或多個程式碼建議,並透過工具列讓您瀏覽各個程式碼建議 (如果有多個建議)。您甚至可以透過工具列接受任何程式碼建議。如果您看不到工具列或工具列消失,請將滑鼠游標懸停在產生的程式碼上,工具列就會再次顯示。
  4. 選用步驟:如要接受產生的程式碼,請按下 Tab。如果有多個建議,您可以多次按下 Tab,從一個建議的程式碼片段切換到下一個。

系統會插入您在 utils.py 檔案中接受的程式碼。以下是螢幕截圖範例。您收到的程式碼可能與下方所示不同。如果系統產生其他方法,您可以在接受程式碼後刪除這些方法。

d6d7915885c5e74b.png

您可能會在程式碼中看到波浪線,也可能不會。如果是的話,這就是程式碼引用的實際應用。將滑鼠游標懸停在任何一行上,即可查看程式碼歸屬資訊和其他相關授權資訊。範例如下所示:

c7473cadcf15d887.png

接著,您可以點選「快速修正」,選擇忽略引文警告。系統會顯示建議的快速修正選項,如下所示:

10f4672830954c90.png

如果您同意接受程式碼授權,可以選擇「忽略引用警告」

(選用) 以下是幾項建議,可嘗試產生程式碼:

  1. 你也可以使用 Gemini 聊天功能提出相同提示,並在聊天視窗中取得回覆。接著,Chat 介面會顯示選項,可讓您複製程式碼或插入目前檔案。
  2. 您可以嘗試使用自己的提示,取得所需的程式碼範例。以下提供一些建議 (假設您位於其中一個 Python 檔案中):或從下列提示中選擇:
  • 編寫 Python 程式碼,將訊息發布至 Google Cloud Pub/Sub
  • 編寫 Python 程式碼來初始化 BigQuery 用戶端
  • 編寫 Python 程式碼,將應用程式連線至 Cloud SQL

7. 在編寫程式碼時取得內嵌程式碼建議

在您編寫程式碼時,Gemini Code Assist 會提供內嵌程式碼建議,您可以選擇接受或忽略。如要試用這項功能,我們將修改先前建立的 utils.py 檔案:

  1. 在 Cloud Shell IDE 中,以目前檔案的形式開啟 utils.py 檔案。
  2. 我們可以提供正確的 import 陳述式 (如果產生的程式碼中沒有這類陳述式)。
  3. 開始輸入 import 這個字,您應該會看到 Gemini Code Assist 以虛線文字形式提供程式碼建議。如要接受 Gemini Code Assist 提供的程式碼建議,請按下 Tab。如要忽略建議,請按下 Esc 或繼續編寫程式碼。在下方範例畫面中,系統會建議您匯入 storage 類別,因為程式碼中正在使用這個類別。按下 Tab 即可接受程式碼建議。建議使用 import os 陳述式,但由於這不是必要項目,因此可以移除。

cb3dfff74172959d.png

  1. 前往 utils.py 檔案的結尾,如果未提供函式,請新增一行來叫用函式。在本例中,該函式為 print_blobs。只要開始輸入函式名稱,程式碼補全功能就會協助您完成陳述式。
  2. 您需要提供 bucket_name,並使用下列公開值區名稱:gemini-codeassist-bucket。函式的叫用範例如下所示。請注意,函式名稱等項目可能會有些許差異。

print_blobs(bucket_name="gemini-codeassist-bucket")

(選用) 執行程式碼範例

由於我們編寫了用於列出 Google Cloud Storage 值區中 Blob 的程式碼,因此需要安裝 google-cloud-storage Python 程式庫。

前往 requirements.txt 檔案,新增一行 google-cloud-storage 依附元件,如下所示。以下是 requirements.txt 檔案範例。

Flask==2.3.3
requests==2.31.0
debugpy # Required for debugging.
google-cloud-storage

儲存 requirements.txt 檔案。

如要查看程式碼的運作情形,我們必須透過左上方的選單圖示,從 Cloud Shell IDE 啟動新的終端機工作階段。按一下選單圖示,然後依序點選「Terminal」→「New Terminal」,如下所示:

289173c68f1addb5.png

在終端機工作階段中,透過下列指令安裝 Python 依附元件:

pip3 install -r requirements.txt

最後,您可以透過下列指令執行 utils.py 檔案:

python utils.py

這應該會顯示公開 Google Cloud Storage 值區中的 Blob。輸出內容中應會列出 2 個 blob (file1.txtfile2.txt)。

疑難排解

如果在顯示上述公開值區中的物件時收到「存取」錯誤,您可以選擇建立自己的 Google Cloud Storage 值區,並使用該值區,而非 gemini-codeassist-bucket。下一節將說明如何執行這項操作。

(選用) 建立自己的 Cloud Storage 值區

我們將利用 Gemini 提供的指令建立值區、將值區設為可公開存取,並將範例物件上傳至該值區。

請先回答以下提示問題:「在 Google Cloud Storage 中建立公開儲存桶的 gcloud 指令為何?」

這應該會提供您用來建立值區的 gcloud 指令。具體指令如下所示:

gcloud storage buckets create gs://<BUCKET_NAME>

<BUCKET_NAME> 選取專屬名稱,然後在終端機中執行指令。

建立值區後,我們希望將值區設為可公開存取。請使用以下提示向 Gemini 詢問執行這項操作的指令:「如何讓 Google Cloud Storage 值區可供公開存取?」

這應該會提供 gcloud 指令,讓您將檔案設為公開。回應內容應如下所示:

gcloud storage buckets add-iam-policy-binding gs://<BUCKET_NAME> --member=allUsers --role=roles/storage.objectViewer

<BUCKET_NAME> 替換成先前使用的值區名稱,然後執行指令。

最後,我們想將一些範例檔案上傳至值區。在終端機中執行下列指令 (請記得將 <BUCKET_NAME> 變數替換為您的值區名稱)。

touch f1.txt
touch f2.txt

gcloud storage cp f1.txt gs://<BUCKET_NAME>
gcloud storage cp f2.txt gs://<BUCKET_NAME>

您現在可以使用 <BUCKET_NAME> 執行 utils.py 檔案,而非 gemini-codeassist-bucket

清除所用資源

如果您已建立自己的 Google Cloud Storage 值區,強烈建議您刪除該值區,以免產生任何費用和潛在的安全性風險。

您可以使用下列指令刪除值區:

gcloud storage buckets delete gs://<BUCKET_NAME>

8. 恭喜!

恭喜!您已成功在範例專案中使用 Gemini Code Assist,瞭解這項工具如何協助您生成程式碼、補全程式碼、摘要程式碼,以及回答 Google Cloud 相關問題。

參考文件