Prompt Engineering
Debugging
AI
Best Practices
Troubleshooting

Prompt Debugging: เทคนิคแก้ไขเมื่อ AI ตอบไม่ตรงใจ

เรียนรู้วิธีวิเคราะห์และแก้ไข Prompts ที่ไม่ได้ผลลัพธ์ตามต้องการ พร้อมเทคนิค debugging และ iterative improvement

AI Unlocked Team
21/01/2568
Prompt Debugging: เทคนิคแก้ไขเมื่อ AI ตอบไม่ตรงใจ

Prompt Debugging: เทคนิคแก้ไขเมื่อ AI ตอบไม่ตรงใจ

Prompt Engineering ไม่ได้สำเร็จตั้งแต่ครั้งแรกเสมอไป การรู้วิธี debug และ iterate prompts คือทักษะสำคัญที่จะทำให้คุณได้ผลลัพธ์ที่ต้องการ

ปัญหาที่พบบ่อย

1. ผลลัพธ์ไม่ตรงประเด็น (Off-topic)

❌ ปัญหา: AI ตอบนอกเรื่อง ไม่ตรงคำถาม

สาเหตุ:
- Prompt กว้างเกินไป
- ไม่มี context ที่ชัดเจน
- มีหลายคำถามใน prompt เดียว

✅ วิธีแก้:
- ระบุหัวข้อให้ชัดเจน
- เพิ่ม context
- แยก prompt เป็นหลายคำถาม

2. ผลลัพธ์สั้นเกินไป (Too Brief)

❌ ปัญหา: AI ตอบสั้นมาก ขาดรายละเอียด

สาเหตุ:
- ไม่ได้ระบุความยาว
- คำถามเป็น yes/no question
- ไม่ได้ขอรายละเอียด

✅ วิธีแก้:
- ระบุความยาว: "อธิบายใน 500 คำ"
- เปลี่ยนเป็น open-ended question
- เพิ่ม: "อธิบายอย่างละเอียด พร้อมตัวอย่าง"

3. ผลลัพธ์ยาวเกินไป (Too Verbose)

❌ ปัญหา: AI ตอบยืดยาว ไม่กระชับ

สาเหตุ:
- ไม่ได้จำกัดความยาว
- ถามหลายอย่างพร้อมกัน
- AI พยายาม comprehensive เกินไป

✅ วิธีแก้:
- ระบุ: "สรุปใน 3 bullet points"
- "ตอบกระชับ ไม่เกิน 100 คำ"
- "เน้นประเด็นสำคัญที่สุดเท่านั้น"

4. Format ไม่ถูกต้อง

❌ ปัญหา: ได้ paragraph แทน list, ได้ prose แทน code

สาเหตุ:
- ไม่ได้ระบุ format
- ระบุไม่ชัดเจน
- AI ตีความผิด

✅ วิธีแก้:
- ระบุ format ชัดเจน: "แสดงเป็นตาราง"
- ให้ตัวอย่าง format ที่ต้องการ
- ใช้ template: "ตอบในรูปแบบนี้: [template]"

5. ข้อมูลไม่ถูกต้อง (Hallucination)

❌ ปัญหา: AI ให้ข้อมูลที่ผิด/แต่งขึ้นมา

สาเหตุ:
- ถามเรื่องที่ AI ไม่รู้
- ถามข้อมูลที่ specific มาก
- ไม่ได้ให้ context/แหล่งข้อมูล

✅ วิธีแก้:
- เพิ่ม: "ถ้าไม่แน่ใจ ให้บอกว่าไม่แน่ใจ"
- ให้ข้อมูลพื้นฐานใน prompt
- ถามให้ระบุแหล่งอ้างอิง

Framework การ Debug

DIRT Method

D - Diagnose: วิเคราะห์ว่าอะไรผิด
I - Identify: ระบุสาเหตุ
R - Refine: ปรับปรุง prompt
T - Test: ทดสอบซ้ำ

การวิเคราะห์ปัญหา

ใช้ prompt นี้เพื่อวิเคราะห์:

"ผลลัพธ์ที่ได้จาก prompt นี้:
[prompt เดิม]

คือ:
[ผลลัพธ์ที่ได้]

แต่ต้องการ:
[ผลลัพธ์ที่อยากได้]

ช่วยวิเคราะห์ว่า:
1. อะไรที่ทำให้ได้ผลลัพธ์ที่ไม่ตรง
2. ควรปรับ prompt อย่างไร
3. เขียน prompt ใหม่ให้"

