เร่งการพัฒนาด้วย Gemini Code Assist

1. ภาพรวม

แล็บนี้มุ่งเน้นการใช้ Gemini Code Assist ซึ่งเป็น Agent ที่ทำงานด้วยระบบ AI ใน Google Cloud คุณจะได้เรียนรู้วิธีใช้ Gemini Code Assist สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์ ซึ่งรวมถึงการทำความเข้าใจฐานของโค้ดที่มีอยู่ การสร้างเอกสารและ Unit Test การปรับโครงสร้างทั้งคอมโพเนนต์ UI และแบ็กเอนด์ของเว็บแอปพลิเคชัน Python

สิ่งที่คุณจะได้เรียนรู้

ในแล็บนี้ คุณจะได้เรียนรู้วิธีทำสิ่งต่อไปนี้

  • วิธีใช้ Gemini Code Assist สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์

ข้อกำหนดเบื้องต้น

  • แล็บนี้มีสมมติฐานว่าคุณคุ้นเคยกับสภาพแวดล้อมของ Cloud Console และ Cloud Shell

2. การตั้งค่าและข้อกำหนด

การตั้งค่าโปรเจ็กต์ Cloud

  1. ลงชื่อเข้าใช้ Google Cloud Console แล้วสร้างโปรเจ็กต์ใหม่หรือใช้โปรเจ็กต์ที่มีอยู่ซ้ำ หากยังไม่มีบัญชี Gmail หรือ Google Workspace คุณต้องสร้างบัญชี

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • ชื่อโปรเจ็กต์คือชื่อที่แสดงสำหรับผู้เข้าร่วมโปรเจ็กต์นี้ ซึ่งเป็นสตริงอักขระที่ Google APIs ไม่ได้ใช้ คุณอัปเดตได้ทุกเมื่อ
  • รหัสโปรเจ็กต์จะไม่ซ้ำกันในโปรเจ็กต์ Google Cloud ทั้งหมดและเปลี่ยนแปลงไม่ได้ (เปลี่ยนไม่ได้หลังจากตั้งค่าแล้ว) Cloud Console จะสร้างสตริงที่ไม่ซ้ำกันโดยอัตโนมัติ ซึ่งโดยปกติแล้วคุณไม่จำเป็นต้องสนใจว่าสตริงนั้นคืออะไร ใน Codelab ส่วนใหญ่ คุณจะต้องอ้างอิงรหัสโปรเจ็กต์ (โดยปกติจะระบุเป็น PROJECT_ID) หากไม่ชอบรหัสที่สร้างขึ้น คุณอาจสร้างรหัสแบบสุ่มอีกรหัสหนึ่งได้ หรือคุณอาจลองใช้ชื่อของคุณเองและดูว่ามีชื่อนั้นหรือไม่ คุณจะเปลี่ยนแปลงรหัสนี้หลังจากขั้นตอนนี้ไม่ได้ และรหัสจะคงอยู่ตลอดระยะเวลาของโปรเจ็กต์
  • โปรดทราบว่ายังมีค่าที่ 3 ซึ่งคือหมายเลขโปรเจ็กต์ที่ API บางตัวใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับค่าทั้ง 3 นี้ได้ในเอกสารประกอบ
  1. จากนั้นคุณจะต้องเปิดใช้การเรียกเก็บเงินใน Cloud Console เพื่อใช้ทรัพยากร/API ของ Cloud การทำตาม Codelab นี้จะไม่เสียค่าใช้จ่ายมากนัก หรืออาจไม่เสียเลย หากต้องการปิดทรัพยากรเพื่อหลีกเลี่ยงการเรียกเก็บเงินนอกเหนือจากบทแนะนำนี้ คุณสามารถลบทรัพยากรที่สร้างขึ้นหรือลบโปรเจ็กต์ได้ ผู้ใช้ Google Cloud รายใหม่มีสิทธิ์เข้าร่วมโปรแกรมช่วงทดลองใช้ฟรีมูลค่า$300 USD

การตั้งค่าสภาพแวดล้อม

เปิด Gemini Chat

bc3c899ac8bcf488.png

หรือพิมพ์ "ขอความช่วยเหลือจาก Gemini" ในแถบค้นหา

e1e9ad314691368a.png

