การแสดงตัวอย่าง Example Prompting

Example Prompting หรือ Few-shot Prompting คือการใส่ตัวอย่างลงไปใน Prompt เพื่อชี้นำให้ AI ตอบในรูปแบบหรือบริบทที่เราต้องการ ซึ่งมีอยู่ 3 รูปแบบหลักๆ ได้แก่ Zero-Shot, One-Shot และ Few-Shots

การแสดงตัวอย่าง Example Prompting

💡 Key Takeaways

  • เข้าใจเทคนิค Example Prompting หรือ Shot Prompting
  • เข้าใจ Zero-Shot Prompting และตัวอย่าง
  • เข้าใจ One-Shot Prompting และตัวอย่าง
  • เข้าใจ Few-Shots Prompting และตัวอย่าง
  • ตัวอย่าง Few-Shots Prompting แบบเป็นโครงสร้าง
  • การประยุกต์ใช้ Few-Shots Prompting กับ Sentiment Analysis

รูปแบบต่างๆ ของ Example Prompting หรือ Shot Prompting

Example Prompting หรือ Few-shot Prompting คือการใส่ตัวอย่างลงไปใน Prompt เพื่อชี้นำให้ AI ตอบในรูปแบบหรือบริบทที่เราต้องการ

ซึ่งคำว่า "Shot" ในบริบทของ AI prompting หมายถึง "ตัวอย่าง" ที่เราใช้แสดงให้ AI Model เห็นว่าเราต้องการให้มันสร้างผลลัพธ์แบบใด โดยทั่วไปแล้วจะมีการเรียกชื่อตามจำนวนตัวอย่างที่ใช้ เช่น Zero-Shot (ไม่ใช้ตัวอย่าง), One-Shot (ใช้ตัวอย่าง 1 ชุด) และ Few-Shots (ใช้ตัวอย่างหลายชุด) เรามาดูตัวอย่างง่าย ๆ ของแต่ละแบบกันดีกว่า


Zero-Shot Prompting

Zero-Shot Prompting เป็นรูปแบบพื้นฐานที่สุดของ Prompting คือการสั่ง Prompt ให้ Model AI โดยไม่มีตัวอย่าง (Zero-Example) และขอให้มันสร้างผลออกมา ดังนั้น Prompt Instruction ทั้งหมดที่คุณได้เรียนในบทก่อนหน้านี้จนถึงตอนนี้จึงเป็น Zero-Shot Prompting

ตัวอย่าง ของ Zero-Shot Prompt เช่น

Prompt :

✏️
2+2:

คำสั่งแบบนี้จัดเป็น Zero-Shot เพราะเราไม่ได้ให้ตัวอย่างใด ๆ กับ Model AI


One-Shot Prompting

One-Shot Prompting คือ การที่เราแสดงตัวอย่างเพียง หนึ่งตัวอย่าง ให้กับโมเดล

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

Prompt :

✏️
3+3: 6
2+2:

คำสั่งนี้จัดเป็น One-Shot เพราะเราได้ทำการแสดงตัวอย่างให้ Model AI เห็นหนึ่งตัวอย่างคือ 3+3: 6 ดังนั้น Model AI จะทำการคาดการณ์ว่า 2+2: จะมีคำตอบเท่ากับ 4


Few-Shots Prompting

Few-Shots Prompting คือ เมื่อคุณแสดงตัวอย่างให้โมเดลดู 2 ตัวอย่างหรือมากกว่านั้น

เรามาดูตัวอย่างของ Few-Shots กัน

Prompt :

✏️
3+3: 6
5+5: 10
2+2:

คำสั่งนี้จัดเป็นการสั่งงานแบบ Few-Shots ที่เราได้แสดงตัวอย่างสำหรับโมเดล 2 ตัวอย่าง (3+3: 6 และ 5+5: 10) โดยทั่วไปแล้วยิ่งคุณแสดงตัวอย่างให้โมเดลดูเยอะเท่าไหร่ผลลัพธ์ที่ได้ก็จะดีขึ้นเท่านั้น

💡
หากต้องการผลลัพธ์แบบเฉพาะเจาะจงการสั่งงานแบบ Few-Shots จึงนิยมมากกว่าเมื่อเทียบกับ Zero-Shot และ One-Shot

การจัดโครงสร้าง Example’s Prompt Structure

วิธีที่เราจัดโครงสร้าง Example Prompt นั้นมีความสำคัญมากสำหรับ Few-Shot Prompting คือ เมื่อคุณต้องการให้ผลลัพธ์มี "โครงสร้างในรูปแบบเฉพาะ" ซึ่งยากที่จะอธิบายให้โมเดลเข้าใจ เพื่อทำความเข้าใจเรื่องนี้ ลองพิจารณาตัวอย่างนี้

