Verdict: เครื่องมือจัดการ Agent เน้นหลักฐานก่อนแก้บั๊ก
ทำความรู้จัก Verdict เฟรมเวิร์กโอเพนซอร์สจากแฮกกาธอน WeMakeDevs x TrueFoundry มุ่งเน้นการจำลองและพิสูจน์บั๊กด้วยหลักฐานเชิงประจักษ์

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- Verdict เปลี่ยนปัญหา GitHub issue ให้เป็นการทดสอบแบบจำกัดขอบเขต
- ไม่ใช่เครื่องมือสร้างแพทช์อัตโนมัติ แต่เน้นการเก็บหลักฐานก่อนแก้ไข
- แบ่งการทำงานเป็น 3 ส่วนหลักคือ Hunter, Surgeon และ Insurance
- สร้างขึ้นสำหรับงาน WeMakeDevs x TrueFoundry Agent Harness Hackathon
ปัญหาบั๊กที่เกิดขึ้นเป็นครั้งคราวหรือ flaky bug มักจบลงด้วยสองทางเลือกที่น่าหงุดหงิด ได้แก่ การระบุว่า "ไม่สามารถจำลองปัญหาได้ (cannot reproduce)" หรือการใส่แพทช์แก้ไขที่ไม่มีใครพิสูจน์ได้จริงว่าแก้ปัญหาได้ตรงจุด ระบบ Verdict จึงถูกพัฒนาขึ้นมาเพื่อแก้ปัญหานี้โดยเฉพาะ โดยเปลี่ยน GitHub issue ให้กลายเป็นกระบวนการตรวจสอบที่มีขอบเขตชัดเจน ทำการรันคำสั่งที่ได้รับอนุมัติซ้ำๆ ภายใต้เงื่อนไขที่กำหนด พร้อมทั้งจัดเก็บทุกการสังเกตการณ์ไว้อย่างครบถ้วน
เครื่องมือนี้ไม่ใช่ระบบสร้างแพทช์อัตโนมัติ (autonomous patch generator) แต่ทำหน้าที่เป็นฮาร์ดเนสของเอเจนต์ที่มุ่งเน้นการสร้างหลักฐานสำหรับขั้นตอนยากๆ ที่ต้องทำก่อนการเขียนโค้ดแก้ไข แม้โมเดลภาษาขนาดใหญ่ (LLM) จะสามารถอ่านสแต็กเทรซและเสนอคำอธิบายที่ดูน่าเชื่อถือได้อย่างรวดเร็ว แต่คำว่า "น่าเชื่อถือ" นั้นแตกต่างอย่างสิ้นเชิงกับการ "จำลองปัญหาได้จริง"

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
สถาปัตยกรรมของ Verdict ประกอบด้วยองค์ประกอบการทำงานที่สำคัญร่วมกัน ซึ่งช่วยให้การตรวจสอบมีความโปร่งใสและตรวจสอบย้อนกลับได้:
- Hunter: ค้นหาปัญหาเฉพาะภายในชุดเงื่อนไขและงบประมาณคำสั่งที่ผู้ดูแลระบบอนุมัติเท่านั้น บันทึกผลลัพธ์ทั้งหมดไม่ว่าจะสำเร็จ ล้มเหลว หรือบางส่วน
- Surgeon: จำกัดขอบเขตเงื่อนไขที่จำลองได้ให้แคบที่สุดเท่าที่บันทึกจะรองรับ โดยไม่มีการเขียนแพทช์โค้ดเอง
- Insurance: แปลงการจำลองปัญหาให้เป็นแผนถดถอย ทั้งชื่อการทดสอบ ฟิกซ์เจอร์ และการยืนยันข้อผิดพลาด
แนวคิดเบื้องหลัง Verdict สะท้อนให้เห็นถึงความท้าทายสำคัญในการนำ AI มาช่วยแก้โค้ด โดยในอุดมคติของการพัฒนาซอฟต์แวร์ ความแน่นอนไม่ใช่สิ่งที่สร้างได้ด้วยคำพูดหรือการคาดเดาของโมเดล แต่ต้องมาจากชุดข้อมูลหลักฐานที่สามารถทำซ้ำและตรวจสอบได้ในสภาพแวดล้อมจริง ซึ่งแนวทางนี้ช่วยลดความเสี่ยงที่ AI จะ hallucinate หรือสร้างโค้ดแก้ไขที่ดูเหมือนจะถูกแต่แฝงบั๊กใหม่ไว้ข้างหลัง
ในการทดสอบจริง Verdict สามารถจำลองปัญหา TrueForge issue #417 ได้สำเร็จ ซึ่งเป็นกรณีที่การลงทะเบียนสแนปชอตค้างอย่างไม่มีกำหนดเมื่อคำสั่งต้นทางไม่ตอบสนอง โดยใช้รันไทม์ที่ปักหมุดไว้ที่ @truefoundry/trueforge-core@0.1.4#DaytonaSandboxProvider และรันเงื่อนไขเปรียบเทียบระหว่างสถานะควบคุมและสถานะที่เกิดปัญหา ซึ่งให้หลักฐานที่หนักแน่นกว่าการรันล้มเหลวโดยไม่มีกลุ่มเปรียบเทียบ
ผลลัพธ์จากการตรวจสอบจะให้ค่าแฮช SHA-256 ที่สามารถนำไปตรวจสอบซ้ำได้เสมอ บันทึกทั้งหมดจะผูกโยงกับเซสชันของ TrueForge, เธรดของ Hunter, คอมมิตของรีโพสอรี และซอร์สบล็อกที่ใช้ร่วมกัน โมเดลทำหน้าที่รวบรวมข้อสังเกตผู้สมัครแต่ไม่มีอำนาจตัดสินว่าข้อสังเกตเหล่านั้นพิสูจน์อะไร เพื่อรักษาเส้นแบ่งระหว่างการสำรวจปัญหาของเอเจนต์กับการกล่าวอ้างข้อเท็จจริงของระบบ
โครงการนี้ถูกพัฒนาขึ้นสำหรับ WeMakeDevs x TrueFoundry Agent Harness Hackathon และเปิดให้ใช้งานภายใต้ใบอนุญาต MIT โดยมีชุดทดสอบรวมทั้งหมด 220 รายการครอบคลุมทั้งแพ็กเกจเอเจนต์ โปรโตคอล และเว็บ เป้าหมายสูงสุดของ Verdict ไม่ใช่การทำให้เอเจนต์ดูมีความมั่นใจ แต่เป็นการทำให้ความแน่นอนนั้นสามารถตรวจสอบและพิสูจน์ได้จริง
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น