วิธีเปิดใช้ Gemini สำหรับ Google Cloud API

636114fa6e5f0abf.png

เปิดใช้ GCA ในหน้าจอถัดไป

8e234b2e282c4413.png

คลิก "Start chatting" แล้วลองใช้คำถามตัวอย่างหรือพิมพ์พรอมต์ของคุณเอง

ed120d672468b412.png

พรอมต์ให้ลองใช้

  • อธิบาย Cloud Run ใน 5 ประเด็นสำคัญ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบาย Cloud Run ให้แก่นักเรียน/นักศึกษาโดยใช้ประเด็นสำคัญสั้นๆ 5 ข้อ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบาย Cloud Run ให้กับนักพัฒนา Kubernetes ที่ได้รับการรับรองโดยใช้ประเด็นสำคัญสั้นๆ 5 ข้อ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบายว่าเมื่อใดที่ควรใช้ Cloud Run แทน GKE ให้กับนักพัฒนาแอปอาวุโสโดยสรุปเป็นประเด็นสำคัญ 5 ข้อ

ปิดหน้าต่างแชท Gemini Cloud Assist หลังจากดำเนินการเสร็จแล้ว

ดูคู่มือการใช้พรอมต์เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการเขียนพรอมต์ให้ดียิ่งขึ้น

วิธีที่ Gemini สำหรับ Google Cloud ใช้ข้อมูลของคุณ

ความมุ่งมั่นของ Google ในการปกป้องความเป็นส่วนตัว

Google เป็นหนึ่งในบริษัทแรกๆ ในอุตสาหกรรมที่เผยแพร่ความมุ่งมั่นด้านความเป็นส่วนตัวของ AI/ML ซึ่งระบุความเชื่อของเราว่าลูกค้าควรมีการรักษาความปลอดภัยและการควบคุมข้อมูลในระดับสูงสุดที่จัดเก็บไว้ในระบบคลาวด์

ข้อมูลที่คุณส่งและรับ

คำถามที่คุณถาม Gemini รวมถึงข้อมูลอินพุตหรือโค้ดที่คุณส่งให้ Gemini วิเคราะห์หรือทำให้เสร็จสมบูรณ์เรียกว่าพรอมต์ คำตอบหรือการเติมโค้ดที่คุณได้รับจาก Gemini เรียกว่าคำตอบ Gemini ไม่ใช้พรอมต์ของคุณหรือคำตอบของ Gemini เป็นข้อมูลในการฝึกโมเดล

การเข้ารหัสพรอมต์

เมื่อคุณส่งพรอมต์ไปยัง Gemini ระบบจะเข้ารหัสข้อมูลของคุณขณะรับส่งเป็นอินพุตไปยังโมเดลพื้นฐานใน Gemini

ข้อมูลโปรแกรมที่สร้างจาก Gemini

Gemini ได้รับการฝึกด้วยโค้ดของ Google Cloud ที่เป็นของบุคคลที่หนึ่ง รวมถึงโค้ดของบุคคลที่สามที่เลือก คุณมีหน้าที่รับผิดชอบต่อความปลอดภัย การทดสอบ และประสิทธิภาพของโค้ด รวมถึงการเติมโค้ด การสร้าง หรือการวิเคราะห์ที่ Gemini มอบให้คุณ

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ Google จัดการพรอมต์ของคุณ

3. ตัวเลือกในการทดสอบพรอมต์

หากต้องการเปลี่ยนพรอมต์ที่มีอยู่ คุณมีตัวเลือกหลายอย่าง

Vertex AI Studio เป็นส่วนหนึ่งของแพลตฟอร์ม Vertex AI ของ Google Cloud ซึ่งออกแบบมาโดยเฉพาะเพื่อลดความซับซ้อนและเร่งการพัฒนาและการใช้โมเดล Generative AI

Google AI Studio เป็นเครื่องมือบนเว็บสำหรับการสร้างต้นแบบและการทดลองใช้การออกแบบพรอมต์และ Gemini API

เว็บแอป Google Gemini (gemini.google.com) เป็นเครื่องมือบนเว็บที่ออกแบบมาเพื่อช่วยให้คุณสำรวจและใช้ประโยชน์จากความสามารถของโมเดล AI ของ Google Gemini