สมมติว่าคุณต้องการรวบรวมรายชื่อและอาชีพของผู้เข้าสมัคร สว. จาก ข่าวนี้ ซึ่งเป็นบทความจากหนังสือพิมพ์ออนไลน์ คุณต้องการให้โมเดลอ่านข่าวและแสดงผลรายชื่อและอาชีพในรูปแบบ ชื่อ นามสกุล [อาชีพ] เพื่อสั่งให้โมเดลทำตามแบบที่คุณต้องการ คุณควรแสดงตัวอย่างให้ดูสอง-สามตัวอย่าง ดังนี้

💡
เพื่อป้องกันตัวอย่าง ข่าวหายไปหรือ Missing Link ในตัวอย่างนี้ได้ทำการแนบข่าวดังกล่าวในรูปแบบ PDF เพื่อใช้เป็นตัวอย่าง ด้านล่าง ⬇️

Prompt :

ก่อนใช้คำสั่ง Prompt ให้ทำการ Upload ไฟล์ “ข่าวคัดเลือกสว.pdf” เข้าไปก่อน

ภาพ GIF แสดงวิธีการส่งข้อความใน ChatGPT ผู้ใช้คลิกที่ไอคอนคลิปหนีบกระดาษเพื่อแนบไฟล์ในช่องข้อความและพิมพ์ "Message ChatGPT" พร้อมคลิกปุ่มลูกศรเพื่อส่งข้อความในแชท

หลังจากนั้นให้พิมพ์ Prompt ตามนี้

✏️
#คำสั่ง:
อ่านข้อมูลจาก pdf ที่แนบไปให้, เขียนรายการชื่อที่ปรากฎในบทความและอาชีพหรือตำแหน่งตามตัวอย่าง

#ตัวอย่าง:
นางฉันทนา หวันแก้ว -> อดีตรองคณบดีคณะรัฐศาสตร์
นายดิเรก ถึงฝั่ง -> อดีต สว.

AI Output :

หน้าจอแล็ปท็อปแสดงผลการประมวลผลใน ChatGPT พร้อมข้อความแนบไฟล์ PDF ที่มีรายชื่อบุคคลและตำแหน่งงาน ผู้ใช้สามารถอ่านและตรวจสอบรายละเอียดในข้อความและไฟล์ที่แนบได้

การแสดงตัวอย่างรูปแบบผลลัพธ์ที่ถูกต้องให้โมเดลเห็น มันจะสามารถสร้างผลลัพธ์ที่ถูกต้องตามที่เราต้องการได้ เราสามารถสร้างผลลัพธ์แบบเดียวกันนี้โดยใช้ไม่ให้ตัวอย่าง (Zero-Shot Prompting) แทนก็ได้ แต่การให้ตัวอย่าง 2-3 ตัวอย่าง (Few-Shots Prompting) จะให้ผลลัพธ์ที่สม่ำเสมอกว่ามาก

การประยุกต์ใช้ Few-Shots Prompting กับ Sentiment Analysis

ภาพตัวอย่างการป้อนคำสั่งแบบ A Few Shot Prompt โดยมีข้อมูลตัวอย่างและผลลัพธ์การประมวลผลที่ได้จากโมเดล โดยตัวอย่างคำวิจารณ์ผลิตภัณฑ์ถูกระบุว่าเป็นความคิดเห็นเชิงลบ (Negative)

