1. ภาพรวม
แล็บนี้มุ่งเน้นการใช้ประโยชน์จาก Gemini CLI ซึ่งเป็นเอเจนต์ที่ทำงานด้วยระบบ AI แบบโอเพนซอร์สใน Google Cloud คุณจะได้เรียนรู้วิธีใช้ Gemini CLI สำหรับงานต่างๆ รวมถึงการทำความเข้าใจฐานของโค้ดที่มีอยู่, การสร้างเอกสารและการทำ Unit Test, การปรับโครงสร้างทั้งคอมโพเนนต์ UI และแบ็กเอนด์ของเว็บแอปพลิเคชัน Python
สิ่งที่คุณจะได้เรียนรู้
ในแล็บนี้ คุณจะได้เรียนรู้วิธีทำสิ่งต่อไปนี้
- วิธีใช้ Gemini CLI สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์
ข้อกำหนดเบื้องต้น
- แล็บนี้ถือว่าคุณคุ้นเคยกับสภาพแวดล้อมของ 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

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

5. การแนะนำ Gemini CLI
Gemini CLI คือ AI Agent แบบโอเพนซอร์สที่ผสานรวมกับโมเดล Gemini ของ Google Cloud ซึ่งช่วยให้นักพัฒนาซอฟต์แวร์ทำงานต่างๆ ได้โดยตรงจากเทอร์มินัล เช่น ทำความเข้าใจโค้ดเบส สร้างเอกสารและการทดสอบหน่วย และปรับโครงสร้างโค้ด ประโยชน์หลักของ Gemini CLI คือความสามารถในการปรับปรุงเวิร์กโฟลว์การพัฒนาโดยนำความสามารถของ Generative AI มาไว้ในสภาพแวดล้อมบรรทัดคำสั่งของนักพัฒนาซอฟต์แวร์โดยตรง ซึ่งจะช่วยลดการสลับบริบทและเพิ่มประสิทธิภาพการทำงาน
ขั้นตอนนี้ในการตั้งค่าตัวแปรสภาพแวดล้อมไม่จำเป็นสำหรับสภาพแวดล้อม Qwiklabs ทำต่อในขั้นตอนถัดไป
ในสภาพแวดล้อมในเครื่อง หากคุณใช้ใบอนุญาต Code Assist แบบชำระเงินจากองค์กร อย่าลืมตั้งค่าโปรเจ็กต์ Google Cloud ในเทอร์มินัล รายละเอียดเพิ่มเติม
export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_NAME"
ตรวจสอบว่าคุณอยู่ในรูทของโฟลเดอร์โปรเจ็กต์โดยทำดังนี้
cd ~/calendar-app-lab
เริ่ม Gemini CLI ในหน้าต่างเทอร์มินัลโดยทำดังนี้
gemini
สภาพแวดล้อมของคุณควรมีลักษณะคล้ายกับภาพหน้าจอด้านล่าง
หากทำตามขั้นตอนในสภาพแวดล้อมในเครื่อง คุณจะเปิดใช้การผสานรวมกับ IDE ได้
คุณเปลี่ยนการตั้งค่านี้ได้ทุกเมื่อโดยเรียกใช้ /ide disable | enable

หากคุณกำลังใช้งาน Lab ในสภาพแวดล้อม Qwiklabs ให้เลือก "Use Cloud Shell user credentials"
หรือตรวจสอบสิทธิ์ Gemini CLI โดยเรียกใช้คำสั่งต่อไปนี้และเลือก "Login with Google"
/auth
หลังจากรีสตาร์ท CLI แล้ว ระบบจะแจ้งให้คุณให้สิทธิ์แอปพลิเคชันโดยทำตามลิงก์ที่ระบุ

เปิดลิงก์และทำตามขั้นตอนเพื่อลงชื่อเข้าใช้ด้วยข้อมูลเข้าสู่ระบบของนักเรียน Qwiklabs 
คัดลอกรหัสยืนยันแล้วกลับไปที่เทอร์มินัลเพื่อดำเนินการให้เสร็จสมบูรณ์โดยวางรหัส
หากต้องการยืนยันวิธีการตรวจสอบสิทธิ์ ให้เรียกใช้คำสั่งต่อไปนี้
/about