4. ดาวน์โหลดและตรวจสอบแอปพลิเคชัน

เปิดใช้งาน Cloud Shell โดยคลิกไอคอนทางด้านขวาของแถบค้นหา

3e0c761ca41f315e.png

หากระบบแจ้งให้ให้สิทธิ์ ให้คลิก "ให้สิทธิ์" เพื่อดำเนินการต่อ

6356559df3eccdda.png

ในเทอร์มินัล ให้เรียกใช้คำสั่งด้านล่างเพื่อโคลนที่เก็บ Git ในเครื่อง

git clone https://github.com/gitrey/calendar-app-lab
cd calendar-app-lab

เริ่ม "Cloud Shell Editor"

18ca8f879206a382.png

เปิดโฟลเดอร์ "calendar-app-lab"

7cef847802b51038.png

เริ่มเทอร์มินัลใหม่ใน Cloud Shell Editor

3336bea9c0e999b9.png

สภาพแวดล้อมของคุณควรมีลักษณะคล้ายกับภาพหน้าจอด้านล่าง

ae9475871b7d28a6.png

ในหน้าต่างแชทของ Gemini Code Assist ให้ส่งพรอมต์นี้

Don't suggest any changes. Explain this codebase to me.

ตัวอย่างเอาต์พุต

9839a7ff8c04f6a7.png

5. เริ่มแอปพลิเคชันในเครื่อง

ในหน้าต่างแชท ให้ส่งพรอมต์นี้

How do I set up a virtual environment and run this app locally?

เรียกใช้คำสั่งที่แนะนำในเทอร์มินัล

2d78c7ae8e2f0e5.png

ติดตั้งการอ้างอิง:

c300d4a00537fcb2.png

เริ่มแอปโดยทำดังนี้

f98f49a19f4015ed.png

คลิกลิงก์เพื่อดูตัวอย่างแอปพลิเคชัน

dc0a8b15a6c5386f.png

ตัวอย่างเอาต์พุต

e9f986d9088b4419.png

d2bb703195b4f99.png

6. การเพิ่มเอกสารประกอบ

ในหน้าต่างแชท ให้ส่งพรอมต์นี้

Add docstrings to all files

ตรวจสอบการเปลี่ยนแปลงที่แนะนำและยอมรับในแชทโดยทำดังนี้

d66c0d004ed65f87.png

ในหน้าต่างแชท ให้ส่งพรอมต์นี้

