ผมเลิกเขียน Prompt ให้ดีขึ้น แต่ผมเริ่มออกแบบ AI Skills ให้ดีขึ้นแทน

ผู้คนใช้เวลาสองปีหมกมุ่นอยู่กับการทำ prompt engineering พวกเขาต้องการคำตอบที่ดีขึ้นผ่าน prompt ที่ดีขึ้น

ผมได้ตระหนักถึงบางสิ่งที่แตกต่างออกไปหลังจากได้ทำงานกับ AI coding agents อนาคตไม่ใช่เรื่องของ prompt ที่ดีขึ้น แต่อนาคตคือการออกแบบความสามารถของ AI ที่นำกลับมาใช้ซ้ำได้ (reusable AI capabilities)

Claude Skills คือตัวแทนของการเปลี่ยนแปลงนี้

บ่อยครั้งที่เราเขียน prompt ยาวเหยียด คุณบอกให้ AI สวมบทบาทเป็น architect คุณบอกให้มันใช้ TypeScript คุณบอกให้มันเขียน test มันอาจจะทำงานได้ดีในครั้งแรก แต่พรุ่งนี้คุณก็ต้องคัดลอกข้อความมหาศาลเดิมนั้นมาวางใหม่อีกครั้ง ในที่สุด prompt ของคุณก็จะกลายเป็นเอกสารที่มีความยาวถึง 700 บรรทัด ซึ่งไม่มีใครอยากจะมานั่งดูแลรักษา (maintain) มันหรอก

เลิกบอก AI ว่าต้องทำงานอย่างไรในทุกๆ ครั้ง แต่จงแพ็กความรู้นั้นไว้เพียงครั้งเดียว

Prompt ทำงานได้เพียงหนึ่งการสนทนา แต่ Skill สามารถทำงานได้ในการสนทนาที่ไม่จำกัด

Skill ที่ดีที่สุดควรปฏิบัติตามหลักการทางวิศวกรรมซอฟต์แวร์ (software engineering principles)

  • Skill ที่ไม่ดี: ช่วยในการพัฒนา (development)
  • Skill ที่ดี: ดึงข้อมูลที่มีโครงสร้าง (structured data) ออกจากแบบฟอร์ม PDF

Skill ที่ดีควรทำงานเพียงอย่างเดียวให้ดีที่สุด

อย่าใช้ไฟล์ขนาดใหญ่ไฟล์เดียวสำหรับทุกอย่าง จงแบ่งความรับผิดชอบ (split responsibilities) ใช้ไฟล์อ้างอิงและสคริปต์ นี่เหมือนกับการทำ lazy loading ในซอฟต์แวร์ โดยที่ AI จะโหลดบริบท (context) เฉพาะเมื่อจำเป็นต้องใช้เท่านั้น

เลิกขอให้ AI ทำงานที่โค้ดทำได้ดีกว่า

  • AI ควรทำหน้าที่ใช้เหตุผล (reason)
  • Code ควรทำหน้าที่คำนวณ (compute)

อย่าขอให้ AI parse ไฟล์ PDF แต่จงใช้ parser อย่าขอให้ AI คำนวณค่าต่างๆ แต่จงรัน Python อย่าขอให้ AI เรียงลำดับข้อมูล (sort data) แต่จงรันสคริปต์

ใช้หลักการ progressive disclosure อย่ามอบคู่มือ 500 หน้าให้เด็กฝึกงานตั้งแต่วันแรก ให้พวกเขาเพียงหน้าเดียว และให้ข้อมูลเพิ่มเติมเมื่อพวกเขาต้องการเท่านั้น

สิ่งนี้จะนำไปสู่:

  • การตอบสนองที่เร็วขึ้น
  • การใช้ token ที่น้อยลง
  • การโฟกัสที่ดีขึ้น
  • การเกิด hallucination ที่น้อยลง

นักพัฒนาหลายคนพยายามสร้าง "super prompt" เพียงหนึ่งเดียว พวกเขาต้องการ prompt เดียวที่สามารถสร้างเว็บไซต์, เขียน backend และแก้บั๊กได้ นี่คือการออกแบบที่แย่ มันเหมือนกับการเขียน class เดียวที่ทำทุกอย่าง

Skill ที่มีขนาดเล็กและเฉพาะเจาะจงจะทำงานได้ดีกว่า

หากคุณไม่สามารถอธิบายวัตถุประสงค์ของ skill ได้ภายในประโยคเดียว แสดงว่ามันทำงานมากเกินไปแล้ว

เรากำลังเปลี่ยนจากการสร้างซอฟต์แวร์ไปสู่การออกแบบพฤติกรรม (behavior) Stack ใหม่ของเราจะมีลักษณะดังนี้:

  • Frontend
  • Backend
  • AI Agent
  • Skills
  • Tools

Skill ไม่ได้ทำให้ AI ทำงานได้โดยอัตโนมัติ (autonomous) แต่มันคือการรวบรวมความเชี่ยวชาญ (expertise) ไว้ คุณยังคงเป็นผู้ตัดสินใจเรื่อง architecture, security และ quality โดยที่ Skill จะทำหน้าที่แพ็กการตัดสินใจเหล่านั้นเอาไว้

Prompt engineering สอนให้เรารู้จักวิธีตั้งคำถาม ส่วน skill engineering สอนให้ AI รู้จักวิธีแก้ปัญหา

ผู้ชนะในยุค AI จะไม่ใช่แค่ผู้ที่มีโมเดลที่ฉลาดที่สุดเท่านั้น แต่จะเป็นผู้ที่มีคลังความรู้ที่นำกลับมาใช้ซ้ำได้ดีที่สุด

Source: https://dev.to/himanshudevgupta/i-stopped-writing-better-prompts-i-started-designing-better-ai-skills-5ckj

Optional learning community: https://t.me/GyaanSetuAi