รายงาน
ภายในบุคลิกการเขียนโค้ดของ LLMs ชั้นนำ – ข้อมูลเชิงลึกจาก Sonar State of Code Report

ในเดือนสิงหาคม 2025 Sonar ได้เผยแพร่รายงาน State of Code study, The Coding Personalities of Leading LLMs – A State of Code Report การวิจัยนี้ไปไกลกว่าคะแนนความถูกต้อง โดยตรวจสอบว่าโมเดลภาษาขนาดใหญ่เขียนโค้ดจริงๆ อย่างไร และเปิดเผย “บุคลิกการเขียนโค้ด” ที่เป็นเอกลักษณ์สำหรับแต่ละโมเดล
การศึกษานี้ประเมิน Claude Sonnet 4, Claude 3.7 Sonnet, GPT-4o, Llama 3.2 90B และ OpenCoder-8B โดยใช้การกำหนดค่า Java มากกว่า 4,400 รายการ โดยใช้เครื่องมือวิเคราะห์แบบคงที่ของ Sonar ซึ่งเป็นเทคโนโลยีที่ได้รับการปรับปรุงมาเกิน 16 ปีผ่านแพลตฟอร์ม SonarQube Enterprise
จุดแข็งร่วมกัน
ทั้ง 5 โมเดลแสดงให้เห็นถึงความน่าเชื่อถือทางสัญลักษณ์ที่แข็งแกร่ง ซึ่งหมายความว่าโค้ดที่สร้างขึ้นมันสามารถคอมไพล์และรันสำเร็จในกรณีส่วนใหญ่ ซึ่งสะท้อนให้เห็นใน HumanEval scores ซึ่งเป็นการทดสอบมาตรฐานที่โมเดลถูกขอให้แก้ปัญหาการเขียนโค้ดและคำตอบของพวกมันจะถูกตรวจสอบอัตโนมัติสำหรับความถูกต้อง Claude Sonnet 4 เป็นโมเดลที่มีคะแนน HumanEval สูงสุด โดยมีคะแนน 95.57% และอัตรา Pass@1 ที่ 77.04% ซึ่งหมายความว่าความพยายามแรกของมันถูกต้องในมากกว่าสามในสี่ของกรณี Claude 3.7 Sonnet มีคะแนน 72.46%, GPT-4o 69.67%, Llama 3.2 61.47% และ OpenCoder-8B 60.43%
ผลงานนี้ยังคงแข็งแกร่งข้ามภาษาโปรแกรมมิ่งต่างๆ ซึ่งแสดงให้เห็นว่าโมเดลเหล่านี้กำลังให้เหตุผลผ่านปัญหาแทนที่จะพึ่งพาไวยากรณ์ที่จัดเก็บไว้เท่านั้น
จุดอ่อนร่วมกัน
ข้อบกพร่องที่น่าตกใจที่สุดคือการดูแลความปลอดภัยที่ไม่ดี Sonar วัด ช่องโหว่ระดับบล็อกเกอร์ ซึ่งเป็นประเภทของข้อบกพร่องที่รุนแรงที่สุด – ปัญหาด้านความปลอดภัยที่สามารถนำไปสู่การละเมิดหรือการประนีประนอมระบบได้โดยตรงหากถูกใช้ประโยชน์ ตัวอย่างเช่น โค้ดที่อนุญาตการเข้าถึงไฟล์แบบสุ่ม การฉีด SQL หรือคำสั่ง การตั้งรหัสผ่านแบบฮาร์ดโค้ด การเข้ารหัสที่ไม่ถูกต้อง หรือการยอมรับใบรับรองความน่าเชื่อถือที่ไม่น่าเชื่อถือ ช่องโหว่เหล่านี้พบได้บ่อยเกินไป: Claude Sonnet 4 มี 59.57% ของช่องโหว่ในระดับนี้ GPT-4o มี 62.5% และ Llama 3.2 มี 70.73% ซึ่งน่ากังวล
รายงานยังพบ การรั่วไหลของทรัพยากร ซึ่งเป็นประเภทของบั๊กที่โค้ดเปิดทรัพยากร – เช่น แฮนด์เลอร์ไฟล์ โซเก็ตเครือข่าย หรือการเชื่อมต่อฐานข้อมูล – แต่ล้มเหลวในการปิดมันอย่างเหมาะสม เมื่อเวลาผ่านไป การรั่วไหลเหล่านี้สามารถทำให้ทรัพยากรระบบหมดไป ส่งผลให้เกิดปัญหาด้านประสิทธิภาพหรือการพังทลาย Claude Sonnet 4 มีการละเมิด 54 ครั้ง Llama 3.2 มี 50 ครั้ง และ GPT-4o มี 25 ครั้ง
ในด้านการบำรุงรักษา ปัญหาส่วนใหญ่คือ กลิ่นโค้ด – รูปแบบที่ไม่ทำให้โปรแกรมล้มเหลวทันที แต่ทำให้การบำรุงรักษาเป็นไปได้ยากขึ้น และมีแนวโน้มที่จะเกิดบั๊กในอนาคต มากกว่า 90% ของปัญหาที่พบอยู่ในหมวดหมู่นี้ โดยมักเกี่ยวข้องกับโค้ดที่ไม่ได้ใช้ การตั้งชื่อที่ไม่ดี ความซับซ้อนที่มากเกินไป หรือการละเมิดแนวทางปฏิบัติด้านการออกแบบที่ดีที่สุด
บุคลิกที่แตกต่างกัน
จากส่วนผสมของจุดแข็งและจุดอ่อน Sonar ได้ระบุ “โปรไฟล์บุคลิก” ที่ชัดเจน
Claude Sonnet 4 ได้รับชื่อ “สถาปนิกอาวุโส” มันเขียนโค้ดที่ยาวที่สุด – 370,816 บรรทัดทั่วทั้งชุดการทดสอบ – โดยมีความซับซ้อนทางปัญญาสูง ซึ่งหมายความว่าเส้นทางตรรกะของมันยากต่อการติดตาม มันแสดงผลลัพธ์ที่ดี แต่มีแนวโน้มที่จะเกิดบั๊กที่ซับซ้อน เช่น การรั่วไหลของทรัพยากรและข้อผิดพลาดการทำงานร่วมกัน ซึ่งสามารถเกิดขึ้นได้เมื่อเส้นทางหลายเส้นทำงานร่วมกันในทางที่ไม่คาดคิด
OpenCoder-8B คือ “ผู้สร้างต้นแบบอย่างรวดเร็ว” โดยสร้างโค้ดที่สั้นและเน้นไปที่จุดประสงค์ – 120,288 บรรทัดทั้งหมด – แต่มีความหนาแน่นของปัญหาที่สูงที่สุด ความเร็วและความสั้นของมันทำให้เหมาะสำหรับการสร้างต้นแบบ แต่อันตรายต่อการผลิตหากไม่มีการตรวจสอบอย่างรอบคอบ
Llama 3.2 90B คือ “สัญญาที่ไม่สมบูรณ์” โดยให้ผลลัพธ์ปานกลาง แต่มีท่าทางด้านความปลอดภัยที่แย่ที่สุด โดยมีมากกว่า 70% ของช่องโหว่ถูกจัดประเภทเป็นระดับบล็อกเกอร์
GPT-4o คือ “นักประยุกต์ใช้งานที่มีประสิทธิภาพ” โดยสร้างสมดุลระหว่างฟังก์ชันและความซับซ้อน แต่บ่อยครั้งล้มเหลวในการ ข้อผิดพลาดการควบคุมการไหล – ข้อผิดพลาดในการลำดับของการดำเนินการซึ่งสามารถนำไปสู่ผลลัพธ์ที่ไม่ถูกต้องหรือโค้ดที่ถูกละเว้น
Claude 3.7 Sonnet คือ “ผู้สร้างต้นแบบที่สมดุล” โดยสร้างโค้ดที่ไม่ยาวเท่ากับรุ่นต่อๆ ไป แต่มีความหนาแน่นของคำอธิบายสูงสุด โดย 16.4% ซึ่งหมายความว่ามันอธิบายตรรกะของมันมากกว่าโมเดลอื่นๆ แม้ว่าจะมีการจัดทำเอกสารที่ดีกว่า แต่ยังคงมีช่องโหว่ระดับสูงที่สำคัญ
หนึ่งในผลการค้นพบที่น่าประหลาดใจที่สุดมาจากการเปรียบเทียบระหว่าง Claude Sonnet 4 และ Claude 3.7 แม้ว่า Sonnet 4 จะปรับปรุงอัตราการผ่านการทดสอบขึ้น 6.3% แต่เปอร์เซ็นต์ของบั๊กที่จัดว่าเป็นระดับบล็อกเกอร์เกือบจะเพิ่มขึ้นสองเท่า จาก 7.10% เป็น 13.71% ช่องโหว่ระดับบล็อกเกอร์ยังเพิ่มขึ้นจาก 56.03% เป็น 59.57% สิ่งนี้สอนให้เราเข้าใจว่าการปรับปรุงประสิทธิภาพสามารถมาพร้อมกับต้นทุนด้านความปลอดภัย
สรุป
รายงาน The Coding Personalities of Leading LLMs – A State of Code Report ของ Sonar ทำให้เห็นชัดเจนว่าคะแนนความถูกต้องเป็นเพียงส่วนหนึ่งของเรื่องราว การเข้าใจความเสี่ยงด้านความปลอดภัย การบำรุงรักษา และสไตล์การเขียนโค้ดมีความสำคัญไม่แพ้กับการรู้ว่าโมเดล “ถูกต้อง” บ่อยเพียงใด
บุคลิกที่แตกต่างกัน – ไม่ว่าจะเป็นสถาปนิก ผู้สร้างต้นแบบ นักประยุกต์ใช้งาน หรือผู้สร้างต้นแบบที่สมดุล – มีทั้งจุดแข็งและข้อเสีย การสรุปสำหรับนักพัฒนาและองค์กรคือ “เชื่อใจแต่ต้องตรวจสอบ” โดยการผสมผสานการช่วยเหลือการเขียนโค้ด AI กับการดูแลของมนุษย์ การทบทวนโค้ดอย่างละเอียด และการตรวจสอบความปลอดภัยอย่างเข้มงวด เพื่อให้แน่ใจว่าความเร็วและความสะดวกสบายไม่กระทบต่อความปลอดภัยหรือเสถียรภาพในระยะยาว












