PromptRobust (benchmark) (TH)

From Systems analysis Wiki
Jump to navigation Jump to search

PromptRobust (หรือที่รู้จักในชื่อ PromptBench) คือ benchmark แบบครอบคลุมสำหรับประเมินความทนทานของโมเดลภาษาขนาดใหญ่ (LLM) ต่อ การเปลี่ยนแปลง prompt แบบ adversarial ซึ่งหมายถึงการบิดเบือนเล็กน้อยในการกำหนดคำถามที่ไม่ได้เปลี่ยนความหมายของคำถามนั้น[1][2] benchmark นี้ถูกพัฒนาขึ้นในปี 2023 โดยกลุ่มนักวิจัย (Kaijie Zhu และคณะ) จาก Microsoft Research Asia[1] การเกิดขึ้นของ PromptRobust มีที่มาจากการสังเกตว่า LLM ในปัจจุบันมีความไวต่อรายละเอียดของการกำหนดคำถาม กล่าวคือแม้แต่การเปลี่ยนแปลงเล็กน้อย (เช่น การพิมพ์ผิดหรือการเปลี่ยนคำพูด) ก็สามารถส่งผลกระทบอย่างเห็นได้ชัดต่อคำตอบของโมเดล[2] benchmark นี้มีจุดมุ่งหมายเพื่อวัดช่องโหว่ดังกล่าวเชิงปริมาณ และส่งเสริมการพัฒนาวิธีการโต้ตอบกับ LLM ที่มีความน่าเชื่อถือมากยิ่งขึ้น

วิธีการประเมิน

ในกรอบการวิจัย PromptBench ได้สร้างชุดข้อมูลที่ประกอบด้วย prompt ที่ถูกดัดแปลงจำนวน 4,788 รายการ ซึ่งยังคงความหมายดั้งเดิมของคำถาม[3] prompt แบบ adversarial เหล่านี้ถูกสร้างขึ้นในสี่ระดับของความซับซ้อนในการเปลี่ยนแปลง[1]:

  • ระดับอักขระ: การแทรกการพิมพ์ผิด การแทนที่หรือสลับตัวอักษร (จำลองข้อผิดพลาดในการป้อนข้อมูลแบบสุ่ม)
  • ระดับคำ: การแทนที่คำบางคำด้วยคำพ้องความหมาย การเพิ่มคำ "รบกวน" หรือการเปลี่ยนแปลงคำศัพท์เล็กน้อยอื่น ๆ
  • ระดับประโยค: การเปลี่ยนคำพูดในโครงสร้างประโยค การเพิ่มหรือสลับส่วนของวลีโดยไม่เปลี่ยนหัวข้อโดยรวม
  • ระดับความหมาย: การกำหนดคำถามใหม่ในเชิงลึกโดยคงภารกิจเดิมไว้ (เช่น การกำหนดคำถามเดียวกันในรูปแบบต่าง ๆ)[1]

จุดประสงค์ของ "การโจมตี" ดังกล่าวคือการทดสอบว่าการเบี่ยงเบนเล็กน้อย (เช่น การพิมพ์ผิดแบบสุ่มหรือการใช้คำพูดที่มีความหมายเหมือนกัน) ส่งผลต่อความสามารถของโมเดลในการทำงานให้ถูกต้องอย่างไร ทั้งที่ตัวงานเองไม่ได้เปลี่ยนแปลง[1] prompt แบบ adversarial แต่ละรายการที่สร้างขึ้นถูกนำไปใช้กับงาน NLP มาตรฐานหลายประเภท ได้แก่ การวิเคราะห์ความรู้สึก, การตรวจสอบความถูกต้องทางไวยากรณ์, การค้นหาประโยคที่ซ้ำซ้อน, การอนุมานเชิงตรรกะ (NLI), การอ่านเพื่อความเข้าใจ, การแปลด้วยเครื่อง และ การแก้โจทย์คณิตศาสตร์[1] สำหรับการทดลองได้คัดเลือกงาน 8 ประเภทบน 13 dataset ตั้งแต่ชุดข้อมูล GLUE แบบคลาสสิก (เช่น SST-2 สำหรับการวิเคราะห์ความรู้สึก, MNLI สำหรับ NLI) ไปจนถึงการทดสอบทางคณิตศาสตร์และหลายภาษาเฉพาะทาง[1]