6. การทำความเข้าใจฐานของโค้ด
คุณสามารถใช้ Gemini CLI เพื่อทำความเข้าใจฐานของโค้ดได้อย่างรวดเร็วโดยขอให้สรุปวัตถุประสงค์ของไฟล์หรือไดเรกทอรี และอธิบายฟังก์ชันที่ซับซ้อนหรือส่วนของโค้ด ซึ่งช่วยให้นักพัฒนาแอปเริ่มต้นใช้งานโปรเจ็กต์ใหม่ได้อย่างรวดเร็ว หรือทำความเข้าใจส่วนที่ไม่คุ้นเคยของโค้ดที่มีอยู่ได้โดยไม่ต้องสำรวจด้วยตนเองอย่างละเอียด
หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับฐานของโค้ด ให้ส่งพรอมต์ต่อไปนี้ใน Gemini CLI
Don't suggest any changes. Explain this codebase to me.
ตรวจสอบเอาต์พุต

7. เริ่มแอปพลิเคชันในเครื่อง
Gemini CLI ช่วยให้การเรียกใช้แอปพลิเคชัน Python ในเครื่องง่ายขึ้นอย่างมากด้วยการช่วยสร้างไฟล์กำหนดค่าที่จำเป็นโดยอัตโนมัติ เช่น requirements.txt หรือ Dockerfile พื้นฐาน นอกจากนี้ ยังเหมาะอย่างยิ่งสำหรับการจัดการการขึ้นต่อกันของ Python และการแก้ปัญหา เนื่องจากสามารถอธิบายข้อผิดพลาดในการติดตามได้อย่างรวดเร็วซึ่งเกิดจากแพ็กเกจที่ขาดหายไปหรือเวอร์ชันที่ขัดแย้งกัน และมักจะแนะนำคำสั่ง pip install ที่แม่นยำเพื่อแก้ไขปัญหา
หากต้องการเปิดแอปพลิเคชันในเครื่อง ให้ป้อนพรอมต์ต่อไปนี้ในเทอร์มินัล Gemini CLI
Run this app locally
ทำตามข้อความแจ้งเพื่อเริ่มสมัคร

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

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


8. การเพิ่มเอกสาร
Gemini CLI มีประสิทธิภาพในการจัดทำเอกสารและการแสดงความคิดเห็นโดยให้คุณสร้างสตริงเอกสารสำหรับฟังก์ชันหรือคลาสได้ทันที นอกจากนี้ คุณยังใช้ประโยชน์จากฟีเจอร์นี้เพื่อเพิ่มความคิดเห็นในบรรทัดที่อธิบายอย่างรวดเร็วไปยังบล็อกโค้ดที่ซับซ้อนหรือไม่คุ้นเคย ซึ่งจะช่วยปรับปรุงความชัดเจนและความสามารถในการบำรุงรักษาของโค้ดเบสได้อย่างมาก
หากต้องการเพิ่มความคิดเห็นในไฟล์ Python ทุกไฟล์ในแอปพลิเคชัน ให้ใช้เทอร์มินัล Gemini CLI แล้วป้อนพรอมต์ต่อไปนี้
Add docstrings to all files
อนุมัติการเปลี่ยนแปลงที่แนะนำ หากเปิดใช้การผสานรวม IDE คุณจะยอมรับและดำเนินการต่อได้โดยใช้ตัวควบคุม UI หรือกด Enter ในเทอร์มินัล นอกจากนี้ คุณยังเปิดใช้โหมดอนุมัติอัตโนมัติ(YOLO) ด้วย "ctrl+y" ได้ด้วย

อัปเดตไฟล์ .gitignore ด้วยพรอมต์ต่อไปนี้
update .gitignore and add __pycache__ folder
เปลี่ยนไปใช้มุมมองการควบคุมแหล่งที่มาและตรวจสอบการเปลี่ยนแปลงที่คุณทำไปแล้ว

