แชร์

7 พ.ย. 2024

การเพิ่มประสิทธิภาพผู้ช่วยการเขียนโค้ด AI ด้วยบริบทแบบยาวของโมเดล Gemini

Beyang Liu

Sourcegraph

Paige Bailey

วิศวกรประสบการณ์ของนักพัฒนาซอฟต์แวร์ AI

Vishal Dharmadhikari

วิศวกรโซลูชันผลิตภัณฑ์

รูปภาพหลักของ Showcase ของ Sourcegraph

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

เราได้ร่วมมือกับ Sourcegraph ซึ่งเป็นผู้สร้างผู้ช่วยเขียนโค้ด AI ของ Cody ที่รองรับ LLM เช่น Gemini 1.5 Pro และ Flash เพื่อสำรวจศักยภาพของหน้าต่างบริบทแบบยาวในสถานการณ์การเขียนโค้ดในชีวิตจริง การที่ Sourcegraph มุ่งเน้นการผสานรวมการค้นหาและข้อมูลเชิงลึกเกี่ยวกับโค้ดเข้ากับการสร้างโค้ด AI และการทำให้ Cody ใช้งานได้สำเร็จในองค์กรที่มีฐานโค้ดขนาดใหญ่และซับซ้อน เช่น Palo Alto Networks และ Leidos ทำให้ Sourcegraph เป็นพาร์ทเนอร์ที่เหมาะสําหรับการสำรวจนี้

แนวทางและผลลัพธ์ของ Sourcegraph

Sourcegraph เปรียบเทียบประสิทธิภาพของ Cody ที่มีหน้าต่างบริบทขนาด 1 ล้านโทเค็น (โดยใช้ Gemini 1.5 Flash ของ Google) กับเวอร์ชันที่ใช้งานจริง การเปรียบเทียบโดยตรงนี้ช่วยให้บริษัทแยกประโยชน์ของบริบทแบบขยายได้ โดยมุ่งเน้นที่การตอบคำถามทางเทคนิค ซึ่งเป็นงานที่สำคัญสำหรับนักพัฒนาซอฟต์แวร์ที่ทำงานกับโค้ดเบสขนาดใหญ่ พวกเขาใช้ชุดข้อมูลของคำถามที่ท้าทายซึ่งต้องใช้ความเข้าใจโค้ดอย่างละเอียด

ผลลัพธ์ที่ได้นั้นน่าทึ่ง ดัชนีชี้วัดหลัก 3 รายการของ Sourcegraph ได้แก่ การจําเป็นในการช่วยนึกถึง การจําเป็นในการกระชับ และประโยชน์ แสดงให้เห็นถึงการปรับปรุงที่สําคัญเมื่อใช้บริบทที่ยาวขึ้น



  • การจําที่สําคัญ: สัดส่วนข้อเท็จจริงที่สําคัญในการตอบกลับเพิ่มขึ้นอย่างมาก

  • ความกระชับที่จำเป็น: อัตราส่วนของข้อเท็จจริงที่จำเป็นซึ่งปรับตามความยาวของคำตอบก็ดีขึ้นเช่นกัน ซึ่งบ่งบอกถึงคำตอบที่เกี่ยวข้องและกระชับมากขึ้น

  • ความเป็นประโยชน์: คะแนนความเป็นประโยชน์โดยรวมซึ่งปรับตามความยาวคำตอบเพิ่มขึ้นอย่างมาก ซึ่งบ่งบอกถึงประสบการณ์ที่ใช้งานง่ายยิ่งขึ้น

ข้อความแสดงแทนสำหรับกราฟแท่งแสดงการปรับปรุงคุณภาพระหว่าง Code Base กับ Cody ด้วย Gemini 1.5 Flash

นอกจากนี้ การใช้โมเดลบริบทแบบยาวยังช่วยลดอัตราการหลอนโดยรวม (การสร้างข้อมูลที่ไม่เป็นความจริง) ลงอย่างมาก อัตราภาพหลอนลดลงจาก 18.97% เป็น 10.48% ซึ่งถือเป็นการปรับปรุงความแม่นยำและความน่าเชื่อถืออย่างมาก

กราฟแท่งแสดงความแตกต่างของอัตราภาพหลอนระหว่างฐานโค้ดกับ Cody ที่มี Gemini 1.5 Flash

ข้อเสียและทิศทางในอนาคต

แม้ว่าบริบทแบบยาวจะมีประโยชน์มาก แต่ก็มีข้อเสียอยู่ เวลาในการรับโทเค็นแรกจะเพิ่มขึ้นตามความยาวของบริบท เพื่อลดปัญหานี้ Sourcegraph จึงได้ใช้กลไกการอ่านล่วงหน้าและสถาปัตยกรรมโมเดลบริบทแบบเป็นชั้นสําหรับการแคชสถานะการดําเนินการของโมเดล เมื่อใช้โมเดลบริบทแบบยาวของ Gemini 1.5 Flash และ Pro นี้ จะช่วยเพิ่มประสิทธิภาพเวลาในการรับโทเค็นแรกจาก 30-40 วินาทีเป็นประมาณ 5 วินาทีสำหรับบริบทขนาด 1 MB ซึ่งเป็นการปรับปรุงที่ดีมากสำหรับการสร้างโค้ดแบบเรียลไทม์และความช่วยเหลือด้านเทคนิค

การทำงานร่วมกันนี้แสดงให้เห็นถึงศักยภาพในการปฏิวัติของโมเดลบริบทแบบยาวในการปฏิวัติความเข้าใจและการสร้างโค้ด เรายินดีที่ได้เป็นพาร์ทเนอร์กับบริษัทอย่าง Sourcegraph เพื่อปลดล็อกแอปพลิเคชันและรูปแบบที่สร้างสรรค์มากขึ้นด้วยหน้าต่างบริบทขนาดใหญ่

หากต้องการเจาะลึกวิธีการประเมิน ข้อมูลเปรียบเทียบ และการวิเคราะห์โดยละเอียดของ Sourcegraph รวมถึงดูตัวอย่างประกอบ โปรดอ่านบล็อกโพสต์แบบเจาะลึก