สิ่งสำคัญคือมีการทดสอบความทนทานของ รูปแบบ prompt ต่าง ๆ[1]:

  • การสอบถามโดยตรงโดยไม่มีตัวอย่าง (zero-shot เฉพาะคำสั่ง)
  • การสอบถามพร้อมตัวอย่างหลายรายการ (few-shot เมื่อ prompt มีตัวอย่างการแก้ปัญหา)
  • prompt แบบบทบาท (in-context roles เช่น "คุณคือระบบวิเคราะห์ความรู้สึก โปรดระบุ...")
  • prompt ที่อธิบายงาน (task-oriented การอธิบายงานโดยตรง)[1]

นอกจากนี้ยังได้ทดสอบโมเดลภาษาขนาดต่าง ๆ หลายรุ่น ตั้งแต่ Flan-T5-large ที่มีขนาดค่อนข้างเล็กและโมเดล UL2 ไปจนถึง ChatGPT และ GPT-4 ที่มีความก้าวหน้า รวมถึงโมเดลโอเพนซอร์สตระกูล LLaMA 2 และโมเดล Vicuna ที่ได้รับการพัฒนาต่อยอด[1] สำหรับการสร้างการโจมตีได้ใช้วิธีการที่มีอยู่แล้วในด้าน adversarial NLP (เช่น TextBugger, DeepWordBug, TextFooler และอื่น ๆ) ที่ถูกปรับให้เหมาะสมสำหรับการแก้ไข prompt แทนที่จะเป็นข้อมูลนำเข้า[1] ความถูกต้องของ prompt ที่ "บิดเบือน" ที่ได้รับการตรวจสอบด้วยวิธีอัตโนมัติและด้วยตนเอง โดยตามรายงานระบุว่าไม่น้อยกว่า 85% ของตัวแปร adversarial ยังคงความหมายที่ถูกต้องและมนุษย์สามารถเข้าใจได้[1] ดังนั้น ผลกระทบของการโจมตีจึงสะท้อนถึงความล้มเหลวของโมเดลในการตีความงานที่กำหนดใหม่โดยเฉพาะ ไม่ใช่การสูญเสียความหมายของงานเอง

ผลลัพธ์และข้อสรุป

การทดสอบแสดงให้เห็นว่า LLM ในปัจจุบัน ขาดความทนทานเพียงพอต่อการเปลี่ยนแปลงเล็กน้อยในการกำหนดคำถาม[3] สำหรับโมเดลทุกรุ่นที่ทดสอบพบว่าคุณภาพคำตอบลดลงอย่างมีนัยสำคัญภายใต้ผลกระทบของการโจมตีที่สร้างขึ้น[3] โดยเฉพาะอย่างยิ่ง แม้แต่กรณีง่าย ๆ เช่น การพิมพ์ผิดในข้อความโจทย์คณิตศาสตร์หรือการแทนที่คำสำคัญหนึ่งคำด้วยคำพ้องความหมาย ส่งผลให้โมเดลให้คำตอบที่ผิด ทั้งที่ก่อนหน้านี้ตอบถูกต้องโดยไม่มีการบิดเบือน[1] ข้อสรุปโดยรวมของผู้เขียนคือ: "LLM ในปัจจุบัน ไม่มีความทนทาน (robustness) ต่อ prompt แบบ adversarial"[3] นั่นคือการเบี่ยงเบนเล็กน้อยใน phrasing สามารถทำให้โมเดลเกิดความเข้าใจผิดได้อย่างเป็นระบบ