9. การเพิ่มการทดสอบหน่วย
Gemini CLI เหมาะอย่างยิ่งสำหรับการเขียนการทดสอบหน่วยโดยช่วยให้นักพัฒนาซอฟต์แวร์สร้างฟังก์ชันการทดสอบตามลายเซ็นและตรรกะของฟังก์ชันที่มีอยู่ พร้อมด้วยการยืนยันเริ่มต้นและการตั้งค่าจำลอง อย่างไรก็ตาม นักพัฒนาซอฟต์แวร์ยังคงต้องตรวจสอบและยืนยันการทดสอบที่สร้างขึ้นเพื่อให้แน่ใจว่าครอบคลุมกรณีขอบทั้งหมดที่จำเป็นอย่างมีความหมาย ไม่ใช่แค่การดำเนินการตามเส้นทางที่เรียบง่าย
หากต้องการสร้างการทดสอบหน่วยโดยใช้พรอมต์ด้านล่าง ให้ทำดังนี้
Generate unit tests for @calendar.py
ยอมรับการเปลี่ยนแปลงหลังจากตรวจสอบแล้ว

ติดตั้งการอ้างอิงใหม่และเรียกใช้การทดสอบ Gemini CLI จะสังเกต แก้ไข และเรียกใช้โค้ดที่สร้างขึ้นอีกครั้งในลูปจนกว่าการทดสอบจะผ่านและโค้ดได้รับการตรวจสอบ

10. ตรวจสอบข้อบกพร่อง
Gemini CLI ช่วยตรวจสอบข้อบกพร่องในตรรกะได้โดยให้คุณป้อนพรอมต์เพื่อตรวจสอบและวิเคราะห์โค้ด Snippet ระบุข้อบกพร่องทางตรรกะที่อาจเกิดขึ้น ข้อผิดพลาดแบบออฟบายวัน หรือการจัดการแบบมีเงื่อนไขที่ไม่ถูกต้อง การอธิบายลักษณะการทำงานที่ต้องการของโค้ดและการขอให้ CLI ตรวจหาความคลาดเคลื่อนจะช่วยให้คุณตรวจพบข้อบกพร่องเล็กๆ น้อยๆ ได้อย่างรวดเร็วก่อนที่จะเรียกใช้โค้ด
หากต้องการตรวจสอบข้อบกพร่องในตรรกะ Conversion ให้ส่งพรอมต์ต่อไปนี้ใน Gemini CLI
Are there any bugs in the conversion logic? Check if negative numbers are handled properly.
ตรวจสอบการเปลี่ยนแปลงที่แนะนำและยอมรับในแชทโดยทำดังนี้

11. รีแฟกเตอร์ UI
Gemini CLI ช่วยในการปรับโครงสร้าง UI ได้อย่างมากด้วยการช่วยแปลรูปแบบ UI เก่า (เช่น คอมโพเนนต์คลาส) เป็นกระบวนทัศน์ฟังก์ชันที่ใหม่กว่าและทันสมัยกว่า (เช่น Hook ใน React) หรือแนะนำการปรับปรุงโครงสร้างเพื่อการบำรุงรักษาที่ดีขึ้น คุณสามารถใช้เพื่อวิเคราะห์และปรับโครงสร้างโค้ด UI ที่มีอยู่ให้เป็นคอมโพเนนต์ที่แยกเป็นโมดูลและนำกลับมาใช้ใหม่ได้มากขึ้น เพื่อให้มั่นใจว่าการออกแบบอินเทอร์เฟซจะสะอาดตาและเป็นมาตรฐานมากขึ้น
ปรับโครงสร้าง UI โดยใช้ไลบรารี Bootstrap โดยส่งพรอมต์ต่อไปนี้ไปยัง Gemini CLI
Refactor UI to use Bootstrap library
ตรวจสอบและยอมรับการเปลี่ยนแปลงโดยทำดังนี้

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


ใช้การจัดการข้อผิดพลาดเพื่อให้แน่ใจว่าระบบจะแสดงหน้าข้อผิดพลาดเมื่อเกิดปัญหา
Implement error handling to display an error page when issues occur.
โปรดรีเฟรชหน้าเว็บเพื่อดูข้อมูลอัปเดต
ส่งตัวเลขติดลบเพื่อยืนยันหน้าข้อผิดพลาด