ลองพิจารณาตัวอย่างจากรูป "Sentiment Analysis" เป็นการวิเคราะห์เพื่อจำแนกประเภทหรือ “Classify” ความคิดเห็นของลูกค้าว่าเป็นเชิงบวกหรือเชิงลบ เราแสดงตัวอย่างความเห็นเชิงบวก/ลบให้ Model เห็น 3 ตัวอย่าง จากนั้นเราก็แสดงความเห็นใหม่ที่ยังไม่ได้ถูก Classify (It doesn't work!:) ให้ Model เห็น ดังนั้น Model จะสังเกตว่า 3 ตัวอย่างแรกถูก Classify เป็น บวก (Positive) หรือ ลบ (Negative) และใช้ข้อมูลนี้ในการ Classify ตัวอย่างใหม่ว่าเป็น Negative

คราวนี้เรามาดูตัวอย่างการวิเคราะห์ Sentiment Analysis ความคิดเห็นลูกค้าที่เป็นภาษาไทยกันดูบ้าง

Prompt :

✏️
#คำสั่ง:
- จำแนกประเภทความคิดเห็นของลูกค้าตามตัวอย่าง

#ตัวอย่าง
- เป็นผลิตภัณฑ์ที่ยอดเยี่ยม : บวก
- ทำงานไม่ค่อยดี ติดๆขัดๆ : ลบ
- ช่วยให้งานเร็วขึ้นเยอะ : บวก

#ความคิดเห็นลูกค้า
- ห่วยบรม! :
- ชอบ ใช้ง่าย :
- บริการหลังการขาย รอนานมาก :

Ai Output :

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

ในการใช้งานจริงเราสามารถนำความคิดเห็นลูกค้าที่ Export มาแล้วจากระบบต่าง ๆ เป็น xls หรือ csv มาเพื่อใช้ Upload เป็น Input ในการคัดแยกได้

สรุป

โดยสรุปแล้ว Few-Shots Prompting นับเป็นกลยุทธ์ที่มีประสิทธิภาพซึ่งสามารถชี้นำ Model AI ให้สร้างคำตอบที่ถูกต้องและมีโครงสร้างที่เหมาะสมได้ การใช้ตัวอย่าง 2 - 3 ตัวอย่าง ทำให้ Few-Shots Prompting ทำให้ Model เข้าใจรูปแบบ Output ที่เราต้องการ ซึ่งทำให้วิธีนี้เป็นที่นิยมมากกว่า Zero-Shot และ One-Shot Prompting ในหลาย ๆ สถานการณ์

นอกจากนี้ Few-Shots Prompting จะช่วยให้ AI Model เรียนรู้และปรับตัวเข้ากับ Task ใหม่ ๆ ได้อย่างรวดเร็ว โดยอาศัยข้อมูลตัวอย่างจำนวนไม่มากนัก วิธีนี้จึงมีประโยชน์อย่างยิ่งในการพัฒนา AI ให้มีความยืดหยุ่นและสามารถประยุกต์ใช้งานได้หลากหลาย และเราคาดหวังว่าเทคนิคดังกล่าวจะถูกนำไปใช้งานกันอย่างแพร่หลายมากขึ้นในวงการ AI


บทเรียนถัดไป บทที่ 7 "รวม Prompt เทคนิคเข้าด้วยกัน"

อ่านบทเรียนอื่น ๆ เพิ่มเติม ได้ ที่นี่

Read more

วิธีติดตั้ง AI แบบ Open Source บน MacBook ฟรี

Courses

วิธีติดตั้ง AI แบบ Open Source บน MacBook ฟรี

บทความนี้จะสอนคุณติดตั้ง AI แบบ Open Source บน MacBook ได้ฟรี ไม่ว่าคุณจะเป็นนักพัฒนาซอฟต์แวร์ นักวิเคราะห์ข้อมูล หรือผู้สนใจทั่วไป ขั้นตอนเหล่านี้จะช่วยให้คุณเริ่มต้นใช้งาน AI ได้ง่ายๆ ด้วยตัวเอง โดยไม่ต้องเสียค่าใช้จ่าย

By
หน้าจอแล็ปท็อปแสดงการสนทนากับ ChatGPT เพื่อสร้าง Mind Map

Courses

วิธีการสร้าง Mind Map อย่างง่ายด้วย ChatGPT

การสร้าง Mind Map เป็นหนึ่งในวิธีที่มีประสิทธิภาพในการจัดระเบียบความคิดและนำเสนอข้อมูลในรูปแบบที่เข้าใจง่าย ด้วยเทคโนโลยี AI อย่าง ChatGPT คุณสามารถสร้าง Mind Map ได้อย่างง่ายดายเพียงไม่กี่ขั้นตอน บทเรียนนี้จะสอนคุณวิธีการสร้าง Mind Map โดยใช้ ChatGPT และโปรแกรม XMind ทีละขั้นตอน

By
รวมเทคนิคการใช้ Prompt อย่างมีประสิทธิภาพในการสร้างเนื้อหา โดยเน้นวิธีการใช้งานและตัวอย่างการนำไปปรับใช้

Courses

รวม Prompt เทคนิคเข้าด้วยกัน

การผสมผสานเทคนิค Prompting ที่แตกต่างกัน เช่น Role, Instruction และ Few-Shot Prompting สามารถนำไปสู่การสร้าง Prompts ที่ทรงพลังและให้ผลลัพธ์ที่ดีขึ้น เรียนรู้วิธีการรวมเทคนิคเหล่านี้เพื่อปรับแต่ง Prompts ให้เหมาะสมกับงานของคุณ

By
ผู้หญิงกำลังพิมพ์งานบนแล็ปท็อป พร้อมข้อความ "การกำหนดบทบาท (Role Prompting)" แสดงวิธีการกำหนดบทบาทในงานเขียนและการใช้ AI

Courses

กำหนดบทบาท Role Prompting

Role Prompting คือการกำหนดบทบาทให้ AI เพื่อควบคุมรูปแบบข้อความที่สร้างขึ้น ไม่ว่าจะเป็นการเขียนรีวิว อีเมล หรือแม้แต่การคำนวณทางคณิตศาสตร์ การใช้เทคนิคนี้จะช่วยให้ได้ผลลัพธ์ที่ตรงกับความต้องการและมีประสิทธิภาพมากขึ้น เหมาะสำหรับงานเขียนหลากหลายประเภท

By