เทคนิคการ Debug

1. Isolate Variables

ปัญหา: ไม่รู้ว่าส่วนไหนของ prompt ทำให้ผิด

วิธี: ลบทีละส่วน แล้วทดสอบ

Prompt เดิม:
"เขียนบทความ SEO เกี่ยวกับ AI สำหรับธุรกิจ SME
ความยาว 1000 คำ ใช้ภาษาทางการ
รวม keywords: AI, SME, ธุรกิจ, เทคโนโลยี"

ทดสอบ:
Round 1: ลบ keywords → ดูผล
Round 2: ลบข้อกำหนดความยาว → ดูผล
Round 3: ลบข้อกำหนดภาษา → ดูผล

หาว่าส่วนไหนทำให้เพี้ยน

2. Add Constraints Incrementally

เริ่มจาก prompt ง่ายๆ แล้วเพิ่มทีละอย่าง:

Version 1: "เขียนบทความเกี่ยวกับ AI"
→ ดูผล (baseline)

Version 2: "เขียนบทความเกี่ยวกับ AI สำหรับ SME"
→ ดูผล (เพิ่ม target audience)

Version 3: เพิ่ม "ความยาว 800 คำ"
→ ดูผล

Version 4: เพิ่ม "เน้น use cases จริง"
→ ดูผล

ถ้าเพี้ยนที่ version ไหน = ปัญหาอยู่ตรงนั้น

3. Use Examples (Few-shot)

เมื่อ AI ไม่เข้าใจว่าต้องการอะไร:

❌ Prompt ที่ไม่ชัด:
"เขียนรีวิวสินค้าให้น่าสนใจ"

✅ Prompt พร้อมตัวอย่าง:
"เขียนรีวิวสินค้าในสไตล์นี้:

ตัวอย่าง:
'ลองใช้มาแล้ว 2 สัปดาห์ ต้องบอกเลยว่าเกินคาด!
ชอบตรงที่ [จุดเด่น] แต่ยังมีข้อที่ปรับปรุงได้คือ
[ข้อเสีย] โดยรวมให้ 4/5 ⭐'

ตอนนี้เขียนรีวิวสำหรับ: [สินค้า]"

4. Explicit Negation

บอกว่า "ไม่ต้องการ" อะไร:

"เขียน product description

✅ ต้องการ:
- เน้น benefits
- ภาษาเข้าใจง่าย
- กระชับ

❌ ไม่ต้องการ:
- ศัพท์เทคนิคมากเกินไป
- เกินจริง/ใช้ superlatives
- ยาวเกิน 150 คำ
- Bullet points (ต้องการ prose)"

5. Role Specification

ถ้า AI ตอบในมุมมองที่ไม่ถูกต้อง:

❌ "อธิบาย Machine Learning"
→ อาจได้คำตอบที่ technical เกินไป

✅ "คุณเป็นครูที่สอนเด็ก ม.ปลาย
อธิบาย Machine Learning ให้เข้าใจง่าย
ใช้การเปรียบเทียบกับสิ่งในชีวิตประจำวัน"

6. Step-by-Step Breakdown

ถ้า output ไม่ครบถ้วน:

❌ "วางแผนการตลาดสำหรับสินค้าใหม่"

✅ "วางแผนการตลาดสำหรับสินค้าใหม่

ทำทีละขั้นตอน:
1. วิเคราะห์ target audience
2. กำหนด positioning
3. เลือก channels
4. สร้าง content strategy
5. กำหนด budget allocation
6. ตั้ง KPIs

แสดงผลแต่ละขั้นตอนอย่างละเอียด"

Debugging Checklist

Before Sending Prompt

☐ มี context เพียงพอหรือไม่?
☐ ระบุ format ชัดเจนหรือยัง?
☐ กำหนดความยาวหรือยัง?
☐ บอก audience/ระดับความยากหรือยัง?
☐ มีตัวอย่างถ้าจำเป็นหรือไม่?
☐ ระบุสิ่งที่ไม่ต้องการหรือยัง?

After Receiving Output

☐ ตอบตรงคำถามหรือไม่?
☐ Format ถูกต้องหรือไม่?
☐ ความยาวเหมาะสมหรือไม่?
☐ ข้อมูลน่าเชื่อถือหรือไม่?
☐ โทน/ภาษาเหมาะสมหรือไม่?
☐ ขาดอะไรหรือไม่?

