סיור מודרך ב-Gemini Code Assist Standard ו-Enterprise למפתחים ב-Google Cloud Shell Editor

1. מבוא

בשיעור ה-Lab הזה תלמדו איך להשתמש ב-Gemini Code Assist, כלי מבוסס-AI ב-Google Cloud. תלמדו איך להשתמש ב-Gemini Chat ובסיוע בכתיבת קוד בתוך השורה כדי ליצור קוד, להבין קוד ולבצע משימות תכנות אחרות בעזרת AI.

מה עושים?

  • תשתמשו ב-Cloud Shell IDE כדי להוריד תבנית קוד קיימת לאפליקציית אינטרנט.
  • תשתמשו ב-Gemini Chat ב-Cloud Shell IDE כדי לשאול שאלות כלליות על Google Cloud.
  • תשתמשו ב-Gemini Code Assist כדי ליצור, לסכם ולהשלים קוד בסביבת הפיתוח המשולבת (IDE) של Cloud Shell.

מה תלמדו...

  • איך משתמשים ב-Gemini Code Assist למשימות שונות של מפתחים, כמו יצירת קוד, השלמת קוד וסיכום קוד.
  • איך משתמשים ב-Cloud Assist כדי לקבל מידע על Google Cloud.

מה צריך...

  • דפדפן האינטרנט Chrome
  • חשבון Gmail
  • פרויקט ב-Cloud עם חיוב מופעל
  • ‫Gemini Code Assist מופעל בפרויקט שלכם ב-Cloud

שיעור ה-Lab הזה מיועד למפתחים בכל הרמות, כולל מתחילים. אף על פי שאפליקציית הדוגמה כתובה בשפת Python, לא צריך להכיר את התכנות ב-Python כדי להבין מה קורה. המיקוד שלנו יהיה בהיכרות עם היכולות של Gemini Code Assist למפתחים.

2. הגדרה

בקטע הזה מפורט כל מה שצריך לעשות כדי להתחיל את שיעור ה-Lab.

הפעלת Cloud Assist בפרויקט ב-Google Cloud

נפעיל עכשיו את Cloud Assist בפרויקט Google Cloud שלנו. כך עושים את זה:

  1. נכנסים לכתובת https://console.cloud.google.com ומוודאים שבחרתם את הפרויקט ב-Google Cloud שבו אתם מתכננים לעבוד במעבדה הזו. לוחצים על הסמל של Gemini בפינה השמאלית העליונה.

2d8b6827f2ff9870.png

  1. חלון הצ'אט של Cloud Assist ייפתח בצד שמאל של המסוף. לוחצים על הלחצן כמו שמוצג למטה. יוצג מסך נוסף שבו יודגשו ממשקי ה-API שהכלי מפעיל וכו'. בוחרים באפשרות ברירת המחדל ולוחצים על הלחצן 'הפעלה'.

אם לא מופיע הלחצן הפעלה ומופיע במקומו ממשק של Chat, סביר להניח שכבר הפעלתם את Cloud Assist בפרויקט ואפשר לעבור ישירות לשלב הבא.

b4322e74dc190d18.png

  1. אחרי שמפעילים את Cloud Assist, אפשר לבדוק אותו על ידי כתיבת הנחיה או שתיים. מוצגות כמה דוגמאות לשאילתות, אבל אפשר לנסות משהו כמו What is Cloud Run?

9353a6ebc3cb1363.png

Cloud Assist יגיב עם התשובה לשאלה. כדי לסגור את חלון הצ'אט של Cloud Assist, לוחצים על סמל X בפינה השמאלית העליונה.

הפעלת Gemini Code Assist ב-Cloud Shell IDE

נשתמש ב-Cloud Shell IDE, סביבת פיתוח מנוהלת מלאה שמבוססת על Code OSS, בשאר שיעור ה-Codelab. צריך להפעיל ולהגדיר את Code Assist בסביבת הפיתוח המשולבת של Cloud Shell. השלבים מפורטים בהמשך:

  1. עוברים אל ide.cloud.google.com. יכול להיות שיעבור זמן מה עד שסביבת הפיתוח המשולבת תופיע, אז כדאי לחכות בסבלנות. יוצג מסך שדומה לזה שמופיע למטה. חלון Gemini Code Assist ייפתח בחלונית השמאלית ביותר.

231baed212e3f01c.png

  1. אם מופיע לחצן Cloud Code - Sign in בסרגל הסטטוס התחתון, לוחצים עליו ומאשרים את התוסף לפי ההוראות. אם בשורת המצב מופיע הכיתוב Cloud Code - no project, בוחרים באפשרות הזו ואז בוחרים את הפרויקט הספציפי ב-Google Cloud שרוצים לעבוד איתו.
  2. אפשר להפעיל או להשבית את Gemini Code Assist בכל שלב דרך התפריט הנפתח של Gemini Chat שמופיע משמאל לסרגל החיפוש, כמו שמוצג בהמשך. לוחצים על האפשרות פתיחת הצ'אט עם Gemini Code Assist כדי ש-Gemini Code Assist יופיע בחלונית השמאלית.

