🔥 โปรโมชั่นLifetime เหลือ ฿3,990 (จาก ฿7,990)ดูเลย →
Automation28 กันยายน 2569·7 นาที

Claude Code 1,000 ชั่วโมง: บทเรียนที่ต้องรู้

AiCEO Academy

AiCEO Academy

ผู้ก่อตั้ง AiCEO Academy · ผู้เชี่ยวชาญด้าน AI

Claude Code 1,000 ชั่วโมง: บทเรียนที่ต้องรู้
สรุปสั้นๆ
  • ▸LLM ไม่ deterministic — prompt เดิมให้ผลต่างกันทุกครั้ง ต้องวัดซ้ำหลายรอบ (evals)
  • ▸ให้ Claude ตรวจงานตัวเอง (revision loop) ก่อนส่งผล ดีกว่ารอ output ครั้งเดียว
  • ▸ฝัง context ลงในโค้ดโดยตรง แทนไฟล์ notes/spec แยก เพื่อป้องกัน drift
  • ▸ให้ Claude เขียน prompt แทนเรา (meta-prompting) ผลดีกว่าเขียนเองในงานใหญ่
  • ▸ตัด MCP/skills ที่ไม่ใช้ออก + /compact บ่อยๆ รักษาคุณภาพ context window
  • ▸บอก definition of done เหมือนจ้าง contractor — ไม่ต้องสั่ง step-by-step

ใช้เงิน 31,000 ดอลลาร์และ 1,000 ชั่วโมงกับ Claude Code แล้วเรียนรู้อะไร? บทเรียนจริงเรื่อง evals, revision loop, context window และวิธีมอบงาน AI แบบที่ได้ผลสม่ำเสมอ

Nick Saraev นักพัฒนาระบบ AI และเจ้าของช่อง YouTube ชื่อเดียวกัน ใช้เงินไปกว่า 31,000 ดอลลาร์และเวลากว่า 1,000 ชั่วโมงกับ Claude Code ในช่วงไม่กี่เดือน และสิ่งที่สรุปออกมาไม่ใช่ trick prompt เก๋ๆ แต่เป็นหลักการทำงานที่เปลี่ยนมุมมองตั้งแต่พื้นฐาน

คนส่วนใหญ่ที่ใช้ Claude Code หรือ AI agent ทำงานมักทำผิดพลาดเดิมซ้ำๆ ไม่ใช่เพราะขาดทักษะ แต่เพราะยังไม่เข้าใจธรรมชาติของโมเดลภาษาดีพอ บทความนี้รวบรวมบทเรียนสำคัญที่คนทำงานกับ AI agent ต้องรู้ ไม่ว่าจะสร้างระบบอัตโนมัติ เขียนโค้ด หรือใช้ Claude Code ในงานประจำวัน

  • ให้ Claude ตรวจงานตัวเอง (revision loop) แทนการรอ output ครั้งเดียว
  • ฝัง context ลงในโค้ดโดยตรง ดีกว่าใช้ไฟล์ notes/spec แยก
  • ให้ AI ช่วยเขียน prompt (meta-prompting) แทนการเขียนเอง
  • บริหาร context window — ตัดสิ่งไม่ใช้ออก + /compact บ่อยๆ
  • มอบงานแบบ contractor — บอก done คือยังไง ไม่ใช่ step-by-step

ทำไม Output แรกถึงเชื่อไม่ได้

LLM อย่าง Claude ไม่ใช่ระบบ deterministic — ถ้าส่ง prompt เดิมเข้าไป 10 ครั้ง ผลที่ออกมาจะไม่เหมือนกันทุกครั้ง บางครั้งต่างนิดเดียว บางครั้งต่างโดยสิ้นเชิง ปัญหาที่เกิดขึ้นบ่อยคือคนทดสอบ prompt แล้วได้ผลดีในครั้งแรก ก็รีบเอาไปใช้ในกระบวนการธุรกิจทันที โดยไม่รู้ว่าตัวเองโชคดีที่ได้ "peak" ในการรันครั้งแรกนั้น

แนวคิดที่ถูกต้องคือการทำ evals — รัน prompt เดิมซ้ำอย่างน้อย 10 ครั้ง นับว่ากี่ครั้งที่ให้ผลที่ต้องการ ถ้าได้ 7/10 ก็บันทึกไว้เป็น baseline จากนั้นถ้าแก้ prompt แล้วได้ 8/10 แปลว่า prompt ใหม่ดีกว่า กระบวนการนี้ไม่ต่างจากการทำวิทยาศาสตร์เลย — วัด เปลี่ยนตัวแปร วัดใหม่ เปรียบเทียบ ทำซ้ำจนกว่าจะได้ผลที่สม่ำเสมอพอจะนำไปใช้จริง

สิ่งที่ควรวัดไม่ใช่แค่ว่า output ดูดีไหม แต่ดูดีสม่ำเสมอแค่ไหน ธุรกิจหลายแห่งที่พึ่งพา AI agent ในงานสำคัญมักพังเพราะ prompt ที่ผ่านการทดสอบแค่ครั้งเดียว พอใช้จริงในวันถัดไปคุณภาพกลับไม่เสถียร