จากการวิเคราะห์การโจมตีประเภทต่าง ๆ พบว่าการเปลี่ยนแปลงใน ระดับคำ ส่งผลกระทบทำลายล้างมากที่สุดต่อการทำงานของ LLM[2] การแทนที่คำด้วยคำพ้องความหมายหรือการบิดเบือนในการสร้างคำเล็กน้อยส่งผลให้ คุณภาพลดลงมากที่สุด โดยเฉลี่ยประมาณ 33% เมื่อเทียบกับผลลัพธ์เดิมบนงานเดียวกัน[2] การโจมตีใน ระดับอักขระ (การพิมพ์ผิด ตัวอักษรสุ่ม) ทำให้ความแม่นยำลดลงเฉลี่ยประมาณ 20%[2] ในทางกลับกัน การเปลี่ยนแปลงเชิงคุณภาพหรือการเพิ่มประโยคทั้งหมดใน prompt มีผลกระทบที่อ่อนแอกว่ามาก แทบไม่ทำให้โมเดลสับสน[1] การกำหนดความหมายใหม่ (การเปลี่ยนคำพูดในเชิงลึกของคำถาม) มีความเป็นอันตรายใกล้เคียงกับการพิมพ์ผิดง่าย ๆ[1] ข้อเท็จจริงเหล่านี้เน้นย้ำว่า LLM มีความเสี่ยงเป็นพิเศษต่อการเปลี่ยนแปลงคำศัพท์ที่ละเอียดอ่อนและข้อผิดพลาดในคำสำคัญ[1] เป็นที่น่าสังเกตว่าการบิดเบือนทางไวยากรณ์ (การพิมพ์ผิด) ในทางทฤษฎีสามารถกรองออกได้ด้วยเครื่องมือตรวจสอบการสะกดคำมาตรฐาน ในขณะที่การเปลี่ยนแปลงระดับคำและความหมายต้องการให้โมเดลมีความเข้าใจเชิงความหมายที่พัฒนาแล้ว ซึ่งโมเดลในปัจจุบันมักขาดสิ่งนี้[1]

การวิเคราะห์ประสิทธิภาพของโมเดลต่าง ๆ แสดงให้เห็นความแตกต่างอย่างมีนัยสำคัญในด้านความทนทาน[1] GPT-4 และ UL2 แสดงความทนทานที่ดีที่สุดต่อ prompt แบบ adversarial[1] โมเดล Flan-T5-large และโมเดลสนทนา ChatGPT มีความเสี่ยงต่อความล้มเหลวน้อยกว่าเล็กน้อย[1] โมเดลในตระกูล LLaMA 2 อยู่ในตำแหน่งกลาง ในขณะที่ Vicuna (13B) โดดเด่นในฐานะโมเดลที่มีความเสี่ยงสูงสุดต่อการโจมตีทุกประเภท[1] ที่น่าสนใจคือ ขนาดของโมเดลไม่ได้เป็นปัจจัยชี้ขาดของความทนทาน[1]: T5-large ที่มีขนาดค่อนข้างเล็กมีความเสถียรของคำตอบเกือบเท่ากับ ChatGPT ที่มีขนาดใหญ่กว่ามาก[1] ผู้เขียนตั้งสมมติฐานว่า วิธีการฝึกและการ fine-tuning ของโมเดลมีบทบาทสำคัญ ไม่ใช่แค่ขนาดเพียงอย่างเดียว[1] ดังนั้น UL2 และ T5-large ผ่านการ pre-training ขยายบนชุดข้อมูลขนาดใหญ่ และ ChatGPT ได้รับการฝึกด้วย Reinforcement Learning จาก feedback ของมนุษย์ (RLHF) ซึ่งอาจเสริมความทนทานของโมเดล[1] ในทางกลับกัน Vicuna ได้รับการฝึกบนชุดข้อมูลที่จำกัดค่อนข้างมาก (ในฐานะโมเดลโอเพนซอร์สแบบจำลอง) ซึ่งอาจเป็นสาเหตุของความไวสูงต่อการเปลี่ยนแปลงการกำหนดคำถาม[1] ผลลัพธ์เหล่านี้ชี้ให้เห็นว่าการปรับปรุงวิธีการ fine-tuning อาจเพิ่มความน่าเชื่อถือของโมเดลได้มากกว่าการเพิ่มขนาดโมเดลอย่างเดียว

