เทคนิคการพร้อมท์ที่ดี ไม่ได้มีแค่สูตรเดียว เป็นทั้งศาสตร์และศิลป์ เป็นความแน่นอนที่จะไม่แน่นอน ทั้งนี้เพราะหัวใจการทำงานของ LLM หรือโมเดลภาษาขนาดใหญ่ ต่างเริ่มต้นการทำงานด้วยการสุ่ม และใช้หลักความน่าจะเป็น เป็นกระบวนการเลือกหาคำตอบ จึงเต็มไปด้วยความไม่แน่นอน คำถามเดียวกัน แต่ถามต่างเวลา ก็อาจได้คำตอบที่ไม่เหมือนกัน รูปภาพที่ต่างกัน เป็นต้น
ดังนั้น จึงไม่น่าแปลกใจที่หลายคนพยายามคิดหาสูตรลับ Prompt Engineering: “ศาสตร์แห่งการออกแบบคำถามหรือคำสั่ง เพื่อให้โมเดลภาษาสร้างข้อมูลเท็กซ์ ภาพ เสียง และวิดีโอ ที่ตรงตามความต้องการของเราได้” โดยล่าสุด รายงานวิจัยเมื่อเดือนกรกฎาคม 2024 ที่ผ่านมาเรื่อง “The Prompt Report: A Systematic Survey of Prompting Techniques” กลุ่มนักวิจัยกว่า 40 คนจากมหาวิทยาลัยและบริษัทต่างๆ รวมถึง OpenAI และ Microsoft ได้ดำเนินวิจัยศึกษาหา “จำนวนเทคนิควิธีสร้างพร้อมท์” เพื่อกระตุ้นคำตอบจาก LLM ครอบคลุมเทคนิคหลายร้อยแบบ ผลสรุปที่ได้คือรายงานที่ชื่อว่า “Prompt Report” ซึ่งสรุปเทคนิคหลักๆ ในการพร้อมท์แบบเท็กซ์ได้ 58 วิธี และพร้อมท์แบบมัลติโหมด (Multimodal – เท็กซ์ ภาพ เสียง วิดีโอ) ได้ 40 วิธี (รายละเอียดอ่านเพิ่มเติมได้ที่ https://arxiv.org/pdf/2406.06608)
แต่สำหรับผู้ใช้ทั่วไป อาจไม่ต้องกังวลหรือลงลึกระดับเทคนิคขนาดนั้น การสร้างพร้อมท์โดยใช้แค่ 3-4 องค์ประกอบ ก็อาจตอบโจทย์ได้พอสมควร ตัวอย่างเช่น การใช้หลักองค์ประกอบพร้อมท์ที่เรียกว่า PARTS
- P – Purpose (วัตถุประสงค์): คือ คำสั่งหรือสิ่งที่คุณต้องการให้ LLM หรือ AI ทำ เช่น สร้างเนื้อหา, แปลภาษา, สรุปข้อมูล เป็นต้น โดยการกำหนดวัตถุประสงค์ที่ชัดเจน สั้นกระชับ เป็นขั้นตอนแรกที่สำคัญในการสร้าง Prompt ที่ดี
- A – Audience (กลุ่มเป้าหมาย): หมายถึง ผู้รับสาร หรือผู้ที่จะใช้คำตอบที่ AI สร้างขึ้น เช่น ต้องการเขียนจดหมายให้ครู, เด็ก, ผู้ใหญ่, ผู้เชี่ยวชาญเฉพาะด้าน การระบุกลุ่มเป้าหมายจะช่วยให้คุณปรับแต่งภาษาและเนื้อหาให้เหมาะสม
- R – Role (บทบาท): คือบทบาทสมมติที่คุณต้องการให้ AI เป็น เช่น สมมติว่า AI เป็น ครู, นักเขียน, ผู้ช่วยส่วนตัว การกำหนดบทบาทจะช่วยให้ AI เข้าใจว่าควรตอบสนองอย่างไร
- T – Tone (โทน): คือ อารมณ์หรือบรรยากาศที่คุณต้องการให้ AI สร้าง เช่น เป็นทางการ, อบอุ่น, ขบขัน การกำหนดโทนจะช่วยให้ผลลัพธ์มีความเป็นธรรมชาติมากขึ้น
- S – Style (รูปแบบ): คือรูปแบบการนำเสนอที่คุณต้องการ เช่น บทความ, เพลง, ตาราง, สรุปเป็นหัวข้อ, เนื้อหาย่อๆ ไม่เกิน x คำ เป็นต้น การกำหนดรูปแบบจะช่วยให้ AI สร้างผลลัพธ์ที่ตรงตามความต้องการมากขึ้น
ตัวอย่างการนำหลัก PARTS ไปใช้ในการสร้าง Prompt เช่น
P – วัตถุประสงค์: ฉันต้องการให้ AI เขียนจดหมายสมัครงานตำแหน่ง Marketing Assistant
A – กลุ่มเป้าหมาย: บริษัทผู้จัดจำหน่ายสินค้าไอที
R – บทบาท: ผู้สมัครงาน ซึ่งเพิ่งจบการศึกษาปริญญาตรีด้านการตลาดจากมหาวิทยาลัย
T – โทน: มืออาชีพ
S – รูปแบบ: อีเมล์
จากนั้นคุณสามารถนำรายละเอียดเหล่านี้มาสร้าง Prompt ได้ดังนี้: “เขียนจดหมายสมัครงานภาษาอังกฤษ ให้กับบริษัทผู้จัดจำหน่ายสินค้าไอที โดยสมมติว่า คุณเป็นผู้สมัครงาน ซึ่งเพิ่งจบการศึกษาปริญญาตรีด้านการตลาดจากมหาวิทยาลัย โดยใช้โทนภาษาแบบมืออาชีพ โดยมีรูปแบบเป็นอีเมล์” เป็นต้น
อนึ่ง หลักการเขียน Prompt ที่มีประสิทธิภาพหลักๆ ประกอบด้วย
(1) การให้บริบท (Context) ที่ชัดเจนเพื่อทำให้ AI เข้าใจสถานการณ์
(2) คำสั่ง (Instruction หรือ Purpose) โดยบอกให้ชัดเจนว่าต้องการให้ AI ทำอะไร เช่น เขียนอะไร อธิบายอะไร หรือสร้างอะไร โดยไม่ควรมีหลายคำสั่งในหนึ่งพร้อมท์ จนทำให้ AI จับประเด็นไม่ได้หรือไม่ครบ
(3) การให้ตัวอย่าง (Examples) เพื่อให้ AI เข้าใจสิ่งที่เราอยากได้ชัดเจนมากขึ้น
(4) รูปแบบ (Format) เช่น จำนวนคำ โทนภาษา หรือแสดงผลเป็นตาราง
(5) ข้อจำกัด (Constraints) ที่ต้องการให้ AI ปฏิบัติตาม เช่น การห้ามใช้คำบางคำ หรือให้หาข้อมูลจากอินเทอร์เน็ต หรือใช้แหล่งข้อมูลที่ระบุ
(6) การแบ่งซอยทะยอยถาม (Chain of Thought: CoT) แบ่งคำถามข้อใหญ่เป็นข้อย่อยแล้วทะยอยถามตามลำดับ วิธีนี้ โมเดลจะจัดการกับแต่ละส่วนของคำถามได้ดีขึ้น ตอบคำถามได้แม่นยำขึ้น และผู้ใช้สามารถเห็นกระบวนการคิดของโมเดลได้ เช่น “หากมีตึกสูง 100 ชั้น แต่ละชั้นมี 4 ห้อง ถ้ามีคน 3 คนอยู่ในทุกๆ ห้อง ยกเว้นชั้นที่ 50 มีคนอยู่เพียง 2 คนเท่านั้น แล้วในตึกนี้จะมีคนอยู่ทั้งหมดกี่คน?” เป็นต้น
โดยสรุป เราอาจกล่าวได้ว่า Prompt Engineering คือศิลปะในการสื่อสารกับ AI โดยการตั้งคำถามที่ชัดเจนและมีรายละเอียด เพื่อให้ AI สามารถสร้างผลลัพธ์ที่ตรงตามความต้องการของเราได้อย่างแม่นยำ เทคนิคนี้มีความยืดหยุ่นสูง เราสามารถปรับเปลี่ยนรูปแบบคำถามและบริบทได้ตามต้องการ ผลลัพธ์ที่ได้อาจเป็นข้อความ, โค้ด, ภาพ หรือแม้แต่แนวคิดใหม่ๆ ที่น่าสนใจ ไม่มีสูตรสำเร็จตายตัว การทดลอง การสังเกต และปรับแต่งคำถามอย่างต่อเนื่องจึงเป็นกุญแจสำคัญในการค้นพบวิธีใช้ Prompt Engineering ที่มีประสิทธิภาพสูงสุดของแต่ละบุคคล
บทความโดย : วิโรจน์ อัศวรังสี, ผู้แปลและเรียบเรียงหนังสือ AI and Machine learning for Coders เส้นทางและหลักการสู่การโค้ด AI