Revision Loop: ให้โมเดลตรวจงานตัวเอง

เปรียบง่ายๆ กับการเขียนเรียงความ ไม่มีใครส่งฉบับร่างแรกเป็นงานสุดท้าย แต่คนใช้ AI มักให้โมเดลทำครั้งเดียวแล้วเอาผลลัพธ์ไปใช้เลย ซึ่งไม่ต่างอะไรกับส่งฉบับร่างแรกโดยตรง

วิธีที่ดีกว่าคือสร้าง revision loop ให้โมเดลตรวจงานตัวเองก่อนส่งผล เช่น ถ้าสร้างเว็บ อาจให้ Claude รัน Lighthouse เพื่อดู performance score แล้วนำผลมาปรับก่อนรายงานว่าเสร็จ หรือถ้าสร้างข้อความ อาจให้เปรียบเทียบกับตัวอย่างที่ดีที่เราให้ไว้ก่อน การที่โมเดลมีสิ่งอ้างอิง ไม่ว่าจะเป็น screenshot, ตัวอย่างที่ดี หรือผลทดสอบ จะดึงคุณภาพขึ้นได้ชัดเจนแม้ prompt จะไม่สมบูรณ์แบบ

ยิ่ง revision loop ทำซ้ำมาก คุณภาพสุดท้ายยิ่งสูง นี่คือหัวใจของการสร้างระบบ AI ที่พึ่งพาได้จริงๆ ไม่ใช่แค่ "ใช้แล้วได้บางที"

ฝัง Context ลงในโค้ด แทนไฟล์ Notes แยก

แนวทางเดิมที่หลายคนใช้คือแยก spec หรือ notes ออกเป็นไฟล์ต่างหาก แล้วให้ Claude อ่านก่อนทำงาน ปัญหาคือพอโค้ดอัปเดตไปเรื่อยๆ จาก V1 ถึง V3 ถึง V5 ไฟล์ notes มักอัปเดตไม่ทัน ทำให้เกิดความคลาดเคลื่อนระหว่าง "สิ่งที่โค้ดทำจริง" กับ "สิ่งที่โมเดลคิดว่าโค้ดทำ" และเมื่อสองสิ่งนี้ drift ออกจากกัน ผลลัพธ์จะเริ่มแปลกและคาดเดาไม่ได้

วิธีที่ดีกว่าคือ inline context โดยตรงในโค้ด ใส่ comment อธิบาย logic, เหตุผล และข้อตกลงสำคัญไว้ใน codebase เลย ด้วยวิธีนี้ทุกครั้งที่ Claude อ่านโค้ด มันจะเห็น context ที่ถูกต้องและเป็นปัจจุบันอยู่เสมอ ไม่มีปัญหา "notes เก่า" อีกต่อไป ข้อยกเว้นคือ CLAUDE.md ซึ่งเหมาะกับการเก็บ preferences และ lessons learned ที่ไม่เปลี่ยนตามโค้ด เช่น วิธีที่อยากให้ Claude ทำงาน หรือข้อห้ามเฉพาะโปรเจกต์

ให้ AI เขียน Prompt แทนเรา

แทนที่จะนั่งคิด prompt ยาวๆ ด้วยตัวเอง ให้บอก Claude แค่ว่า "อยากได้อะไร สำหรับใคร" แล้วขอให้มันช่วยสร้าง Claude จะถามคำถามกลับมา เช่น "กลุ่มเป้าหมายคือใคร?" "output ที่ดีหน้าตาเป็นยังไง?" "มีตัวอย่างไหม?" และจากคำตอบเหล่านั้นจะสร้าง prompt ที่ดีกว่าที่เราเขียนเองได้มาก

Claude ถูก train มาให้สื่อสารกับ AI agent อื่น ทำให้มันเข้าใจว่า prompt ที่ดีควรมีองค์ประกอบอะไรได้ดีกว่ามนุษ์ส่วนใหญ่

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

บริหาร Context Window ก่อนมันจะเต็ม

ก่อนที่เราจะพิมพ์คำแรก context window ของ Claude ก็ถูกใช้ไปแล้วส่วนหนึ่งโดยอัตโนมัติ ทั้งจาก system prompt, tools ในตัว, MCP connectors, memories และ skills รวมกันอาจกินพื้นที่ไปถึง 30% ก่อนที่งานจริงจะเริ่มต้นด้วยซ้ำ

แนวทางที่ใช้ได้จริงคือ ปิด MCP และ skills ที่ไม่ได้ใช้ ในเซสชันนั้นๆ และใช้คำสั่ง /compact บ่อยๆ แทนที่จะรอให้ระบบ compact เอง เพราะ context rot — คุณภาพที่ลดลงเมื่อ context เยอะขึ้น — เริ่มเกิดก่อนที่ window จะเต็มจริงๆ เมื่อทำงานบน prompt ที่ออกแบบมาอย่างดีแล้ว ควรเปิด session ใหม่แล้ว paste prompt นั้นเข้าไป แทนที่จะต่อ context เดิมที่ยาวอยู่แล้ว ผลลัพธ์จะดีกว่าและถูกกว่าด้วย

