3. Prompt Engineering
หน้าหลัก › โมดูล 3: Prompt Engineering
บทเรียน 3.3

คิดก่อน แล้วค่อยทำ

สำหรับงานซับซ้อน การให้ Claude 'คิดและวางแผนก่อนลงมือ' ช่วยให้ได้ผลดีกว่ามาก และคุณ redirect ได้ก่อนที่มันจะทำผิดทาง

เมื่อเรียนจบบทนี้ คุณจะ…

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

ทำไมต้องให้ Claude 'คิดก่อนลงมือทำ'?

ลองนึกภาพว่าคุณกำลังจะสร้างบ้านหลังใหม่ คุณจะบอกผู้รับเหมาว่า 'สร้างบ้านให้ฉันเลย!' ทันทีเลยไหม? หรือคุณจะขอให้เขาวางแผน เขียนแบบบ้าน อธิบายวัสดุที่ใช้ และประมาณงบประมาณก่อน?

การเขียนโปรแกรมก็เหมือนกันครับ โดยเฉพาะงานที่ซับซ้อน การให้ Claude 'คิดและวางแผน' ก่อนที่จะลงมือเขียนโค้ดจริง ๆ เป็นสิ่งสำคัญมาก เพราะมันช่วยให้คุณเห็นภาพรวมว่า Claude เข้าใจโจทย์ของคุณถูกทางหรือไม่ ถ้ามีอะไรผิดพลาดหรือไม่ตรงใจ คุณก็สามารถแก้ไขได้ตั้งแต่เนิ่น ๆ ก่อนที่มันจะเสียเวลาเขียนโค้ดไปแล้ว

การวางแผนเปรียบเสมือนการมีแผนที่นำทาง ทำให้เราไม่หลงทาง

ประโยชน์ของการวางแผน: เห็นก่อน แก้ได้ก่อน ประหยัดเวลา

เมื่อ Claude วางแผนออกมาให้คุณดูก่อน คุณจะได้เห็น 'แนวคิด' (approach) และ 'ขั้นตอน' ที่มันจะใช้ ถ้ามันเข้าใจผิด หรือมีวิธีที่ดีกว่า คุณก็สามารถชี้แนะได้ทันที เหมือนกับการตรวจแบบบ้านก่อนลงมือก่อสร้างจริง ๆ

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

การแก้แผนง่ายกว่าการแก้โค้ดที่เขียนไปแล้วเยอะมาก!

วิธีกระตุ้นให้ Claude 'คิดและวางแผน' อย่างเป็นขั้นตอน

เราต้องบอก Claude ตรง ๆ ว่าเราอยากให้มันคิดและวางแผนก่อนลงมือทำ เหมือนกับการสั่งงานลูกน้องว่า 'ช่วยคิดแผนงานนี้มาให้ฉันดูก่อนนะ' โดยเราสามารถเพิ่มประโยคเหล่านี้ต่อท้ายคำสั่ง (Prompt) ของเราได้ครับ

เทคนิคคือการเพิ่มคำสั่งที่ชัดเจน เพื่อให้ Claude รู้ว่ามันต้อง 'หยุดคิด' ก่อน ไม่ใช่ 'รีบทำ' ทันที

  1. ขั้นที่ 1: บอกเป้าหมายหลักของคุณให้ชัดเจน เช่น 'ฉันอยากสร้างเว็บไซต์แสดงข้อมูลสินค้า'
  2. ขั้นที่ 2: เพิ่มคำสั่งให้ Claude วางแผนก่อน เช่น 'ช่วยอธิบาย approach ก่อนเขียนโค้ด' หรือ 'เสนอ 2-3 ทางเลือกพร้อมข้อดีข้อเสีย'
  3. ขั้นที่ 3: ระบุว่าคุณจะรอตรวจสอบแผนก่อน เช่น 'แล้วรอฉันยืนยัน' หรือ 'ก่อนที่จะลงมือเขียนโค้ด'
ใช้คำสั่งเหล่านี้ท้าย Prompt เพื่อให้ Claude รู้ว่าต้องทำอะไรก่อน

ตัวอย่าง Prompt ที่ใช้ได้จริงและละเอียดขึ้น