12. รีแฟกเตอร์แบ็กเอนด์
Gemini CLI มีประสิทธิภาพในการปรับโครงสร้างแบ็กเอนด์โดยช่วยในการย้ายข้อมูลโค้ดเฟรมเวิร์กเดิมไปยังทางเลือกที่ทันสมัย หรือช่วยปรับโครงสร้างบริการแบบ Monolithic ให้เป็นคอมโพเนนต์ของ Microservice ที่จัดการได้ง่ายขึ้น โดยจะวิเคราะห์ตรรกะฝั่งเซิร์ฟเวอร์เพื่อแนะนํารูปแบบการค้นหาฐานข้อมูลที่ปรับปรุงแล้วหรือการออกแบบปลายทาง API ที่มีประสิทธิภาพมากขึ้น เพื่อให้มั่นใจว่าประสิทธิภาพและความสามารถในการปรับขนาดจะได้รับการรักษาหรือปรับปรุง
แก้ไขแบ็กเอนด์เพื่อบันทึกคำขอ Conversion ไว้ในหน่วยความจำ
Store requests in memory and create a page to display conversion history. Add links on all pages to view the history.
ตรวจสอบและยอมรับการเปลี่ยนแปลงในแชทโดยทำดังนี้

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

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

หากต้องการอัปเดตไฟล์ README.md ด้วยสถานะโค้ดเบสปัจจุบัน ให้ส่งพรอมต์นี้ผ่าน Gemini CLI
analyze README.md file and update it with latest codebase state
ตรวจสอบเอาต์พุต หากเปิดใช้การผสานรวม Cloud Shell คุณจะใช้ตัวควบคุม UI เพื่อเข้าถึงการเปลี่ยนแปลงหรือดำเนินการจากเทอร์มินัลได้
13. เครื่องมือในตัวของ Gemini CLI
Gemini CLI มีเครื่องมือในตัวที่โมเดล Gemini ใช้เพื่อโต้ตอบกับสภาพแวดล้อมในเครื่อง เข้าถึงข้อมูล และดำเนินการ เครื่องมือเหล่านี้จะช่วยเพิ่มความสามารถของ CLI ทำให้ CLI ทำได้มากกว่าการสร้างข้อความ และช่วยงานได้หลากหลาย
ส่งพรอมต์นี้ใน Gemini CLI เพื่อดูเครื่องมือที่พร้อมใช้งาน
/tools
ตรวจสอบเอาต์พุต

Gemini CLI จะเลือกเครื่องมือในตัวที่เหมาะสมที่สุดอย่างชาญฉลาดตามงานที่คุณระบุ ซึ่งช่วยให้สามารถดำเนินการที่ซับซ้อนได้โดยใช้ความเข้าใจในคำขอของคุณและฟังก์ชันที่มีอยู่ ดูข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือในตัว
14. คำสั่งเริ่มต้นของที่เก็บ Gemini CLI
Gemini CLI มีคำสั่งในการวิเคราะห์โปรเจ็กต์และสร้างไฟล์ GEMINI.md ที่ปรับแต่งแล้ว
หากต้องการสร้างไฟล์ GEMINI.md ให้ส่งพรอมต์ต่อไปนี้โดยใช้ Gemini CLI
/init
ตรวจสอบเอาต์พุต คำสั่งนี้จะสร้างไฟล์ GEMINI.md ซึ่งสรุปวัตถุประสงค์ เทคโนโลยี คำสั่งการสร้าง/เรียกใช้ และข้อตกลงในการพัฒนาของโปรเจ็กต์สำหรับบริบทในอนาคต
หากต้องการทราบว่าควรใส่คำสั่งหรือบริบทใดในไฟล์ GEMINI.md ของโปรเจ็กต์ จุดเริ่มต้นที่ดีคือการตรวจสอบไฟล์ GEMINI.md ที่อยู่ในgemini-cli ที่เก็บ
15. คำสั่งที่กำหนดเองของ Gemini CLI
คุณสามารถปรับปรุงเวิร์กโฟลว์การพัฒนาและรักษาความสอดคล้องได้โดยใช้คำสั่งที่กำหนดเองใน Gemini CLI คำสั่งเหล่านี้จะทำหน้าที่เป็นแป้นพิมพ์ลัดส่วนตัวสำหรับพรอมต์ที่คุณใช้บ่อยที่สุด คุณสามารถสร้างคำสั่งที่เฉพาะเจาะจงสำหรับโปรเจ็กต์เดียวหรือทำให้คำสั่งพร้อมใช้งานทั่วโลกในทุกโปรเจ็กต์
ที่เก็บมาพร้อมกับคำสั่งที่กำหนดเองหลายรายการซึ่งอยู่ในโฟลเดอร์ .gemini/commands
คำสั่งที่กำหนดเองเพื่อสร้างแผนภาพ
ส่งพรอมต์นี้ใน Gemini CLI เพื่อสร้างแผนภาพลำดับคำขอในรูปแบบ Mermaid
ยอมรับการเรียกใช้เครื่องมือ เช่น การสร้างโฟลเดอร์และการบันทึกไฟล์
/diagram:new request flow for this app
ตรวจสอบเอาต์พุต