ผลกระทบของรูปแบบ prompt

รูปแบบการนำเสนอคำถามก็ส่งผลต่อความน่าเชื่อถือของคำตอบด้วยเช่นกัน[1] พบว่า prompt ที่มีตัวอย่าง (few-shot) ช่วยเพิ่มความทนทานของโมเดลได้อย่างมีนัยสำคัญ เมื่อเทียบกับคำสั่งแบบขั้นตอนเดียวโดยไม่มีตัวอย่าง (zero-shot)[1] การมีตัวอย่างสาธิตของงานหลายรายการใน prompt ช่วยให้โมเดลตีความงานได้แม่นยำยิ่งขึ้นแม้จะมีการเปลี่ยนแปลงที่ก่อให้เกิด "สัญญาณรบกวน" prompt แบบบทบาทและแบบอธิบาย (task-oriented) แสดงระดับความทนทานที่ใกล้เคียงกันโดยรวม แม้ว่าประสิทธิภาพจะแตกต่างกันไปตามแต่ละงาน[1] ตัวอย่างเช่น ในข้อมูลการวิเคราะห์ความรู้สึกและประโยคที่ซ้ำซ้อน รูปแบบบทบาทน่าเชื่อถือกว่าเล็กน้อย ในขณะที่ในงานการอ่านเพื่อความเข้าใจและการแปล คำสั่งงานที่ชัดเจนทำงานได้ดีกว่า[1] การสังเกตเหล่านี้สามารถทำหน้าที่เป็นแนวทางในการออกแบบ prompt: การเพิ่มตัวอย่างที่ละเอียดและบริบทของบทบาทจะลดโอกาสที่โมเดลจะเกิดข้อผิดพลาดต่อการกำหนดคำถามที่ผิดปกติ

การถ่ายโอนการโจมตีระหว่างโมเดล

การถ่ายโอน (transfer) ของการโจมตีระหว่างโมเดลมีข้อจำกัด[1] prompt แบบ adversarial ที่ออกแบบมาโดยเฉพาะเพื่อต่อต้านโมเดลหนึ่งไม่ได้มีประสิทธิภาพเท่ากันเสมอต่อโมเดลอื่น[1] ตัวอย่างเช่น มีการสังเกตว่า prompt แบบ "กับดัก" ที่สร้างขึ้นสำหรับช่องโหว่ของ ChatGPT ส่งผลกระทบต่อ GPT-4 น้อยกว่ามาก[1] โมเดลหลังทำงานได้ดีกว่า อาจเป็นเพราะการโจมตีไม่ได้ถ่ายโอนโดยตรงไปยังสถาปัตยกรรมของมัน สิ่งที่ทำให้โมเดลหนึ่งสับสนอาจไม่ส่งผลต่อโมเดลที่ก้าวหน้ากว่าซึ่งได้รับการฝึกที่แตกต่างกัน[1] อย่างไรก็ตาม การบิดเบือนบางอย่างที่ง่าย (เช่น การพิมพ์ผิด) ส่งผลเสียต่อโมเดลหลายรุ่นพร้อมกัน ซึ่งบ่งชี้ถึงจุดอ่อนที่คล้ายกันในพื้นฐานทางภาษาของโมเดลเหล่านั้น

คำแนะนำเชิงปฏิบัติ