มอบงานแบบ Contractor และวิเคราะห์ก่อน Fix

Claude รุ่นปัจจุบันไม่ต้องการคำแนะนำ step-by-step อีกต่อไป วิธีที่ได้ผลดีกว่าคือบอกแค่ definition of done ว่างานเสร็จหน้าตาเป็นอย่างไร แล้วปล่อยให้มันหาวิธีเอง เหมือนจ้าง contractor ที่มีประสบการณ์ — ไม่ต้องสอนทุก step แค่บอกว่าอยากได้อะไรและเมื่อไหร่ถือว่าเสร็จ

สำหรับการ debug ควรถามว่า "ลิสต์ปัญหาทั้งหมดก่อน อย่าเพิ่งแก้" เพราะถ้าบอกให้ fix เลย Claude อาจแก้สิ่งที่ไม่ได้อยากให้แก้ด้วย พอเห็น list ปัญหาครบแล้วค่อยเลือกว่าจะแก้อันไหน ประหยัดทั้ง token และเวลา ไม่ต้องแก้ย้อนหลังในรอบถัดไป

สุดท้าย เมื่อเซสชันยาวขึ้นจน context เริ่มเสื่อมคุณภาพ ให้ขอสรุปว่าเราอยู่ตรงไหน มีอะไรค้างอยู่ แก้ไขสิ่งที่ไม่ถูกต้อง แล้ว handoff ไปเริ่มเซสชันใหม่ พร้อมกับใช้ /btw สอบถาม side questions ระหว่างที่โมเดลกำลังทำงาน วิธีนี้ทำให้ไม่ต้องรอให้งานเสร็จก่อนถึงจะถามคำถามได้

บทสรุป

ทั้งหมดนี้ไม่ใช่ trick สั้นๆ แต่เป็นระบบวิธีคิดในการทำงานกับ AI agent การเข้าใจว่าโมเดลภาษาไม่ deterministic, ต้องการ revision loop, ต้องการ context ที่ถูกต้องและทันสมัย และทำงานได้ดีที่สุดเมื่อเราบอก "ปลายทาง" แทน "เส้นทาง" คือความแตกต่างระหว่างคนที่ใช้ AI ได้ผลจริงกับคนที่ยังติดอยู่กับการ prompt ไปเรื่อยๆ โดยไม่เห็นผล

ลองเริ่มจากสิ่งง่ายๆ ก่อน รัน prompt ที่ใช้บ่อยสัก 5-10 ครั้ง แล้วดูว่า output สม่ำเสมอแค่ไหน แค่นั้นก็จะเปลี่ยนมุมมองในการใช้ AI ไปได้มากแล้ว

แหล่งข้อมูล

คำถามที่พบบ่อย

Evals คืออะไร และทำไมถึงสำคัญกับการใช้ AI?+

Evals คือการรัน prompt เดิมซ้ำหลายครั้ง (เช่น 10 ครั้ง) แล้วนับว่ากี่ครั้งที่ได้ผลที่ต้องการ เพราะ LLM ไม่ใช่ระบบ deterministic — prompt เดิมอาจให้ผลต่างกันทุกครั้ง การทำ evals ช่วยให้รู้ว่า prompt เสถียรแค่ไหนก่อนนำไปใช้จริง

Revision loop คืออะไร?+

Revision loop คือการให้โมเดลตรวจงานตัวเองก่อนส่งผล เช่น ให้รัน test, เปรียบเทียบกับตัวอย่างที่ดี หรือดู performance score แล้วปรับปรุงก่อนรายงานว่าเสร็จ — คุณภาพสุดท้ายจะสูงกว่าการให้ทำครั้งเดียว

Meta-prompting แตกต่างจากการเขียน prompt ปกติอย่างไร?+

แทนที่จะเขียน prompt ยาวๆ เอง ให้บอก Claude แค่ว่าอยากได้อะไร สำหรับใคร แล้วให้มันช่วยสร้าง Claude จะถามคำถามกลับมาเพื่อเข้าใจความต้องการให้ครบ ผลที่ได้มักดีกว่าการเขียนเองเพราะโมเดลถูก train มาให้เข้าใจ prompt structure

ควรใช้ /compact เมื่อไหร่?+

ควรใช้ /compact บ่อยกว่าที่ระบบจะ compact ให้เอง เพราะ context rot เริ่มเกิดก่อนที่ window จะเต็มจริงๆ การ compact เร็วกว่ากำหนดช่วยรักษาคุณภาพ output และลดต้นทุน

#claude code#ai agent#prompt engineering#evals#llm#claude#automation

แชร์บทความนี้:

🔥 โปรโมชั่นพิเศษ — Lifetime เหลือ ฿3,990 (จาก ฿7,990)ดูโปรโมชั่น →