15344d8cfa7dd2a7.png

‫Gemini Code Assist מוכן לשימוש!

אופציונלי: אם אתם לא רואים את חלונית Gemini Code Assist בסביבת הפיתוח המשולבת (IDE), בדקו אם Gemini Code Assist הופעל. כדי לעשות את זה, נכנסים להגדרות ומחפשים את האפשרות Gemini Code Assist Enable (הפעלת Gemini Code Assist), כמו שמוצג בהמשך. צריך לבחור את ההגדרה.

1eea5294d2906667.png

3. יצירת אפליקציה לדוגמה

ניצור אפליקציה לדוגמה (אפליקציית Python Flask) שבעזרתה נבדוק את התכונות של Gemini Code Assist.

כך עושים את זה:

  1. לוחצים על שם פרויקט הענן בסרגל הסטטוס שבתחתית המסך.

3b342e4434748f6d.png

  1. תוצג רשימה של אפשרויות. לוחצים על New Application (אפליקציה חדשה) מהרשימה שלמטה.

84e1aa521cfa1924.png

  1. בוחרים באפשרות Cloud Run.
  2. בוחרים את תבנית האפליקציה Python (Flask): Cloud Run.
  3. שומרים את האפליקציה החדשה במיקום הרצוי.
  4. תוצג הודעה שמאשרת שהבקשה נוצרה, וייפתח חלון חדש עם הבקשה שנטענה, כמו שמוצג בהמשך. קובץ README.md ייפתח. אפשר לסגור את התצוגה הזו כרגע.

7ade978bab5f6959.png

4. שיחה עם Gemini

נתחיל בלמידה איך לשוחח עם Gemini. פותחים את הצ'אט של Gemini Code Assist בחלונית השמאלית כמו שהוסבר קודם.

אחרי שתעשו את זה, תוכלו לשוחח עם Gemini כדי לקבל עזרה ב-Google Cloud.

599f65b2a297e9c5.png

נשתמש בחלונית הצ'אט של Gemini כדי להזין הנחיה ולראות את התשובה מ-Gemini. מזינים את ההנחיה הבאה:

What is Cloud Run? 

‫Gemini צריך לענות עם פרטים על Cloud Run. הנחיות הן שאלות או הצהרות שמתארות את העזרה שאתם צריכים. ההנחיות יכולות לכלול הקשר מקוד קיים שמנותח על ידי Google Cloud כדי לספק תשובות מועילות או מלאות יותר. מידע נוסף על כתיבת הנחיות ליצירת תשובות טובות זמין במאמר כתיבת הנחיות טובות יותר ל-Gemini ב-Google Cloud.

אתם יכולים לנסות את ההנחיות לדוגמה שמופיעות בהמשך או להשתמש בהנחיות משלכם כדי לשאול שאלות על 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?

5. הסבר על הקוד

כדי לעזור לכם להיות פרודוקטיביים יותר ולצמצם את הצורך במעבר בין הקשרים, Gemini Code Assist מספק פעולות חכמות מבוססות-AI ישירות בעורך הקוד. כשבוחרים את הקוד בכלי לעריכת קוד, אפשר לראות רשימה של פעולות שרלוונטיות להקשר ולבחור מתוכה.

אתם יכולים להשתמש ב-Gemini Code Assist כדי להבין חלקים מקוד האפליקציה. חוזרים לאפליקציה שיצרנו בשלב הקודם, ואפשר להשתמש ב-Gemini Code Assist כדי לקבל הסבר על הקבצים והקוד שזמינים בסביבת הפיתוח המשולבת (IDE).

  1. אם הקבצים לא מוצגים, בסרגל הפעילות של סביבת הפיתוח המשולבת (IDE), לוחצים על סייר ( תפריט Code OSS Explorer).
  2. בחלונית Explorer, בוחרים באפשרות Dockerfile.
  3. אפשר לבחור חלק כלשהו מתוכן הקובץ, ללחוץ על הנורה ( נורת Duet AI ב-Code OSS) ואז על Gemini: הסבר על זה. לדוגמה, בוחרים בשורה שמתחילה ב-ENTRYPOINT, לוחצים על הנורה ( נורת Duet AI ב-Code OSS) ואז על Gemini: Explain this (Gemini: הסבר על זה). ‫Gemini יוצר הסבר בשפה טבעית על הקטע הספציפי בקובץ Dockerfile שאתם רוצים לקבל עליו מידע נוסף. ‫Gemini משיב עם פרטים על ההוראה ENTRYPOINT. אתם מבינים שעם ההוראה הזו, Docker יריץ את הקובץ app.py כשהקונטיינר יופעל.
  4. כדי לראות את התוכן של הקובץ app.py, בסרגל הפעילות לוחצים על Explorer ( תפריט Code OSS Explorer) ואז בוחרים באפשרות app.py.
  5. בהגדרת הפונקציה hello()‎, אפשר לבחור את השורות שרוצים לקבל עליהן מידע נוסף. אחר כך לוחצים על סמל הנורה ( נורת Duet AI ב-Code OSS) ואז על Gemini : Explain this (Gemini: הסבר על זה). בדוגמה שלנו, בחרנו את שתי שורות הקוד הבאות והפעלנו את הפעולה Gemini: Explain this.