ในระหว่างการดำเนินการ PromptBench ยังได้ระบุคำแนะนำเชิงปฏิบัติสำหรับผู้ใช้และนักพัฒนา LLM[2] ข้อสรุปง่าย ๆ คือ: ความเสถียรของการกำหนดคำถามมีความสำคัญ[2] จำเป็นต้อง หลีกเลี่ยงการพิมพ์ผิดและการกำหนดคำถามที่ประมาทเลินเล่อในการสอบถาม[2] ผู้เขียนแสดงให้เห็นว่าการแก้ไขแม้แต่ข้อผิดพลาดเล็กน้อย (การสะกด ตัวพิมพ์ที่ไม่ตั้งใจ ช่องว่างเกินมา) สามารถเพิ่มความน่าเชื่อถือของคำตอบของโมเดลได้อย่างมีนัยสำคัญ[2] นอกจากนี้ การเลือกคำในคำสั่งมีผลต่อความทนทานของคำสั่งนั้น[2] การวิเคราะห์ความถี่ของคำศัพท์ใน prompt ที่ทนทาน vs. ที่เสี่ยงต่อการโจมตีเผยให้เห็นว่าคำบางคำพบได้บ่อยกว่าใน prompt ที่ "น่าเชื่อถือ" ในขณะที่คำอื่น ๆ พบในกรณีที่โมเดลล้มเหลว[2] ตัวอย่างเช่น prompt ที่มีคำว่า "acting", "provided", "detection" และคำที่คล้ายกัน มักส่งผลให้เกิดความล้มเหลวน้อยกว่า ในขณะที่คำเช่น "respond", "following" หรือ "examine" พบในกรณีที่มีปัญหามากกว่า[2] ซึ่งบ่งชี้ว่ารูปแบบและคำศัพท์บางอย่างของการสอบถามอาจบรรเทาหรือในทางกลับกันกระตุ้นช่องโหว่ของโมเดล โดยรวมแนะนำให้กำหนดคำถาม ให้ชัดเจน ไม่กำกวม และใช้คำศัพท์ที่คุ้นเคยกับโมเดล โดยเฉพาะสำหรับแอปพลิเคชันที่มีความสำคัญ[2]

ผลข้างเคียงที่น่าสนใจที่นักวิจัยสังเกตเห็นคือผลกระทบของการเพิ่มส่วนข้อความที่ไม่มีความหมายหรือไม่เกี่ยวข้องในการสอบถาม[2] พบว่า การแทรกลำดับตัวอักษรแบบสุ่ม (เช่น "LKF0FZxMZ4") ที่ส่วนท้ายหรือตรงกลางของ prompt สามารถเบี่ยงเบนความสนใจของโมเดลและ ลดความแม่นยำของคำตอบ[2] ในทางกลับกัน การเพิ่มวลีที่เป็นกลางแต่ถูกต้องตามไวยากรณ์ (เช่น "and true is true") ในบางกรณีกลับ ปรับปรุงคำตอบให้ดีขึ้น ราวกับว่าช่วยให้โมเดลโฟกัสที่ส่วนที่มีความหมายของคำถาม[2] ปรากฏการณ์นี้เน้นย้ำว่า LLM ตอบสนองต่อรายละเอียดที่ดูเหมือนไม่มีนัยสำคัญของข้อมูลนำเข้าอย่างคาดเดาไม่ได้เพียงใด ปรากฏการณ์นี้ยังเป็นหลักฐานของความซับซ้อนของโครงสร้างภายในของโมเดล: การเปลี่ยนแปลงบริบทเล็กน้อยอาจรบกวนหรือปรับปรุงการทำงานของโมเดลได้ ขึ้นอยู่กับวิธีที่ความสนใจของโมเดลถูกกระจายใหม่

ความสำคัญและการพัฒนาต่อไป

