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



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

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

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

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

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

พรอมต์ให้ลองใช้
- อธิบาย 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 ได้รับการฝึกด้วยโค้ดของ Google Cloud ที่เป็นบุคคลที่หนึ่ง รวมถึงโค้ดของบุคคลที่สามที่เลือก คุณเป็นผู้รับผิดชอบด้านความปลอดภัย การทดสอบ และประสิทธิภาพของโค้ด รวมถึงการเติมโค้ด การสร้าง หรือการวิเคราะห์ที่ Gemini มอบให้คุณ
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ Google จัดการพรอมต์ของคุณ
3. ตัวเลือกในการทดสอบพรอมต์
หากต้องการเปลี่ยนพรอมต์ที่มีอยู่ คุณมีตัวเลือกหลายอย่างในการดำเนินการดังกล่าว
Vertex AI Studio เป็นส่วนหนึ่งของแพลตฟอร์ม Vertex AI ของ Google Cloud ซึ่งออกแบบมาโดยเฉพาะเพื่อลดความซับซ้อนและเร่งการพัฒนาและการใช้โมเดล Generative AI
Google AI Studio เป็นเครื่องมือบนเว็บสำหรับการสร้างต้นแบบและการทดลองใช้การออกแบบพรอมต์และ Gemini API
- เว็บแอป Gemini (gemini.google.com)
เว็บแอป Google Gemini (gemini.google.com) เป็นเครื่องมือบนเว็บที่ออกแบบมาเพื่อช่วยให้คุณสำรวจและใช้ประโยชน์จากความสามารถของโมเดล AI ของ Gemini จาก Google
- แอป Google Gemini บนอุปกรณ์เคลื่อนที่สำหรับ Android และแอป Google ใน iOS
4. ดาวน์โหลดและตรวจสอบแอปพลิเคชัน
เปิดใช้งาน Cloud Shell โดยคลิกไอคอนทางด้านขวาของแถบค้นหา

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

ในเทอร์มินัล ให้เรียกใช้คำสั่งด้านล่างเพื่อโคลนที่เก็บ Git ในเครื่อง
git clone https://github.com/gitrey/calendar-app-lab
cd calendar-app-lab
เริ่ม "Cloud Shell Editor"

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

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

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

ในหน้าต่างแชทของ Gemini Code Assist ให้ส่งพรอมต์นี้
Don't suggest any changes. Explain this codebase to me.
ตัวอย่างเอาต์พุต

5. เริ่มแอปพลิเคชันในเครื่อง
ในหน้าต่างแชท ให้ส่งพรอมต์นี้
How do I set up a virtual environment and run this app locally?
เรียกใช้คำสั่งที่แนะนำในเทอร์มินัล

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

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

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

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


6. การเพิ่มเอกสาร
ในหน้าต่างแชท ให้ส่งพรอมต์นี้
Add docstrings to all files
ตรวจสอบการเปลี่ยนแปลงที่แนะนำและยอมรับในแชทโดยทำดังนี้

ในหน้าต่างแชท ให้ส่งพรอมต์นี้
update .gitignore and add venv/* folder
ตามด้วยพรอมต์นี้
update .gitignore and add __pycache__ folder
ตัวอย่างเอาต์พุต

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

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

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

ถาม Gemini เกี่ยวกับวิธีเรียกใช้การทดสอบ
How do I run the tests?
เรียกใช้คำสั่งที่แนะนำในเทอร์มินัลและตรวจสอบเอาต์พุต

8. ตรวจสอบข้อบกพร่อง
เปิดไฟล์ calendar.py แล้วส่งพรอมต์นี้ในหน้าต่างแชท
Are there any bugs in the conversion logic?
ตรวจสอบการเปลี่ยนแปลงที่แนะนำและยอมรับในแชทโดยทำดังนี้

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

9. รีแฟกเตอร์ UI
ในหน้าต่างแชท ให้ส่งพรอมต์นี้
Refactor UI to use bootstrap library
ตรวจสอบและยอมรับการเปลี่ยนแปลงโดยทำดังนี้

เริ่มแอปพลิเคชันหรือโหลดหน้าเว็บซ้ำหากแอปกำลังทำงานอยู่
ในเทอร์มินัล ให้เริ่มแอปหากยังไม่ได้เปิดใช้งาน
python3 main.py
โหลดหน้าเว็บซ้ำและตรวจสอบการเปลี่ยนแปลง


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


10. รีแฟกเตอร์แบ็กเอนด์
ในหน้าต่างแชท ให้ส่งพรอมต์นี้
Store requests in memory and create a page to display conversion history. Add links on all pages to view the history.
ตรวจสอบและยอมรับการเปลี่ยนแปลงในแชทโดยทำดังนี้

เริ่มแอปพลิเคชันโดยเรียกใช้คำสั่งนี้ในเทอร์มินัล
python3 main.py
เข้าถึงแอปพลิเคชันและส่งคำขอหลายรายการก่อนตรวจสอบหน้าประวัติ

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

11. บทสรุปสำหรับ Gemini Code Assist
ตอนนี้คุณได้เห็นแล้วว่า Gemini Code Assist ช่วยปรับปรุงงานพัฒนาต่างๆ ได้อย่างมาก ตั้งแต่การทำความเข้าใจโค้ดที่มีอยู่ไปจนถึงการสร้างเอกสาร การทำ Unit Test และการปรับโครงสร้างทั้งคอมโพเนนต์ UI และแบ็กเอนด์ ความสามารถในการทำความเข้าใจบริบทและให้คำแนะนำที่เกี่ยวข้องทำให้เป็นเครื่องมือที่มีประสิทธิภาพสำหรับนักพัฒนาซอฟต์แวร์
เราขอแนะนำให้คุณทดลองใช้ Gemini Code Assist ต่อไป ลองใช้พรอมต์ต่างๆ สำรวจความสามารถของโมเดลกับโค้ดเบสของคุณเอง และดูว่าโมเดลจะช่วยปรับปรุงเวิร์กโฟลว์การพัฒนาในแต่ละวันได้อย่างไร ยิ่งคุณโต้ตอบกับเครื่องมือนี้มากเท่าใด คุณก็จะยิ่งค้นพบศักยภาพของเครื่องมือในการเร่งประสิทธิภาพการทำงานและปรับปรุงคุณภาพโค้ดได้มากขึ้นเท่านั้น
12. ยินดีด้วย
ยินดีด้วย คุณทำ Codelab เสร็จแล้ว
สิ่งที่เราได้พูดถึงไปแล้ว
- การใช้ Gemini Code Assist สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์
ขั้นตอนต่อไปที่ทำได้
- เราจะจัดเซสชันแบบลงมือปฏิบัติเพิ่มเติมในเร็วๆ นี้
ล้างข้อมูล
โปรดลบโปรเจ็กต์ที่มีทรัพยากรออก หรือเก็บโปรเจ็กต์ไว้และลบทรัพยากรแต่ละรายการออก เพื่อไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้
การลบโปรเจ็กต์
วิธีที่ง่ายที่สุดในการยกเลิกการเรียกเก็บเงินคือการลบโปรเจ็กต์ที่คุณสร้างขึ้นสำหรับบทแนะนำ
©2024 Google LLC สงวนลิขสิทธิ์ Google และโลโก้ของ Google เป็นเครื่องหมายการค้าของ Google LLC ชื่อบริษัทและผลิตภัณฑ์อื่นๆ ทั้งหมดอาจเป็นเครื่องหมายการค้าของบริษัทที่เป็นเจ้าของ