ตัวอย่าง Debugging Sessions

ตัวอย่าง 1: Blog Post ที่ไม่ตรงใจ

Prompt v1:
"เขียนบทความเกี่ยวกับ AI"

ผลลัพธ์: ได้บทความกว้างมาก ไม่มี focus

Prompt v2:
"เขียนบทความเกี่ยวกับ AI สำหรับ SME
เน้น use cases ที่ใช้ได้จริง"

ผลลัพธ์: ดีขึ้น แต่ยาวเกินไป

Prompt v3:
"เขียนบทความเกี่ยวกับ AI สำหรับ SME
เน้น 3 use cases ที่ใช้ได้จริง
ความยาว 600-800 คำ
โครงสร้าง: intro, 3 use cases, สรุป"

ผลลัพธ์: ตรงใจ ✅

ตัวอย่าง 2: Code ที่ไม่ทำงาน

Prompt v1:
"เขียน function Python ดึงข้อมูลจาก API"

ผลลัพธ์: ได้ code แต่ไม่มี error handling

Prompt v2:
"เขียน function Python ดึงข้อมูลจาก API
- รองรับ error handling
- retry 3 ครั้งถ้า fail
- timeout 30 วินาที"

ผลลัพธ์: ดีขึ้น แต่ไม่มี type hints

Prompt v3:
"เขียน function Python ดึงข้อมูลจาก REST API

Requirements:
- Type hints (Python 3.10+)
- Error handling with try/except
- Retry logic (3 attempts)
- Timeout: 30 seconds
- Return JSON as dict
- Include docstring

ใช้ library: requests"

ผลลัพธ์: Complete ✅

ตัวอย่าง 3: Summary ที่ขาดประเด็น

Prompt v1:
"สรุปบทความนี้: [บทความ]"

ผลลัพธ์: Summary แต่ขาดประเด็นสำคัญ

วิเคราะห์: AI อาจไม่รู้ว่าประเด็นไหนสำคัญ

Prompt v2:
"สรุปบทความนี้: [บทความ]

เน้น:
1. ปัญหาหลักที่กล่าวถึง
2. วิธีแก้ไขที่เสนอ
3. ผลลัพธ์ที่คาดหวัง
4. ข้อจำกัด

รูปแบบ: bullet points
ความยาว: 5-7 ประเด็น"

ผลลัพธ์: ครบถ้วน ✅

Advanced Debugging

1. A/B Testing Prompts

ทดสอบ 2 versions พร้อมกัน:

Version A:
"เขียน email marketing สำหรับ promotion
Focus: benefits ของสินค้า"

Version B:
"เขียน email marketing สำหรับ promotion
Focus: pain points ที่แก้ได้"

เปรียบเทียบผลลัพธ์ เลือก version ที่ดีกว่า

2. Meta-Prompting

ใช้ AI ช่วย debug prompt:

"Prompt นี้:
[prompt ที่มีปัญหา]

ให้ผลลัพธ์ที่ไม่ตรงต้องการ
ช่วยวิเคราะห์และปรับปรุงให้หน่อย

ปัญหาที่เจอ:
- [ระบุปัญหา]

ต้องการผลลัพธ์แบบ:
- [อธิบาย]"

3. Temperature Tuning

ถ้าผลลัพธ์ไม่ consistent:

Temperature สูง (0.8-1.0):
- ผลลัพธ์หลากหลาย creative
- เหมาะกับ brainstorming

Temperature ต่ำ (0.1-0.3):
- ผลลัพธ์ consistent
- เหมาะกับงานที่ต้องการความแม่นยำ

ปรับตาม use case

สรุป

Debugging Prompt Checklist:

  1. Diagnose: วิเคราะห์ว่าอะไรผิด
  2. Isolate: หาว่าส่วนไหนมีปัญหา
  3. Refine: ปรับทีละส่วน
  4. Test: ทดสอบซ้ำ
  5. Document: จดไว้เป็น reference

เทคนิคหลัก:

  • เพิ่ม constraints ทีละอย่าง
  • ให้ตัวอย่าง (few-shot)
  • ระบุสิ่งที่ไม่ต้องการ
  • แยก prompt เป็นขั้นตอน
  • ใช้ role specification

อ่านเพิ่มเติม:


เขียนโดย

AI Unlocked Team