a1e29872520d0d0e.png

  1. ‫Gemini מגיב עם הסבר מפורט על שני משתני הסביבה של Cloud Run (K_SERVICE, K_REVISION) ואיך הם משמשים בקוד האפליקציה. חשוב לציין ש-Gemini, עם הידע שלו ב-Google Cloud ובשירותים כמו Cloud Run, לא רק הסביר את קוד Python, אלא גם סיפק את ההקשר של המשמעות של המשתנים האלה ב-Cloud Run.

כדאי לנסות את הדרכים הנוספות הבאות כדי לקבל הסבר על הקוד:

  1. משאירים את הקובץ app.py כקובץ הפתוח כרגע בסביבת הפיתוח המשולבת. עוברים לחלונית הצ'אט של Gemini בסרגל הניווט הימני ב-VS Code ומזינים את ההנחיה Explain this file (הסבר על הקובץ הזה). הוא ינתח את הקובץ כולו ויסביר לכם אותו.
  2. אפשר גם לבחור חלק מהקובץ ואז להשתמש בחלונית הצ'אט של Gemini בצד ימין, להזין את ההנחיה Explain this (הסבר על זה). ההסבר יתייחס רק לחלק שנבחר בקובץ. זה דומה ללחיצה על הנורה( נורת Duet AI ב-Code OSS) ואז על Gemini: הסבר על זה.

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). לצד טקסט ההנחיה בקובץ Python, ‏ Gemini Code Assist יוצר את הקוד בצורה של טקסט רפאים. הוא יציג לכם הצעה אחת או יותר לקוד עם סרגל כלים, שדרכו תוכלו לעבור מהצעה אחת להצעה אחרת (אם יש כמה הצעות). אפשר אפילו לאשר כל אחת מהצעות הקוד דרך סרגל הכלים. אם סרגל הכלים לא מופיע או שהוא נעלם, מעבירים את העכבר מעל הקוד שנוצר כדי שהוא יופיע שוב.
  4. אופציונלי: כדי לאשר את הקוד שנוצר, לוחצים על Tab. אם יש כמה הצעות, אפשר להקיש על Tab כמה פעמים כדי לעבור מקטע קוד מוצע אחד לקטע הבא.

הקוד שאשרתם יתווסף לקובץ utils.py. למטה מוצגת דוגמה בצילום מסך. יכול להיות שהקוד שתקבלו יהיה שונה מהקוד שמוצג בהמשך. אם נוצרות שיטות נוספות, אפשר למחוק אותן אחרי אישור הקוד.

d0800c95710b2b5f.png

(אופציונלי) הנה כמה הצעות נוספות שכדאי לנסות ליצירת קוד:

  1. אפשר גם להשתמש בתכונת הצ'אט עם Gemini כדי לשאול את אותה הנחיה ולקבל את התשובה בחלון הצ'אט. בממשק של Chat מוצגות אפשרויות להעתקת הקוד או להוספה שלו לקובץ הנוכחי.
  2. אתם יכולים לנסות הנחיות משלכם כדי לקבל קוד לדוגמה שמתאים לכם. בהמשך מופיעות כמה הצעות (בהנחה שאתם נמצאים באחד מקובצי ה-Python): או שאתם יכולים לבחור מתוך ההנחיות הבאות:
  • כתיבת קוד Python לפרסום הודעה ב-Google Cloud Pub/Sub
  • כתיבת קוד Python כדי לאתחל לקוח BigQuery
  • כתיבת קוד Python כדי לחבר את האפליקציה שלי ל-Cloud SQL

7. קבלת הצעות לקוד בתוך השורה בזמן כתיבת קוד

