כתיבת קוד באמצעות Gemini Code Assist

במאמר הזה נסביר איך להשתמש ב-Gemini Code Assist, כלי מבוסס-AI ב- Google Cloud, כדי לבצע את הפעולות הבאות ב-Cloud Shell:

  • לספק הנחיות שיעזרו לכם לפתור בעיות בקוד.

  • יצירת קוד לפרויקט.

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

איך Gemini for Google Cloud ‎ משתמש בנתונים שלכם, ובאילו מקרים.

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

עיגון בקוד של הארגון מאפשר לקבל הצעות לקוד על סמך בסיס הקוד הפרטי של הארגון ישירות מ-Gemini Code Assist. איך מגדירים עיגון בקוד של הארגון

המסמך הזה מיועד למפתחים בכל רמות המיומנות. המדריך מתבסס על ההנחה שיש לכם ידע מעשי ב-Cloud Shell Editor ואתם מכירים את Google Cloud. אם אתם מעדיפים, אתם יכולים גם לנסות את Gemini Code Assist ב-Cloud Workstations, ב-IntelliJ וב-VS Code.

מתחברים אל Google Cloud ובוחרים פרויקט.

בקטע הזה מוסבר איך להתחבר ל Google Cloud ולבחורGoogle Cloud פרויקט שמופעל בו Gemini for Google Cloud API ב-Cloud Shell Editor.

אם תבחרו פרויקט ב- Google Cloud שבו Gemini for Google Cloud API לא מופעל, תקבלו הודעה עם אפשרות להפעיל את ה-API מ-IDE. בוחרים באפשרות Enable the API (הפעלת ה-API) בחלון ההתראה כדי להפעיל את ה-API בפרויקט. מידע נוסף זמין במאמר בנושא הגדרת Gemini Code Assist לפרויקט.

כדי להתחבר אל Google Cloud ב-Cloud Shell Editor:

  1. מפעילים את Cloud Shell Editor.

  2. אם מתבקשים לאשר ל-Cloud Shell Editor לבצע קריאות ל-API, לוחצים על Authorize. Google Cloud

  3. פועלים לפי ההנחיות כדי להיכנס לחשבון Google.

  4. לצד סרגל החיפוש, לוחצים על התפריט הנפתח keyboard_arrow_down Gemini Code Assist.

    תפריט נפתח של Gemini Code Assist.

  5. בתפריט, בוחרים באפשרות Select Gemini Code Assist Project (בחירת פרויקט Gemini Code Assist). ייפתח התפריט בחירת פרויקט ב-Google Cloud.

  6. בתפריט Select Google Cloud project, בוחרים פרויקט ב- Google Cloudשמופעל בו Gemini for Google Cloud API.

    התחברת עכשיו אל Google Cloud. ‫Gemini מוכן לשימוש.

שיחה בצ'אט עם Gemini Code Assist

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

כדי להתחיל לשוחח עם Gemini, פועלים לפי השלבים הבאים:

  1. פותחים קובץ מקור.

  2. לצד סרגל החיפוש ב-Cloud Shell Editor, לוחצים על chat_spark Open Gemini Code Assist Chat.

  3. בחלונית הצ'אט של Gemini Code Assist, מזינים את ההנחיה Explain this code to me ולוחצים על send שליחה.

    ‫Gemini משתמש בקובץ כהקשר להנחיה שלכם ומספק תשובה עם הסבר על הקוד.

    כדי להתמקד בבלוק קוד ספציפי, בוחרים את הבלוק הזה בקובץ הפתוח לפני שמזינים את ההנחיה.

איפוס היסטוריית הצ'אט

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

אם היסטוריית הצ'אט כבר לא רלוונטית למה שאתם מנסים להשיג, אתם יכולים לאפס את היסטוריית הצ'אט: בחלונית Gemini Code Assist, לוחצים על delete איפוס הצ'אט.

יצירת קוד באמצעות הנחיות

