สิ่งที่นักพัฒนาควรรู้เกี่ยวกับ Gemini in Android Studio
นับจากวันที่ Google เปิดตัว Generative AI ในชื่อ Gemini (เดิมชื่อว่า Bard) มาจนถึงตอนนี้นักพัฒนาแอนดรอยด์ก็สามารถใช้ Gemini in Android Studio เพื่อช่วยในการเขียนโค้ดให้รวดเร็วและมีประสิทธิภาพยิ่งขึ้นผ่าน Android Studio โดยตรง
แต่ก่อนจะเริ่มใช้ Gemini in Android Studio มาดูกันว่ามีอะไรบ้างที่นักพัฒนาควรรู้ก่อนจะเริ่มใช้งานเจ้า Generative AI ตัวนี้กัน
พร้อมให้ใช้งานใน Stable Release ล่าสุดแล้ว
ขอแค่เพียงใช้ Android Studio ที่เป็น Stable Release ล่าสุดก็สามารถใช้งาน Gemini in Android Studio ได้ในทันที หรือจะใช้งานบน Beta, Canary, หรือ Nightly ก็ได้เช่นกัน
รองรับการใช้งานในประเทศไทยแล้ว
ในปัจจุบันที่เขียนบทความนี้ Gemini in Android Studio เปิดให้บริการแค่ในบางประเทศเท่านั้น ซึ่งรวมไปถึงประเทศไทยด้วยเช่นกัน
กรณีที่นักพัฒนาอยู่ที่ประเทศอื่น สามารถตรวจสอบได้ที่ Gemini availability [Android Developers]
ต้องใช้ Google Account
การใช้งาน Gemini in Android Studio จะต้องเข้าใช้งานด้วย Google Account บน Android Studio ด้วยเสมอ
และถึงแม้ว่าจะเข้าใช้งานผ่าน Android Studio อยู่แล้ว แต่ก็ต้องให้สิทธิ์ในการใช้งาน Gemini ด้วยนะ
ใช้งานได้ฟรีในช่วงทดสอบ (Preview)
ในปัจจุบันที่เขียนบทความนี้ Gemini in Android Studio อยู่ในสถานะ Preview เพื่อให้นักพัฒนาแอนดรอยด์ทั่วโลกได้ลองใช้งานกัน ดังนั้นในระหว่างนี้จะยังไม่มีค่าใช้จ่ายสำหรับการใช้งาน
และในอนาคตจะมีค่าใช้บริการเท่าไรก็คงต้องติดตามกันต่อไป
ฟีเจอร์ที่มีให้ใช้งานใน Gemini in Android Studio
Chatbot
ฟีเจอร์หลักของ Gemini in Android Studio ที่จะเป็นหน้าต่างอยู่ฝั่งขวามือของ Android Studio เพื่อให้นักพัฒนาสามารถพิมพ์ Prompt ให้กับ Gemini ได้ทันที
AI Code Completion
Autocompletion ที่จะช่วยให้นักพัฒนาพิมพ์โค้ดได้ไวขึ้น ไม่ต้องพิมพ์โค้ดเองทั้งหมด เพราะ Gemini จะช่วยเดาโค้ดที่เรากำลังจะพิมพ์ขึ้นมาให้เลือก (เลือกด้วยการกดปุ่ม Tab)
ในการใช้งานฟีเจอร์นี้จะมีเงื่อนไขว่าต้องเปิดใช้งาน Context Awareness ในโปรเจคนั้น ๆ ด้วย เพื่อให้ Gemini in Android Studio อ่านและทำความเข้าใจโค้ดในโปรเจคเพื่อแสดง Autocompletion สำหรับโค้ดที่กำลังจะพิมพ์ได้
ฟีเจอร์อื่น ๆ
นอกจาก 2 ฟีเจอร์หลักแล้ว นักพัฒนาจะได้ใช้ Gemini in Android Studio ผ่านเมนูหรือเครื่องมือต่าง ๆ ใน Android Studio ที่ทีมพัฒนาทยอยเพิ่มเข้ามาให้ตลอดเวลา
ไม่ว่าจะเป็นเมนูจากการเลือกโค้ดแล้วคลิกขวาเพื่อช่วยสร้าง Prompt สำหรับโค้ดดังกล่าวในหน้าต่าง Chatbot ให้
หรือจะเป็นปุ่ม Ask Gemini สำหรับ Runtime Error บน Logcat ที่จะนำ Error Message ไปสร้างเป็น Prompt ในหน้าต่าง Chatbot เพื่อให้ Gemini ช่วยแนะนำวิธีแก้ไขปัญหา
และในอนาคตก็จะเพิ่มความสามารถของ Gemini in Android Studio เข้ามาเรื่อย ๆ เช่น เมนู Transform เพื่อให้ Gemini แก้โค้ดตามคำสั่งใน Prompt ได้ทันที (ยังไม่มีใน Android Studio Jellyfish 2023.3.1)
ข้อมูลของผู้ใช้ใน Gemini in Android Studio
ในการใช้งาน Gemini in Android Studio ข้อมูลทั้งหมดที่ใส่ลงใน Prompt หรือโปรเจคที่เปิดใช้งาน Context Awareness จะถูกส่งไปที่ Server ของ Gemini และอาจจะถูกตรวจสอบจากทีมงานภายในเพื่อใช้ในการปรับปรุงการทำงานของ Gemini และ Google Product อื่น ๆ ในอนาคต
และนั่นจึงหมายความว่า
- ไม่ควรใส่ข้อมูลสำคัญลงไปใน Prompt
- ไม่ควรเปิดใช้งาน Context Awareness กับโปรเจคที่มีความสำคัญ เช่น โปรเจคของบริษัท หรือโปรเจคที่ไม่ใช่ Open Source เป็นต้น
โดยข้อมูลเหล่านี้จะถูกเก็บไว้นานถึง 18 เดือน และไม่สามารถระบุที่มาของข้อมูลได้ จึงทำให้ยังไม่มีวิธีการลบข้อมูลเหล่านี้ออกในภายหลัง ดังนั้นควรใช้งานด้วยความระมัดระวังทุกครั้ง
การตั้งค่าเกี่ยวกับ Context Awareness
ในการเปิดใช้งาน Gemini in Android Studio ครั้งแรกจะบังคับให้ตั้งค่าเกี่ยวกับการใช้งาน Context Awareness ด้วย
ในกรณีที่เป็นการใช้งาน Android Studio ภายในบริษัท แนะนำให้เลือก "Do not use context from any project" เพื่อปิดการใช้งาน Context Awareness ไปเลย
เพราะคงไม่มีบริษัทไหนที่อยากให้โค้ดในโปรเจคของบริษัทหลุดออกไปสู่ภายนอก (ถ้าไม่ใช่ Open Source ที่บริษัทมีส่วนร่วม)
แต่ถ้าเป็นการใช้งาน Android Studio ในเครื่องส่วนตัวก็อาจจะเลือกเป็น "Ask to decide per project" เพื่อตั้งค่าการใช้งาน Context Awareness แยกแต่ละโปรเจคแทนก็ได้
และในกรณีที่เปิดใช้งาน Context Awareness และต้องการปิดใช้งาน ก็สามารถเข้าไปตั้งค่าในภายหลังได้ที่ Preferences > Tools > Gemini
ซ่อนบางไฟล์จาก Context Awareness ได้
ในกรณีที่ต้องการเปิดใช้งาน Context Awareness เพื่อใช้งาน AI Code Completion แต่ไม่ต้องการให้บางไฟล์ถูกอ่านโดย Gemini in Android Studio ก็สามารถสร้างไฟล์ .aiexclude
เพื่อกำหนดไฟล์เหล่านั้นในรูปแบบที่คล้ายกับ .gitignore
ได้เช่นกัน
คำตอบที่ได้อาจจะไม่ใช่คำตอบที่ถูกต้องเสมอไป
Gemini in Android Studio ก็เหมือนกับ Generative AI ตัวอื่น ๆ ที่มีปัญหา Hallucinate ได้ ทำให้มีโอกาสที่จะได้คำตอบที่ไม่ถูกต้องในบางครั้ง ดังนั้นผู้ใช้จึงควรตรวจสอบคำตอบที่ได้จากการใช้งาน Gemini in Android Studio ด้วยตัวเองเสมอ
สรุป
Gemini in Android Studio เป็นเครื่องมืออีกตัวหนึ่งที่น่าสนใจในยุคเริ่มต้นของ Generative AI ที่ถึงแม้ว่าตอนนี้จะยังไม่ได้มีลูกเล่นหรือจุดเด่นที่แตกต่างไปจากหลาย ๆ ตัวที่มีอยู่ในตลาดมากนัก แต่ด้วยการที่ Gemini ถูกพัฒนาโดย Google จึงมีโอกาสที่จะถูกพัฒนาให้ใช้งานร่วมกับ Android Studio ได้อย่างมีประสิทธิภาพมากขึ้นในอนาคต
แต่ในขณะเดียวกันก็ยังไม่มีข้อมูลเรื่องค่าใช้บริการและการใช้งานในระดับองค์กร ซึ่งก็ต้องคอยติดตามกันต่อไปครับ