นี่คือตัวอย่าง Prompt ที่คุณสามารถคัดลอกไปใช้และปรับเปลี่ยนได้เลยครับ มันจะช่วยให้ Claude คิดและเสนอทางเลือกให้คุณก่อน

ฉันอยาก [เป้าหมายของคุณให้ชัดเจน เช่น 'สร้างระบบจัดการสต็อกสินค้าขนาดเล็กด้วย Python'] ก่อนที่จะลงมือเขียนโค้ดจริง ๆ ช่วยอธิบายแนวทาง (approach) และเสนอ 2-3 ทางเลือกที่เป็นไปได้ พร้อมบอกข้อดีข้อเสียของแต่ละทางเลือกให้ฉันพิจารณาด้วยนะ แล้วรอให้ฉันเลือกและยืนยันก่อนที่จะดำเนินการต่อ

ใน Prompt นี้ [เป้าหมายของคุณให้ชัดเจน...] คือส่วนที่คุณต้องเปลี่ยนให้ตรงกับงานของคุณ ส่วนที่เหลือคือคำสั่งที่กระตุ้นให้ Claude คิดและวางแผนครับ

ลองปรับ [เป้าหมาย] ให้เข้ากับงานของคุณได้เลย

เมื่อไหร่ที่ควรให้ Claude วางแผน? งานเล็กหรืองานใหญ่?

เคล็ดลับง่าย ๆ คือ: ยิ่งงานใหญ่ ซับซ้อน หรือสำคัญมากเท่าไหร่ ยิ่งควรให้ Claude วางแผนก่อนมากเท่านั้นครับ

ลองนึกถึงการทำอาหาร: ถ้าคุณจะทอดไข่เจียว คุณอาจจะไม่ต้องวางแผนอะไรมาก แค่หยิบไข่มาทอดได้เลย แต่ถ้าคุณจะทำอาหารชุดใหญ่สำหรับแขกหลายสิบคน คุณจะต้องวางแผนเมนู วัตถุดิบ และขั้นตอนการทำอย่างละเอียด

เช่นเดียวกัน ถ้าคุณแค่อยากให้ Claude 'เขียนฟังก์ชันบวกเลขสองจำนวน' คุณอาจจะสั่งให้มันทำเลยก็ได้ แต่ถ้าคุณอยากให้มัน 'สร้างระบบ E-commerce ขนาดเล็ก' อันนี้แหละครับที่ต้องให้มันวางแผนอย่างละเอียดก่อน

งานที่มีผลกระทบเยอะ หรือต้องใช้เวลามาก ควรวางแผนเสมอ
ลองใช้ Prompt นี้กับ Claude
ฉันอยาก [เป้าหมาย] ก่อนเขียนโค้ด ช่วยอธิบาย approach และ trade-offs ของแต่ละทางเลือกก่อน แล้วรอให้ฉันเลือก
เคล็ดลับ: ยิ่งงานใหญ่/สำคัญ ยิ่งควรให้วางแผนก่อน — งานเล็กๆ สั่งทำเลยก็ได้
สรุปบทนี้
  • ให้วางแผนก่อนงานซับซ้อน
  • เห็นแผน = redirect ได้ทัน
  • ขอทางเลือกพร้อมข้อดีข้อเสีย
แบบทดสอบท้ายบท
ลองตอบดู แล้วระบบจะเฉลยให้ทันที
ข้อ 1.ทำไมเราถึงควรให้ Claude "คิดและวางแผน" ก่อนลงมือทำ?
เฉลย: การให้ Claude วางแผนก่อนช่วยให้เราตรวจสอบความเข้าใจของมันและแก้ไขได้ทันที ก่อนที่มันจะเสียเวลาทำผิดทาง
ข้อ 2.ข้อใดคือประโยคที่เราสามารถใช้เพื่อกระตุ้นให้ Claude "คิดและวางแผน" ก่อนทำงาน?
เฉลย: ประโยค "อธิบาย approach ก่อนเขียนโค้ด" เป็นหนึ่งในวิธีที่ช่วยให้ Claude วางแผนและแสดงแนวคิดก่อนลงมือทำ