Prompt Engineering คืออะไร และการ Prompt ที่ดีควรเป็นยังไง

Gxmx
ChomCHOB
Published in
2 min readOct 19, 2023

Prompt Engineering เป็นศาสตร์ที่เกี่ยวข้องกับการออกแบบและปรับปรุง prompt ที่ใช้ชี้นำแบบจำลองภาษาขนาดใหญ่หรือ Large Langauge Model (LLM) เพื่อให้แบบจำลองทำงานตามที่ต้องการ Prompt Engineer จะต้องมีความรู้ความเข้าใจเกี่ยวกับแบบจำลอง โดยสามารถเขียน prompt ที่ชัดเจนและแม่นยำ เพื่อให้แบบจำลองเข้าใจและทำงานได้อย่างถูกต้อง และสามารถปรับปรุง prompt ให้ดีขึ้นเรื่อยๆ เพื่อให้ได้ผลลัพธ์ที่ดีขึ้น ซึ่ง Prompt Engineering เป็นสาขาวิชาที่กำลังเติบโตอย่างรวดเร็ว เนื่องจาก AI กำลังมีบทบาทสำคัญมากขึ้นในชีวิตประจำวันของเรา โดยบทความนี้จะอธิบายถึง 2 หัวข้อหลักๆ คือ

  • ส่วนประกอบของ Prompt
  • หลักการออกแบบ Prompt ที่ดีควรเป็นอย่างไร

ถ้าพร้อมแล้วก็เริ่มกันเลยครับ

ส่วนประกอบของ Prompt (Elements of a Prompt)

องค์ประกอบของ Prompt คือ ส่วนต่าง ๆ ที่ประกอบขึ้นมาเป็น Prompt ซึ่งสามารถแบ่งออกเป็น 4 หมวดหมู่หลักๆ ได้แก่

  • Instruction: งานที่เฉพาะเจาะจงหรือคำสั่งที่ต้องการให้แบบจำลองดำเนินการ
  • Context: บริบทเพิ่มเติม หรือตัวอย่าง ที่สามารถชี้นำแบบจำลองให้ตอบสนองได้ดีขึ้น
  • Input Data: คำถามที่เราสนใจหาคำตอบ
  • Output Indicator หมายถึง ประเภทหรือรูปแบบของคำตอบ

ตัวอย่างเช่น

Q: Explain the greenhouse effect and its impact on climate change
A: Summarize in 2 paragraphs, Thai language

Instruction ของ Prompt นี้คือการขอให้แบบจำลอง Explain (อธิบาย) ถึงสิ่งที่เราต้องการนั้นก็คือ ปรากฏการณ์เรือนกระจก และผลกระทบต่อการเปลี่ยนแปลงสภาพภูมิอากาศ

Context ในกรณีนี้ Context ปรากฏอยู่ภายใน Prompt แล้ว นั้นก็คือ “greenhouse effect” และ “its impact on climate change.” ซึ่งทำให้แบบจำลองเข้าใจอย่างชัดเจนว่าควรให้คำตอบอย่างไร

Input Data สิ่งที่เราต้องการให้แบบจำลองให้ข้อมูลหรือคำตอบซึ่งก็คือ greenhouse effect (ภาวะเรือนกระจก) และความสัมพันธ์กับ climate change (การเปลี่ยนแปลงของสภาพภูมิอากาศ)

Output Indicator เป็นการให้แบบอธิบายถึงหัวข้อที่เกี่ยวกับปรากฏการณ์เรือนกระจกและอิทธิพลที่มีต่อการเปลี่ยนแปลงสภาพภูมิอากาศ โดยให้สรุปให้อยู่ภายใน 2 ย่อหน้า และเป็นภาษาไทย

และนี่คือคำตอบที่ได้จากแบบจำลอง

การออกแบบ Prompt เบื้องต้น (General Tips for Designing Prompts)

เคล็ดลับการออกแบบ prompt ให้ได้ผลลัพธ์ตามที่ต้องการ จะต้องมีลักษณะดังต่อไปนี้

  • Clearity and Simplicity: การ Prompt ให้ชัดเจน กระชับ และเข้าใจง่าย ไม่ควรใช้ประโยคที่ซับซ้อน และศัพท์ที่แบบจำลองอาจไม่รู้จัก ตัวอย่างเช่น
Translate text to Thai language
text: "hello"
  • Relevent context: การ Prompt เชื่อมบริบทของคำถาม สามารถช่วยให้แบบจำลองเข้าใจง่ายขึ้น ตัวอย่างเช่น
Write a Python function that calculates the Fibonacci sequence 
up to the 20th term
  • Consistency: การ Prompt ที่มีความสม่ำเสมอทั้งในด้านเนื้อหาและโครงสร้างในทุกๆครั้ง จะช่วยให้แบบจำลองเรียนรู้ว่าคาดหวังอะไรและสร้างผลลัพธ์ที่สม่ำเสมอมากขึ้น ตัวอย่างเช่น เมื่อเราต้องการถามเรื่องใดเรื่องนหนึ่งกับแบบจำลอง เราไม่ควรเปลี่ยนประเด็น หรือตั้งคำถามเกี่ยวกับเรื่องอื่นเพิ่มเติม
  • Diversity: การ Prompt โดยใช้คำสำคัญและวลีที่หลากหลาย จะช่วยให้แบบจำลองสร้างผลลัพธ์ที่สร้างสรรค์และน่าสนใจยิ่งขึ้น โดยที่ความหลากหลายของคำหรือประโยคนั้นๆ ยังไม่เปลี่ยนแปลงความหมายหรือความต้องการของ Prompt เพื่อไม่ให้แบบจำลองสับสนกับความต้องการของเรา

การ Prompt อาจจจะเรียกได้ว่าเป็นศิลปะแขนงหนึ่งได้เหมือนกัน ถ้าเราออกแบบ Prompt ที่ดี ก็จะได้คำตอบที่มีคุณภาพจากแบบจำลองเช่นกัน ผมหวังว่าบทความนี้จะมีประโยชน์ต่อผู้อ่านไม่มากก็น้อย และกลับมาพบกับผมในบทความต่อไปในหัวข้อ “5 เทคนิคพื้นฐานของการ Prompt” สวัสดีครับ

--

--