update .gitignore and add venv/* folder

ตามด้วยพรอมต์นี้

update .gitignore and add __pycache__ folder

ตัวอย่างเอาต์พุต

b06dae44f82cfa95.png

เปลี่ยนไปที่มุมมองการควบคุมแหล่งที่มาและตรวจสอบการเปลี่ยนแปลงที่คุณทำไปแล้ว

2c41f8b842573384.png

7. การเพิ่มการทดสอบหน่วย

เปิดไฟล์ calendar.py แล้วเลือก Gemini Code Assist >> Generate Unit Tests จากเมนูตามบริบท

6d21534189f9d18d.png

กด Enter ในหน้าต่างแชทของ Gemini Code Assist ตรวจสอบการเปลี่ยนแปลงและยอมรับ

dc0bac41d481fd34.png

ขอให้ Gemini บอกวิธีเรียกใช้การทดสอบ

How do I run the tests?

เรียกใช้คำสั่งที่แนะนำในเทอร์มินัลและตรวจสอบเอาต์พุต

9ce654d02951888.png

8. ตรวจสอบข้อบกพร่อง

เปิดไฟล์ calendar.py แล้วส่งพรอมต์นี้ในหน้าต่างแชท

Are there any bugs in the conversion logic?

ตรวจสอบการเปลี่ยนแปลงที่แนะนำและยอมรับในแชทโดยทำดังนี้

1ff4c84d70cd4a79.png

เรียกใช้ Unit Test อีกครั้งเพื่อตรวจสอบการเปลี่ยนแปลง

python3 test_calendar.py

หากเห็นข้อความแสดงข้อผิดพลาด คุณสามารถเลือกข้อผิดพลาดและเพิ่มลงในบริบทเพื่อให้ Gemini ช่วยแก้ปัญหาและแก้ไขได้

70e77fd68358a29a.png

9. UI การปรับโครงสร้าง

ในหน้าต่างแชท ให้ส่งพรอมต์ต่อไปนี้

Refactor UI to use bootstrap library

ตรวจสอบและยอมรับการเปลี่ยนแปลง

b5fd026c01c88d26.png

เริ่มแอปพลิเคชันหรือโหลดหน้าเว็บซ้ำหากแอปทำงานอยู่แล้ว

ในเทอร์มินัล ให้เริ่มแอปหากยังไม่ได้เรียกใช้

python3 main.py

โหลดหน้าเว็บซ้ำและตรวจสอบการเปลี่ยนแปลง

b52a709e902040e3.png

54664e527bcd9227.png

ลองส่งตัวเลขติดลบเพื่อยืนยันหน้าข้อผิดพลาด

f426b129e8aa64b7.png

604f16773e868060.png

10. ปรับโครงสร้างแบ็กเอนด์

ในหน้าต่างแชท ให้ส่งพรอมต์ต่อไปนี้

Store requests in memory and create a page to display conversion history. Add links on all pages to view the history.

ตรวจสอบและยอมรับการเปลี่ยนแปลงในแชทโดยทำดังนี้

8c1c2a1b79432490.png

เริ่มแอปพลิเคชันโดยเรียกใช้คำสั่งนี้ในเทอร์มินัล

python3 main.py

เข้าถึงแอปพลิเคชันและส่งคำขอหลายรายการก่อนตรวจสอบหน้าประวัติ

ac5639d18b341b0a.png

ตรวจสอบประวัติคำขอ Conversion

9ca680e193510640.png

11. บทสรุปสำหรับ Gemini Code Assist

ตอนนี้คุณได้เห็นแล้วว่า Gemini Code Assist ช่วยปรับปรุงงานพัฒนาต่างๆ ได้อย่างมาก ตั้งแต่การทำความเข้าใจโค้ดที่มีอยู่ไปจนถึงการสร้างเอกสาร การทดสอบหน่วย และการปรับโครงสร้างทั้งคอมโพเนนต์ UI และแบ็กเอนด์ ความสามารถในการทำความเข้าใจบริบทและให้คำแนะนำที่เกี่ยวข้องทำให้เป็นเครื่องมือที่มีประสิทธิภาพสำหรับนักพัฒนาซอฟต์แวร์

เราขอแนะนำให้คุณทดลองใช้ Gemini Code Assist ต่อไป ลองใช้พรอมต์ต่างๆ สำรวจความสามารถของโมเดลกับโค้ดเบสของคุณเอง และดูว่าโมเดลจะช่วยปรับปรุงเวิร์กโฟลว์การพัฒนาในแต่ละวันได้อย่างไร ยิ่งคุณโต้ตอบกับเครื่องมือนี้มากเท่าใด คุณก็จะยิ่งค้นพบศักยภาพของเครื่องมือในการเร่งประสิทธิภาพการทำงานและปรับปรุงคุณภาพของโค้ดได้มากขึ้นเท่านั้น

12. ยินดีด้วย

ยินดีด้วย คุณทำ Codelab เสร็จแล้ว

สิ่งที่เราได้พูดถึงไปแล้ว

  • การใช้ Gemini Code Assist สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์

ขั้นตอนต่อไปที่ทำได้

  • เราจะจัดเซสชันเชิงปฏิบัติเพิ่มเติมในเร็วๆ นี้

ล้างข้อมูล

โปรดลบโปรเจ็กต์ที่มีทรัพยากรหรือเก็บโปรเจ็กต์ไว้และลบทรัพยากรแต่ละรายการเพื่อหลีกเลี่ยงการเรียกเก็บเงินจากบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้

การลบโปรเจ็กต์

วิธีที่ง่ายที่สุดในการยกเลิกการเรียกเก็บเงินคือการลบโปรเจ็กต์ที่คุณสร้างขึ้นสำหรับบทแนะนำ

©2024 Google LLC สงวนลิขสิทธิ์ Google และโลโก้ของ Google เป็นเครื่องหมายการค้าของ Google LLC ชื่อบริษัทและผลิตภัณฑ์อื่นๆ ทั้งหมดอาจเป็นเครื่องหมายการค้าของบริษัทที่เป็นเจ้าของ