בסעיפים הבאים נסביר איך להשתמש ב-Gemini Code Assist כדי ליצור קוד באמצעות ההנחיה לדוגמה Function to create a Cloud Storage bucket בתוך קובץ. אתם יכולים גם לבחור חלק מהקוד, לבקש מ-Gemini Code Assist עזרה באמצעות תכונת הצ'אט, ולקבל הצעות לקוד, לאשר אותן או לדחות אותן בזמן שאתם כותבים קוד.

הנחיית Gemini Code Assist בקובץ

  1. בקובץ מקור, בשורה חדשה, כותבים את התגובה Function to create a Cloud Storage bucket ואז מקישים על Enter (ב-Windows וב-Linux) או על Return (ב-macOS).

  2. כדי ליצור קוד, מקישים על Control+Enter (ב-Windows וב-Linux) או על Control+Return (ב-macOS).

    ליד הטקסט של ההנחיה בקובץ, Gemini Code Assist יוצר את הקוד בצורה של טקסט רפאים.

  3. אופציונלי: כדי לאשר את הקוד שנוצר, מקישים על Tab.

אופציונלי: שינוי מקש הקיצור ליצירת קוד

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

  1. ב-Cloud Shell Editor, לוחצים על menu Menu ואז עוברים אל File > Preferences > Keyboard Shortcuts.

  2. ברשימת מקשי הקיצור, מחפשים את Cloud Code: Generate Code.

  3. לוחצים על Cloud Code: Generate Code (קוד Cloud: יצירת קוד) ואז על edit Change Keybinding (שינוי קיצור מקשים).

  4. בתיבת הדו-שיח שמופיעה, מזינים את קיצור הדרך הרצוי.

  5. מקישים על Enter (ב-Windows וב-Linux) או על Return (ב-macOS).

    עכשיו אפשר להשתמש במקש הקיצור החדש שהוקצה כדי ליצור קוד באמצעות Gemini.

הנחיית Gemini Code Assist באמצעות קוד שנבחר בצ'אט

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

  1. לצד סרגל החיפוש בעורך של Cloud Shell, לוחצים על chat_spark פתיחת הצ'אט של Gemini Code Assist.

  2. בקובץ מקור, בוחרים בלוק קוד.

  3. בשדה הטקסט של הצ'אט Gemini Code Assist, מזינים הנחיה לקוד שנבחר.

    לדוגמה, בוחרים פונקציה בקוד ומזינים את ההנחיה Write a unit test for this function.

    ‫Gemini משתמש בקוד שבחרתם כהפניה ועונה על ההנחיה.

קבלת הצעות בתוך השורה תוך כדי כתיבת קוד

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

  1. בקובץ מקור, בשורה חדשה, מתחילים לכתוב פונקציה. לדוגמה, אם אתם בקובץ Python, כותבים def. ‫Gemini מציע קוד בצורה של טקסט רפאים.

  2. כדי לאשר את הצעת הקוד מ-Gemini Code Assist, מקישים על Tab. אפשרות אחרת היא להתעלם מההצעה על ידי הקשה על Esc או להמשיך לכתוב את הקוד.

אופציונלי: השבתת ההצעות בגוף הטקסט

אם אתם מעדיפים להשבית את ההצעות המובנות ב-Gemini Code Assist, אתם יכולים לפעול לפי השלבים הבאים:

  1. ב-Cloud Shell Editor, בוחרים באפשרות menu Menu, ואז עוברים אל File > Preferences > Settings.

  2. בכרטיסייה משתמש בתיבת הדו-שיח הגדרות, עוברים אל תוספים > Cloud Code.

  3. גוללים עד שמוצאים את הרשימה Cloudcode: Gemini Code Assist: Inline Suggestions: Enable Auto, ואז בוחרים באפשרות Off.

    הפעולה הזו משביתה את ההצעות שמופיעות בתוך הטקסט. עדיין אפשר להקיש על Control+Enter (ב-Windows וב-Linux) או על Control+Return (ב-macOS) כדי להפעיל ידנית הצעות מוטבעות.

אופציונלי: לא לכלול קבצים בהקשר באמצעות קובץ ‎ .aiexclude

