AI Engineer 101 · Prompt Lab

Bad Prompt vs Good Prompt

เรียนรู้การเขียน Prompt ผ่านการลงมือทำ เริ่มจากทำความเข้าใจว่า Prompt คืออะไร จากนั้นฝึกแยก Prompt ที่ดีกับไม่ดีในส่วนที่ 1 แล้วลองเขียนและทดสอบกับ AI จริงในส่วนที่ 2

Prompt คืออะไร

ความหมายของคำว่า "Prompt"

Prompt (พรอมต์) ในภาษาอังกฤษเป็นได้ทั้งคำกริยาและคำนาม

  • กริยา (to prompt): กระตุ้น เตือน ชี้นำ เป็นตัวจุดประกายให้ใครทำบางอย่าง เช่น การกระซิบบอกบทให้นักแสดงละครเวทีที่ลืมบท
  • คำนาม (a prompt): สิ่งที่ใช้กระตุ้นหรือชี้นำนั้น เช่น บทที่ถูกกระซิบบอก หรือโจทย์ที่ให้นักเรียนเขียนเรียงความ

ในวงการ AI คำว่า Prompt หมายถึงข้อความหรือคำสั่งที่เราป้อนให้โมเดล AI เพื่อให้มันตอบสนองหรือทำงานตามที่เราต้องการภาษาไทยอาจเรียกว่า "คำสั่ง" หรือ "ข้อความนำเข้า" แต่ส่วนใหญ่นิยมทับศัพท์ว่า "พรอมต์" เพราะ Prompt ไม่ได้มีแค่คำสั่ง แต่รวมถึงบริบท ตัวอย่าง และข้อมูลที่เราให้ด้วย

เปรียบเทียบให้เห็นภาพ: Prompt คือโจทย์ที่เราสั่ง "พนักงานใหม่ที่เก่งมาก แต่ไม่รู้อะไรเกี่ยวกับงานเราเลย" ถ้าสั่งว่า "ทำรายงานให้หน่อย" เขาต้องเดาเอง แต่ถ้าบอกว่าทำให้ใคร ทำไม ยาวเท่าไหร่ หน้าตาแบบไหน เขาจะทำได้ตรงใจกว่ามาก

Prompt Engineering คืออะไร

Prompt Engineering คือทักษะการออกแบบ ทดสอบ และปรับปรุง Prompt เพื่อให้ AI ให้ผลลัพธ์ที่แม่นยำ สม่ำเสมอ และนำไปใช้งานจริงได้ สำหรับ AI Engineer นี่คือทักษะพื้นฐาน เพราะ Prompt ที่ดีช่วยลดต้นทุน ลดข้อผิดพลาด และลดโค้ดที่ต้องเขียนมาแก้ผลลัพธ์ทีหลัง

องค์ประกอบของ Prompt

องค์ประกอบความหมาย
Instruction (คำสั่ง)งานที่ต้องการให้ทำ
Context (บริบท)ข้อมูลพื้นหลังที่โมเดลต้องรู้
Input Data (ข้อมูลนำเข้า)เนื้อหาที่ต้องการให้ประมวลผล
Output Format (รูปแบบผลลัพธ์)ต้องการคำตอบหน้าตาแบบไหน
Examples (ตัวอย่าง)ตัวอย่างของผลลัพธ์ที่ดี
Constraints (ข้อจำกัด)ความยาว โทนเสียง สิ่งที่ห้ามทำ

ตัวอย่างสั้น ๆ

Bad Prompt

Write about Python.

Good Prompt

Write a 300-word beginner-friendly introduction to Python for first-year university students who have never coded. Cover three reasons Python is easy to learn, include one short code example, and end with a suggestion for what to learn next.
หลักการข้อเดียวที่ต้องจำ: "Garbage in, garbage out" Prompt ที่คลุมเครือจะได้คำตอบที่คลุมเครือ ยิ่งชัดเจน ยิ่งได้ผลดี

เช็กลิสต์ Prompt ที่ดี (8 องค์ประกอบ)

ใช้เช็กลิสต์นี้ตรวจ Prompt ทุกครั้งก่อนส่ง ทั้งสองส่วนของ Prompt Lab ใช้ 8 ข้อนี้เป็นเกณฑ์

#องค์ประกอบคำถามที่ควรถามตัวเองเคล็ดลับ
1เป้าหมาย
Goal
ผลลัพธ์ที่ต้องการคืออะไรกันแน่บอกงานที่ต้องการให้ชัดเจนในประโยคแรก เช่น "Write a 300-word introduction..."
2บริบท
Context
โมเดลต้องรู้อะไรบ้างถึงจะทำงานได้ใส่ข้อมูลพื้นหลัง เวอร์ชันของเครื่องมือ error message หรือสิ่งที่คาดหวัง
3ผู้อ่าน
Audience
ผลลัพธ์นี้เขียนให้ใครอ่านระบุผู้อ่านและระดับความรู้ เช่น "for first-year students who have never coded"
4รูปแบบ
Format
อยากได้หน้าตาแบบไหน (JSON, ตาราง, bullet)กำหนดโครงสร้างผลลัพธ์ เช่น JSON schema จำนวน bullet หรือหัวข้อที่ต้องมี
5ตัวอย่าง
Examples
ยกตัวอย่างที่ดี 1-3 อันให้ดูได้ไหมใช้ Few-Shot: ใส่ตัวอย่างอินพุตและเอาต์พุตที่ถูกต้อง 1-3 คู่
6ข้อจำกัด
Constraints
ความยาว โทนเสียง ขอบเขต สิ่งที่ต้องเลี่ยงบอกความยาว โทน และขอบเขต โดยเน้นบอกสิ่งที่ต้องการ ไม่ใช่แค่สิ่งที่ห้าม
7การอ้างอิง
Grounding
ให้แหล่งข้อมูลแล้วหรือยัง อนุญาตให้ตอบว่าไม่รู้ไหมแนบเอกสารในตัวคั่น เช่น <document> และบอกให้ตอบว่า "ไม่รู้" ถ้าไม่มีข้อมูล
8การประเมิน
Evaluation
จะวัดได้อย่างไรว่า Prompt นี้ใช้ได้ผลกำหนดเกณฑ์ที่ตรวจได้ เช่น "Answer on a line starting with Answer:" แล้วทดสอบกับหลายอินพุต

เริ่มฝึก