PromptRobust/PromptBench มีส่วนสำคัญในการทำความเข้าใจความน่าเชื่อถือของ LLM[2] benchmark ที่เสนอและข้อมูลที่รวบรวมเปิดให้ชุมชนได้ใช้งาน: โค้ดและชุด prompt แบบ adversarial พร้อมใช้งานในที่เก็บข้อมูล[1] ซึ่งช่วยให้นักวิจัยคนอื่น ๆ สามารถทดสอบโมเดลใหม่เพื่อความทนทานต่อการเปลี่ยนแปลงของการสอบถามและเปรียบเทียบผลลัพธ์[1] ขั้นตอนต่อไปคือการพัฒนาวิธีการป้องกันโมเดลจากการโจมตีดังกล่าว เช่น อัลกอริทึมการฝึกที่ได้รับการปรับปรุงซึ่งคำนึงถึงการพิมพ์ผิดและการกำหนดคำพูดใหม่ที่เป็นไปได้ หรือระบบการทำให้ข้อมูลนำเข้าเป็นมาตรฐานในตัว[2] PromptBench ได้รับการพิจารณาให้เป็นพื้นฐานสำหรับการวิจัยดังกล่าวเพื่อเพิ่ม ความทนทาน (robustness) ของโมเดลภาษาต่อข้อมูลนำเข้าที่ไม่แม่นยำในโลกจริง[2]

ในท้ายที่สุด งานของ Zhu และเพื่อนร่วมงานแสดงให้เห็นถึงความสำคัญของการคำนึงถึงความทนทานต่อ prompt เมื่อนำ LLM ไปใช้ในแอปพลิเคชันจริง: โมเดลไม่เพียงต้องแสดงความแม่นยำสูงบนข้อมูล "สะอาด" เท่านั้น แต่ยังต้องรักษาความถูกต้องเมื่อมีการเบี่ยงเบนเล็กน้อยในข้อมูลนำเข้า ไม่ว่าจะเป็นข้อผิดพลาดโดยไม่ตั้งใจของผู้ใช้หรือการโจมตีโดยเจตนา[2][4]

ลิงก์ภายนอก

  • บทความต้นฉบับ PromptBench (arXiv)
  • ที่เก็บข้อมูล PromptBench บน GitHub
  • บทความ "Prompt Robustness: How to Measure and How to Enhance" (Towards AI)

บรรณานุกรม

  • Liang, P. et al. (2022). Holistic Evaluation of Language Models (HELM). arXiv:2211.09110.
  • Chang, Y. et al. (2023). A Survey on Evaluation of Large Language Models. arXiv:2307.03109.
  • Ni, S. et al. (2025). A Survey on Large Language Model Benchmarks. arXiv:2508.15361.
  • Biderman, S. et al. (2024). The Language Model Evaluation Harness (lm-eval): Guidance and Lessons Learned. arXiv:2405.14782.
  • Kiela, D. et al. (2021). Dynabench: Rethinking Benchmarking in NLP. arXiv:2104.14337.
  • Ma, Z. et al. (2021). Dynaboard: An Evaluation‑As‑A‑Service Platform for Holistic Next‑Generation Benchmarking. arXiv:2106.06052.
  • Goel, K. et al. (2021). Robustness Gym: Unifying the NLP Evaluation Landscape. arXiv:2101.04840.
  • Xu, C. et al. (2024). Benchmark Data Contamination of Large Language Models: A Survey. arXiv:2406.04244.
  • Liu, S. et al. (2025). A Comprehensive Survey on Safety Evaluation of LLMs. arXiv:2506.11094.
  • Chiang, W.-L. et al. (2024). Chatbot Arena: An Open Platform for Evaluating LLMs by Human Preference. arXiv:2403.04132.
  • Boubdir, M. et al. (2023). Elo Uncovered: Robustness and Best Practices in Language Model Evaluation. arXiv:2311.17295.
  • Huang, L. et al. (2023). A Survey on Hallucination in Large Language Models. arXiv:2311.05232.

หมายเหตุ

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 «PromptBench: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts». arXiv. [1]
  2. 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 «Prompt Robustness: How to Measure and How to Enhance». Towards AI. [2]
  3. 3.0 3.1 3.2 3.3 «PromptRobust: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts». arXiv. [3]
  4. «Realer Toxicity Prompts (RTP-2.0): Multilingual and Adversarial Prompts for Evaluating Neural Toxic Degeneration in Large Language Models». Language Technologies Institute - School of Computer Science - Carnegie Mellon University. [4]