หากต้องการดูตัวอย่างไดอะแกรม ให้ติดตั้งส่วนขยาย Mermaid Chart จาก Marketplace

เปิดไฟล์แล้วเลือกตัวอย่างจากเมนูตามบริบท


คำสั่งที่กำหนดเองเพื่อสร้างชุดสไลด์
ส่งพรอมต์นี้ใน Gemini CLI เพื่อสร้างชุดสไลด์ที่มีประเด็นสำคัญในรูปแบบ Marp
ยอมรับการเรียกใช้เครื่องมือ เช่น การสร้างโฟลเดอร์และการบันทึกไฟล์
/deck:new key points and details for this app
ตรวจสอบเอาต์พุต

ขั้นตอนนี้ใช้กับ Cloud Shell ไม่ได้ เนื่องจากส่วนขยาย Marp ต้องมีการติดตั้งเว็บเบราว์เซอร์
ติดตั้งส่วนขยาย Marp สำหรับ VS Code จาก Marketplace เพื่อบันทึกชุดสไลด์

หรือคุณจะเปิดไฟล์ที่สร้างขึ้นในเครื่องมือแก้ไข แล้วเลือก "Marp: Export Slide Deck" จากจานสีคำสั่งก็ได้

คำสั่งที่กำหนดเองเพื่อวางแผนการติดตั้งใช้งานฟีเจอร์ใหม่
ส่งพรอมต์นี้ใน Gemini CLI เพื่อปรับโครงสร้าง UI
ยอมรับการเรียกใช้เครื่องมือ เช่น การสร้างโฟลเดอร์และการบันทึกไฟล์
/plan:new refactor UI to use Materialize CSS
ตรวจสอบเอาต์พุต

เริ่มกระบวนการปรับโครงสร้าง UI โดยส่งพรอมต์นี้ผ่าน Gemini CLI ตามแผนที่สร้างไว้ก่อนหน้านี้
ยอมรับการเรียกใช้เครื่องมือ เช่น การสร้างโฟลเดอร์และการบันทึกไฟล์ คุณเปิดใช้โหมดอนุมัติอัตโนมัติของเครื่องมือ(YOLO mode) ได้โดยใช้ "ctrl+y"
/plan:impl implement the plan to refactor the app

เริ่ม/โหลดแอปพลิเคชันซ้ำและตรวจสอบเอาต์พุต