אתם יכולים ליצור קובץ .aiexclude כדי להחריג קבצים מסוימים מההקשר ש-Gemini Code Assist מתבסס עליו. קובץ .aiexclude דומה לקובץ .gitignore, אבל יש כמה הבדלים:

  • קובץ .aiexclude ריק או לא קיים לא חוסם קבצים בספרייה שלו ובכל ספריות המשנה.
  • קובץ .aiexclude לא תומך בשלילה, שבה מוסיפים סימן קריאה (!) לפני תבניות.
  • קובץ .aiexclude מתאים באופן חמדן לתו *. ההתאמה תתבצע ללא הבחנה בין ספריות וקבצים. בקובץ .aiexclude הזה אין הבדל בין ** לבין * בכל מה שקשור לתיקיות או לקבצים.

נכון לעכשיו, יש תמיכה רק בקובץ .aiexclude אחד. כדי להגדיר את הקובץ .aiexclude, יוצרים קובץ בשם .aiexclude בתיקיית השורש של סביבת העבודה. אם רוצים למקם את הקובץ הזה מחוץ לתיקיית הבסיס של סביבת העבודה, או לשנות את שם הקובץ, אפשר להגדיר את הנתיב בהגדרות של VS Code בקטע Context Exclusion File (קובץ החרגה של הקשר). הערך של הנתיב שמוגדר בהגדרה הזו ייפתר ביחס לתיקיית הבסיס של סביבת העבודה הפתוחה.

דוגמאות

