WeOmni

Introduction to GitHub Copilot: ให้ AI ช่วยเขียนโค้ด

อะไรคือ Copilot

GitHub Copilot เป็นระบบเขียนโปรแกรมกึ่งอัตโนมัติ ทำงานอิงจากโค้ดหรือสิ่งที่เราอธิบายความต้องการ พัฒนาโดย GitHub ร่วมกับเทคโนโลยีหลักด้าน AI จาก OpenAI ที่มีประวัติการพัฒนา AI อันโด่งดัง อย่างเช่น ChatGPT ที่มีศักยภาพสูงในการช่วยเหลือตอบคำถาม หรือแนะนำการเขียนต่างๆ รวมถึงช่วยให้นักพัฒนาสามารถเขียนโค้ด
Copilot ถูกพัฒนาในแนวคิดว่าเป็น ‘AI pair programmer,’ ‘AI assistant,’ หรือ ‘Copilot’ คือตั้งใจให้มาเป็นผู้ช่วยโปรแกรมเมอร์นั่นเอง

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

สำหรับการใช้ GitHub Copilot นี้ สามารถใช้ผ่าน IDE ต่าง ๆ เช่น Visual Studio, Visual Studio Code, Neovim, และ JetBrains IDEs (IntelliJ, PyCharm, WebStorm, เป็นต้น) รวมถึงรองรับภาษาโปรแกรมมิ่งหลายภาษา เช่น Java, PHP, Python, JavaScript, Ruby, Go, C#, หรือ C++ โดยที่ไม่จำเป็นต้องทำผ่านหน้า GitHub ในการใช้ Copilot เสมอไป เป็นอีกหนึ่งเครื่องมือที่ช่วยให้นักพัฒนาทำงานได้อย่างมีประสิทธิภาพ

ตัวอย่าง IDE ที่รองรับกับ GitHub Copilot

ติดตั้ง Copilot

  • ทำการติดตั้ง Github Copilot เข้าใน IDE ที่ท่านใช้งานก่อน โดยในกรณีของผู้เขียนนั้น จะใช้ Visual Studio Code กับโค้ดด้วยภาษา Golang

  • เมื่อติดตั้งเสร็จเรียบร้อย จะปรากฏไอคอนมุมล่าง Copilot เท่านี้ก็พร้อมใช้งานแล้ว
  • Github Copilot นั้นเป็นส่วนเสริมของ Github ที่มีการคิดเงิน (Subscription)
    แต่เราสามารถทดลองใช้บริการฟรี 30 วัน โดยท่านต้องมี Account ของ Github (ฟรี) แล้วสมัครเปิดใช้ Copilot ให้เรียบร้อยเสียก่อน
    (วิธีการเปิดใช้ Copilot คลิก )
  • หลังจากนั้น Log-In ตัว Account ของ Github ที่สมัคร Copilot บน IDE ของท่านด้วย ID ในข้อ 3

เริ่มลองใช้ Copilot

Copilot จะทำงานอยู่เบื้องหลังตลอดเวลา เราสามารถพิมพ์ Comment เพื่อเรียกใช้งาน Copilot อย่างเจาะจง หรือรอดูที่ Copilot แนะนำ โดยระหว่างที่ท่านทำการ Coding ไประยะหนึ่ง Copilot อาจแนะนำ Code มา โดยจะแสดงเป็นสีเทาให้ ซึ่งจะแนะนำได้ทั้งในรูปแบบรายบรรทัด (Individual lines) หรือมาเป็นก้อนฟังก์ชั่น (Whole functions) เลยทีเดียว ว่าแล้วก็มาลองกันเลย

ในตัวอย่างนี้ ผู้เขียนจะทดลองสร้างฟังก์ชั่นการสุ่มตัวเลขกัน (Random Number)

จะเห็นได้ว่าระหว่างพิมพ์ Code จะมีก้อน text สีเทาๆ นั่นคือสิ่งที่ Copilot พยายาม Suggest แนะนำและช่วยเราเขียน หากเราจะเอาสิ่งที่ Copilot แนะนำ ให้กด Tab บนคีย์บอร์ด

เราจะมาลองเล่นกันอีกสักหนึ่งฟังก์ชั่นดู ว่า Copilot จะรู้จัก Palindrome มั้ยเอ่ย ?

หากกรณี Copilot มีตัวเลือกจะแนะนำเรามากกว่า 1 ชุด เราก็สามารถเลือกดูได้ ว่าจะเลือก code ตัวไหนที่ระบบแนะนำ ออกมาใช้ โดยกดคีย์ลัดตามภาพ

คีย์ลัดกดดูคำแนะนำ ขึ้นกับระบบปฏิบัติการที่เลือกใช้

เรามาลองดู Copilot ช่วยเขียนทั้งในแบบ individual line และ multi line กัน

ในส่วนความสามารถของ Copilot ยังเข้ามาช่วยมีอะไรอีกมากเลย ทั้งการช่วยเขียน Query, Unit test, Model, Review code ฯลฯ แต่เกรงว่าจะยาวไปสำหรับบทความทำการแนะนำให้รู้จักนี้ เอาไว้ทีมงานจะมาเล่าต่อกับ Tool ช่วยเหลือโปรแกรมเมอร์นี้ในโอกาสถัดไป

 

ติดตามข้อมูลข่าวสารและกิจกรรมของเราได้ที่ช่องทาง Facebook FanpageLinkedin หรือดูข้อมูลและติดต่อรับคำปรึกษาได้ที่เว็บไซต์ของเรา