בזמן שאתם כותבים קוד, Gemini Code Assist מציע הצעות לקוד בשורה, ואתם יכולים לקבל אותן או להתעלם מהן. כדי לנסות את התכונה הזו, נשנה את הקובץ utils.py שיצרנו בסעיף הקודם :

  1. פותחים את הקובץ utils.py כקובץ הנוכחי בסביבת הפיתוח המשולבת של Cloud Shell.
  2. אחת הפעולות שאנחנו יכולים לבצע היא לספק את הצהרות import הנכונות, אם הן לא מופיעות בקוד שנוצר.
  3. מתחילים להקליד את המילה import ומופיעה הצעה לקוד מ-Gemini Code Assist בצורת טקסט רפאים. כדי לאשר את הצעת הקוד מ-Gemini Code Assist, מקישים על Tab. אם רוצים להתעלם מההצעה, לוחצים על Esc או ממשיכים לכתוב את הקוד. במסך לדוגמה שלמטה, מוצע לייבא את המחלקה storage כי נעשה בה שימוש בקוד. מקישים על Tab כדי לאשר את הצעת הקוד. היא גם מציעה את ההצהרה import os, אבל מכיוון שהיא לא נחוצה, אפשר להסיר אותה.

7cff2c24ff02448c.png

  1. עוברים לסוף הקובץ utils.py ומוסיפים את השורה להפעלת הפונקציה, אם היא לא מופיעה. בדוגמה הזו, מדובר בפונקציה print_blobs, אבל יכול להיות שבמקרה שלכם מדובר בפונקציה אחרת. אפשר פשוט להתחיל להקליד את שם הפונקציה, והשלמת הקוד תעזור לכם לסיים את ההצהרה.
  2. תצטרכו לציין את bucket_name (שם קטגוריית האחסון) ואפשר להשתמש בשם קטגוריית האחסון הציבורית הבאה : gemini-codeassist-bucket.בהמשך מוצגת קריאה לדוגמה של הפונקציה. שימו לב: יכול להיות שתראו הבדלים קלים בשמות הפונקציות וכו'.

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

(אופציונלי) מריצים את הקוד לדוגמה

מכיוון שכתבנו קוד כדי להציג רשימה של ה-blob בדלי של Google Cloud Storage, נצטרך להתקין את ספריית Python‏ google-cloud-storage.

עוברים לקובץ 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 כמו שמוצג למטה:

cb369ffdf577c63e.png

בסשן של הטרמינל, מתקינים את יחסי התלות של Python באמצעות הפקודה הבאה:

pip3 install -r requirements.txt

לבסוף, אפשר להריץ את הקובץ utils.py באמצעות הפקודה הבאה:

python utils.py

אמורים להופיע ה-blob שנמצאים בקטגוריה הציבורית של Google Cloud Storage. במצב אידאלי, אמורים להופיע בפלט 2 בלובים (file1.txt ו-file2.txt).

פתרון בעיות

אם מוצגת לכם שגיאת גישה כשאתם מנסים להציג את האובייקטים בקטגוריה הציבורית שלמעלה, אתם יכולים ליצור קטגוריה של Cloud Storage משלכם ב-Google Cloud Storage ולהשתמש בה במקום gemini-codeassist-bucket. בקטע הבא נסביר איך עושים את זה.

(אופציונלי) יצירת קטגוריה משלכם ב-Cloud Storage

נשתמש ב-Gemini כדי לקבל פקודות ליצירת קטגוריה, להגדרת גישה ציבורית אליה ולהעלאת אובייקטים לדוגמה לקטגוריה.

מתחילים בהנחיה הבאה: "What is the gcloud command to create a public bucket in Google Cloud Storage?"

אמורה להיות פקודת gcloud ליצירת מאגר. הפקודה המדויקת מוצגת בהמשך:

gcloud storage buckets create gs://<BUCKET_NAME>

בוחרים שם ייחודי ל-<BUCKET_NAME> ומריצים את הפקודה במסוף.

אחרי שיצרנו קטגוריה, אנחנו רוצים שהיא תהיה נגישה לכולם. נבקש מ-Gemini את הפקודה לביצוע הפעולה הזו באמצעות ההנחיה הבאה: "How do I make a google cloud storage bucket publicly accessible?" (איך הופכים קטגוריה של 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>

עכשיו אפשר להריץ את הקובץ utils.py באמצעות <BUCKET_NAME> במקום gemini-codeassist-bucket.

הסרת המשאבים

אם יצרתם קטגוריה משלכם ב-Google Cloud Storage, מומלץ מאוד למחוק אותה כדי להימנע מחיובים ומסיכוני אבטחה פוטנציאליים.

כדי למחוק את הבאקט, משתמשים בפקודה שמופיעה בהמשך:

gcloud storage buckets delete gs://<BUCKET_NAME>

8. מעולה!

כל הכבוד – הצלחתם לעבוד עם Gemini Code Assist על פרויקט לדוגמה כדי להבין איך הוא יכול לעזור ביצירת קוד, בהשלמת קוד, בסיכום קוד ובקבלת תשובות לשאלות לגבי Google Cloud.

מאמרי עזרה