בדוגמאות הבאות מוסבר איך להגדיר קובץ .aiexclude:

  • חסימה של כל הקבצים בשם apikeys.txt בספריית סביבת העבודה או בספריות שמתחתיה:

    apikeys.txt
    
  • חסימת כל הקבצים עם סיומת הקובץ .key בספריית סביבת העבודה או בספריות שמתחתיה:

    *.key
    
  • חסימה של הקובץ apikeys.txt בלבד באותה ספרייה שבה נמצא הקובץ .aiexclude, אבל לא של ספריות משנה:

    /apikeys.txt
    
  • חסימת כל הקבצים בספרייה my/sensitive/dir ובכל ספריות המשנה. הנתיב צריך להיות יחסי לספריית הבסיס של סביבת העבודה.

    my/sensitive/dir/*
    

השבתה של הצעות לקוד שתואמות למקורות שמצוטטים

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

כדי למנוע הצעות של קוד שתואם למקורות שמצוטטים, אפשר לשנות את ההגדרה geminicodeassist.recitation.maxCitedLength ל-0 בקובץ settings.json:

"geminicodeassist.recitation.maxCitedLength": 0

שימוש בפעולות חכמות

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

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

  1. בקובץ מקור, בוחרים בלוק קוד.

  2. לצד בלוק הקוד שנבחר, לוחצים על lightbulb הצגת פעולות קוד.

    סמל הנורה של הפעולות החכמות מופיע אחרי שבוחרים בלוק קוד ב-Shell וב-Workstations.

  3. בוחרים פעולה, כמו יצירת בדיקות יחידה.

    ‫Gemini ייצור תשובה על סמך הפעולה שבחרתם.

שימוש בהמרת קוד

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

בעזרת שינוי קוד, אפשר:

  • יצירת שורות של הערות לתיעוד הקוד
  • פתרון בעיות בקוד
  • שיפור הקריאות של הקוד
  • שיפור היעילות של הקוד

אפשר גם לראות את מקורות ההקשר של תשובה שנוצרה בחלונית Gemini: Chat.

הנחיית Gemini Code Assist באמצעות תיבת הטקסט בתוך השורה

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

כדי לפתוח את תיבת הטקסט המובנית ולתת הנחיה ל-Gemini, מבצעים את השלבים הבאים:

  1. בקובץ מקור, מקישים על Control+I (ב-Windows וב-Linux) או על Command+I (ב-macOS).

  2. כותבים הנחיה, למשל Write a function to create a Cloud Storage bucket, ומקישים על Enter (ב-Windows וב-Linux) או על Return (ב-macOS).

    ‫Gemini Code Assist יוצר את הקוד על סמך ההנחיה.

הצגת ההשוואה של הקוד שעבר ארגון מחדש

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

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

  1. בקובץ מקור, בוחרים פונקציה ופותחים את תיבת הטקסט בשורה על ידי הקשה על Control+I (ב-Windows וב-Linux) או על Command+I (ב-macOS).

  2. מזינים הנחיה, כמו Add comments ומקישים על Enter (ב-Windows וב-Linux) או על Return (ב-macOS).

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

    מקורות ההקשר מפורטים בחלונית Gemini: Chat.

  3. כדי לאשר או לבטל את השינויים, לוחצים על אישור או על ביטול.

הצגת מקורות ההקשר של תשובה שנוצרה

בתכונה 'הצגת ההקשר' מפורטים קובצי הפרויקט (מקורות ההקשר) ששימשו כהפניה ליצירת תשובות להנחיות. הידיעה אילו קבצים שימשו כהפניות עוזרת לכם לשפר את ההנחיות ולקבל תשובות ספציפיות יותר. מקורות ההקשר מוצגים בכל פעם שמשתמשים ב-Gemini Chat.

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

מקורות ההקשר מפורטים בחלונית Gemini: Chat.

שימוש בפקודות חכמות

פקודות חכמות הן פקודות שאפשר להשתמש בהן בתיבת הטקסט המוטבעת כדי לבצע פעולות ספציפיות בקוד.

כדי לקבל הסבר על קובץ מקור שלם באמצעות הפקודה החכמה /explain, פועלים לפי השלבים הבאים:

  1. בתוך קובץ, פותחים את תיבת הטקסט בתוך השורה על ידי הקשה על Control+I (ב-Windows וב-Linux) או על Command+I (ב-macOS).

  2. לוחצים על / כדי לראות את רשימת הפקודות החכמות והתיאורים שלהן.

  3. בוחרים באפשרות /explain.

    ‫Gemini יוצר הסבר של כל הקובץ בתיבת הטקסט המוטמעת.

  4. אופציונלי: אם רוצים לראות את התשובה שנוצרה בחלונית Gemini: Chat, לוחצים על הצגה ב-Chat.

הצגת היסטוריית ההנחיות

הגישה להיסטוריית ההנחיות חוסכת לכם זמן כשאתם רוצים לעשות שימוש חוזר בהנחיות בקובץ מקור גדול.

כדי לגשת להיסטוריית ההנחיות, פותחים את תיבת הטקסט בתוך השורה בקובץ על ידי הקשה על Control+I (ב-Windows וב-Linux) או על Command+I (ב-macOS), ואז מקישים על Control+חץ למעלה (ב-Windows וב-Linux) או על Command+חץ למעלה (ב-macOS). כך תוכלו לעבור בין ההנחיות הישנות שלכם ולהשתמש בהן מחדש לפי הצורך.

שיפור קריאות הקוד לאנשים שאנגלית היא לא שפת האם שלהם

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

כדי להמיר תגובות באנגלית לשפה אחרת או להוסיף תגובות חדשות בשפה אחרת, פועלים לפי השלבים הבאים:

  1. בקבצים של מקורות, בוחרים את הקוד שרוצים להוסיף לו הערות.

  2. פותחים את תיבת הטקסט בתוך השורה על ידי הקשה על Control+I (ב-Windows וב-Linux) או על Command+I (ב-macOS).

  3. מזינים הנחיה, כמו Add spanish comments, ומקישים על Enter (ב-Windows וב-Linux) או על Return (ב-macOS).

    ‫Gemini יוצר תגובות בשפה שציינתם בהנחיה, ומציג את ההבדלים בין ההצעות.

  4. כדי לאשר או לבטל את השינויים בקוד, לוחצים על אישור או על ביטול.

הנחיות לדוגמה נוספות

אחרי שתקראו את החלק יצירת קוד באמצעות הנחיות במסמך הזה, תוכלו לנסות כמה מההנחיות לדוגמה שבהמשך.

קבלת הסבר על קוד

  1. בקובץ מקור, בוחרים פונקציה שרוצים לקבל עליה הסבר.
  2. בחלונית Gemini Code Assist, מזינים את ההנחיה Explain this code to me.

    ‫Gemini משתמש בקוד שבחרתם כהפניה ומספק הסבר על הפונקציה שנבחרה.

יצירת תוכניות בדיקה

  1. בקובץ מקור, בוחרים את הקוד שרוצים להוסיף לו בדיקות יחידה.
  2. בחלונית Gemini Code Assist, מזינים את ההנחיה Write unit tests for my code.

קבלת עזרה בניפוי באגים בקוד

  1. בקבצים של מקור, בוחרים את הקוד שרוצים לנפות באגים.
  2. בחלונית Gemini Code Assist, מזינים את ההנחיה Help me debug my code.

שיפור הקריאות של הקוד

  1. בקובץ מקור, בוחרים את הקוד שרוצים להפוך לקריא יותר.
  2. בחלונית Gemini Code Assist, מזינים את ההנחיה Make my code more readable.

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

בעיות מוכרות

בקטעים הבאים מפורטות הבעיות הידועות ב-Gemini Code Assist.

אזהרות לגבי ציטוט רישיון לא נשמרות בין סשנים

אם אזהרות לגבי ציטוט רישיון לא נשארות בין הפעלות, כדאי לעיין ביומני הרישום הקבועים:

  1. לוחצים על menu תפריט > תצוגה > פלט.

  2. בוחרים באפשרות Gemini Code Assist - Citations (Gemini Code Assist – ציטוטים).

בעיות בקישוריות בחלון הפלט של Gemini Code Assist

אם מופיעה שגיאת חיבור או בעיות אחרות בחיבור בחלון הפלט של Gemini Code Assist, נסו את הפעולות הבאות:

  • מגדירים את חומת האש כך שתאפשר גישה אל oauth2.googleapis.com ואל cloudaicompanion.googleapis.com.

  • מגדירים את חומת האש כך שתאפשר תקשורת באמצעות HTTP/2, שמשמש את gRPC.

אפשר להשתמש בכלי grpc-health-probe כדי לבדוק את הקישוריות. אם הבדיקה תצליח, הפלט הבא יוצג:

$ grpc-health-probe -addr cloudaicompanion.googleapis.com:443 -tls error: this server does not implement the grpc health protocol (grpc.health.v1.Health): GRPC target method can't be resolved

אם הבדיקה נכשלת, הפלט הבא מוצג:

timeout: failed to connect service "cloudaicompanion.googleapis.com:443" within 1s

כדי לקבל פרטים נוספים, מריצים את הפקודה הבאה לפני grpc-health-probe:

export GRPC_GO_LOG_SEVERITY_LEVEL=info

האפשרות 'הפעלת Gemini Code Assist' עדיין מופיעה אחרי בחירת פרויקט Gemini Code Assist

אם בחרתם את הפרויקט לפי ההוראות במדריך הזה, כולל הפעלת Gemini for Google Cloud API, יכול להיות שיש בעיה בשרת LS.

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

  1. לצד סרגל החיפוש ב-Cloud Shell Editor, לוחצים על chat_spark Open Gemini Code Assist Chat.

  2. בחלונית הצ'אט של Gemini Code Assist, לוחצים על Leave Feedback (שליחת משוב).

  3. כדי לראות פרטים נוספים ולפתור את הבעיה, לוחצים על הצגה ליד אחד מקובצי היומן.

הוסף משוב

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

  1. לצד סרגל החיפוש ב-Cloud Shell Editor, לוחצים על chat_spark Open Gemini Code Assist Chat.

  2. בחלונית הצ'אט של Gemini Code Assist, לוחצים על Leave Feedback (שליחת משוב).

    משוב על Gemini Code Assist בעורך של Cloud Shell.

  3. בטופס משוב על Gemini Code Assist, בוחרים את קטגוריית המשוב ואת הסוג, ומתארים את הבעיה בשדה הערות.

  4. כדי לשתף את היומנים של Gemini Code Assist, בוחרים באפשרות Send Gemini Code Assist logs.

  5. לוחצים על שליחת משוב.

המאמרים הבאים