16. โหมดไม่โต้ตอบของ Gemini CLI
เมื่อเรียกใช้ Gemini CLI ในโหมดที่ไม่โต้ตอบภายในไปป์ไลน์ CI/CD คุณจะทำให้งานต่างๆ เป็นไปโดยอัตโนมัติได้ด้วยการส่งพรอมต์และคำสั่งไปยัง CLI โดยตรงโดยไม่ต้องมีการแทรกแซงด้วยตนเอง ซึ่งช่วยให้ผสานรวมเข้ากับเวิร์กโฟลว์อัตโนมัติได้อย่างราบรื่นสำหรับการวิเคราะห์โค้ด การสร้างเอกสาร และงานพัฒนาอื่นๆ
เปิดเทอร์มินัลใหม่หรือปิดเซสชัน Gemini CLI ที่มีอยู่ แล้วเรียกใช้คำสั่งนี้
gemini -p "Explain the architecture of this codebase"
ตรวจสอบเอาต์พุต
หากงานของคุณต้องมีการอนุมัติเครื่องมือ คุณสามารถเปิดใช้โหมด YOLO ด้วยแฟล็ก -y
gemini -p "Explain the architecture of this codebase and save the file in the markdown format in the docs folder" -y
ตรวจสอบเอาต์พุต
การใช้ประโยชน์จาก Gemini CLI ในโหมดที่ไม่โต้ตอบจะช่วยเพิ่มความสามารถในการทำงานอัตโนมัติของไปป์ไลน์ CI/CD ได้อย่างมาก ซึ่งจะนำไปสู่รอบการพัฒนาที่มีประสิทธิภาพมากขึ้นและคุณภาพของโค้ดที่ดียิ่งขึ้น
17. โหมดเชลล์ของ Gemini CLI
แม้ว่า LLM จะจัดการงานที่ซับซ้อนได้ แต่คำสั่งโดยตรงจะมีประสิทธิภาพมากกว่าสำหรับการดำเนินการที่ไม่ซับซ้อน ! prefix ช่วยให้สลับระหว่างอินเทอร์เฟซบรรทัดคำสั่ง AI กับอินเทอร์เฟซบรรทัดคำสั่งแบบเดิมได้อย่างราบรื่น
!ls
ตรวจสอบเอาต์พุต กด Escape เพื่อออกจากโหมดเชลล์
18. การรองรับ MCP ของ Gemini CLI
Gemini CLI สามารถผสานรวมกับระบบของบุคคลที่สาม เช่น Jira, Confluence หรือ GitHub ผ่าน Model Context Protocol (MCP) ซึ่งทำได้ผ่านการผสานรวมเครื่องมือที่กำหนดเองของเซิร์ฟเวอร์ MCP ซึ่งช่วยให้ Gemini CLI สร้างหรืออัปเดตตั๋ว JIRA, ดึงข้อมูลจากหน้า Confluence, สร้างคำขอพุล ฯลฯ ได้
เรียกใช้คำสั่งนี้ในเทอร์มินัลเพื่อสร้างไฟล์กำหนดค่าหรือใช้โหมด Shell
echo '{
"mcpServers": {
"context7": {
"httpUrl": "https://mcp.context7.com/mcp"
}
}
}' > .gemini/settings.json
เริ่มเซสชัน Gemini CLI
gemini
ตรวจสอบเซิร์ฟเวอร์ MCP ที่กำหนดค่าแล้ว
/mcp
ตรวจสอบเอาต์พุต

ส่งพรอมต์เพื่อทดสอบเซิร์ฟเวอร์ MCP ที่กำหนดค่าไว้
use context7 tools to look up how to implement flex grid in react mui library
อนุมัติเครื่องมือและตรวจสอบเอาต์พุต

19. ตัวอย่างการกำหนดค่าเซิร์ฟเวอร์ MCP สำหรับสภาพแวดล้อมในเครื่อง
คุณกำหนดค่าเซิร์ฟเวอร์ MCP หลายเครื่องในสภาพแวดล้อมในพื้นที่ได้โดยใช้การกำหนดค่าต่อไปนี้
{
"mcpServers": {
"Snyk Security Scanner": {
"command": "snyk",
"args": [
"mcp",
"-t",
"stdio",
"--experimental"
],
"env": {}
},
"atlassian": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.atlassian.com/v1/sse"
]
},
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
},
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "******"
}
}
}
}
เซิร์ฟเวอร์ MCP ในการกำหนดค่านี้จะเปลี่ยน Agent ของ Gemini CLI ให้เป็นเครื่องมือพัฒนาและการทำงานร่วมกันแบบไดนามิกโดยให้สิทธิ์เข้าถึงระบบภายนอกที่ได้มาตรฐาน โดยเฉพาะอย่างยิ่ง เซิร์ฟเวอร์ Snyk Security Scanner ช่วยให้ตัวแทนตรวจสอบโค้ดและการอ้างอิงเพื่อหาช่องโหว่ได้โดยไม่ต้องออกจากพื้นที่ทํางานปัจจุบัน ขณะที่เซิร์ฟเวอร์ Atlassian จะเชื่อมต่อกับ Jira และ Confluence ซึ่งช่วยให้ Gemini CLI สร้าง ค้นหา และอัปเดตปัญหาหรือเอกสารโดยใช้ภาษาที่เป็นธรรมชาติได้ นอกจากนี้ เซิร์ฟเวอร์ Playwright ยังให้ความสามารถในการทำงานอัตโนมัติของเบราว์เซอร์แก่ Agent ซึ่งช่วยให้ Agent สามารถไปยังส่วนต่างๆ และโต้ตอบกับเว็บสำหรับงานต่างๆ เช่น การทดสอบหรือการดึงข้อมูล สุดท้าย เซิร์ฟเวอร์ Github จะให้สิทธิ์เข้าถึงแบบบริบทโดยตรงแก่เอเจนต์ในที่เก็บของคุณ ซึ่งจะช่วยให้เอเจนต์จัดการ PR จัดเรียงปัญหา และวิเคราะห์ฐานของโค้ดได้ ซึ่งจะช่วยลดการเปลี่ยนบริบทและเพิ่มประสิทธิภาพการทำงานในเวิร์กโฟลว์การพัฒนาทั้งหมดได้อย่างมาก
20. สรุปเกี่ยวกับ Gemini CLI
โดยสรุปแล้ว Gemini CLI โดดเด่นในฐานะ AI Agent แบบโอเพนซอร์สที่ทรงพลังและอเนกประสงค์ ซึ่งผสานรวมกับโมเดล Gemini ของ Google Cloud ได้อย่างราบรื่น จึงช่วยเพิ่มประสิทธิภาพการทำงานของนักพัฒนาซอฟต์แวร์ได้อย่างมาก ตลอดแล็บนี้ เราได้สำรวจความสามารถของโมเดลในการเพิ่มประสิทธิภาพงานพัฒนาทั่วไปต่างๆ ตั้งแต่การทำความเข้าใจฐานของโค้ดที่ซับซ้อนและการสร้างเอกสารและการทำ Unit Test ที่จำเป็น ไปจนถึงการปรับโครงสร้างภายในโค้ดทั้งคอมโพเนนต์ฟรอนท์เอนด์และแบ็กเอนด์ของเว็บแอปพลิเคชัน Python อย่างมีประสิทธิภาพ การใช้ประโยชน์จาก Gemini CLI ช่วยให้นักพัฒนาซอฟต์แวร์ลดการสลับบริบท ทำให้กระบวนการที่ทำซ้ำๆ เป็นอัตโนมัติ และส่งมอบโค้ดคุณภาพสูงขึ้นได้อย่างมีประสิทธิภาพมากขึ้นในท้ายที่สุด ความสามารถในการนำศักยภาพของ Generative AI มาใช้ในบรรทัดคำสั่งโดยตรงถือเป็นการปฏิวัติเวิร์กโฟลว์การพัฒนาอย่างแท้จริง
21. ยินดีด้วย
ยินดีด้วย คุณทำ Codelab เสร็จแล้ว
สิ่งที่เราได้พูดถึงไปแล้ว
- การใช้ Gemini CLI สำหรับงานทั่วไปของนักพัฒนาซอฟต์แวร์
ขั้นตอนต่อไปที่ทำได้
- เราจะจัดเซสชันแบบลงมือปฏิบัติเพิ่มเติมในเร็วๆ นี้
ล้างข้อมูล
โปรดลบโปรเจ็กต์ที่มีทรัพยากรออก หรือเก็บโปรเจ็กต์ไว้และลบทรัพยากรแต่ละรายการออก เพื่อไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้
การลบโปรเจ็กต์
วิธีที่ง่ายที่สุดในการยกเลิกการเรียกเก็บเงินคือการลบโปรเจ็กต์ที่คุณสร้างขึ้นสำหรับบทแนะนำ
©2024 Google LLC สงวนลิขสิทธิ์ Google และโลโก้ของ Google เป็นเครื่องหมายการค้าของ Google LLC ชื่อบริษัทและผลิตภัณฑ์อื่นๆ ทั้งหมดอาจเป็นเครื่องหมายการค้าของบริษัทที่เป็นเจ้าของ