Technology

เป็นเรื่องที่เกี่ยวกับสายงานที่ทำ ใครหลุดเข้ามาอ่าน อาจจะงงงวย

Working Agreement กับ AI: กติกาเล็กๆ ที่ทำให้ Coding Agent ไม่หลุดทาง

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

ช่วงแรกๆ ผมก็สั่งเป็นรอบๆ ไปเหมือนกันครับ วันนี้ให้ช่วยแก้ bug พรุ่งนี้ให้ช่วย refactor อีกวันให้ช่วยเขียน test แต่พอใช้ไปนานๆ จะเริ่มเห็น pattern ว่า หลายเรื่องเราสั่งซ้ำๆ อยู่ตลอด เช่น ก่อน push ต้อง test ก่อน, ถ้าตกลง plan แล้วให้ create task เป็น issue, ห้าม merge dev เอง ต้องขอ approve ก่อน

จนวันหนึ่งผมสังเกตน้องในทีมใช้งาน AI แล้วไม่ได้คุยเรื่องข้อตกลงกันก่อน ผลคือ AI ทำบ้างไม่ทำบ้าง บางรอบจำได้ บางรอบลืม พอปิด session ก็เหมือนต้องเริ่มใหม่ ทั้งที่ขั้นตอนส่วนใหญ่เป็นเรื่องเดิมๆ นั่นแหละครับ

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

Continue reading “Working Agreement กับ AI: กติกาเล็กๆ ที่ทำให้ Coding Agent ไม่หลุดทาง”

MaTamNud: ระบบนัดหมายช่วยโหวตหาวันว่างตรงกันของกลุ่มเพื่อน

ผมมีปัญหาหนึ่งที่เจอบ่อยมาก เวลาเพื่อนๆ ในกลุ่มจะนัดกินข้าว นัดเที่ยว นัดดื่ม หรือจัดทริปกัน คือก่อนจะได้วันนัดจริง ต้องตบตีกันในแชตนานอยู่ ฮ่าๆ

คนนี้ว่างเสาร์ อีกคนว่างอาทิตย์ คนนั้นว่างแค่ช่วงเย็น แฟนอีกคนอ่านแล้วลืมตอบ สุดท้ายต้องมีใครสักคนรับบทเป็นเลขากลุ่ม ไล่ถาม ไถอ่าน คอยสรุป แล้วก็วนกลับมาถามซ้ำอีกทีว่า “ตกลงเอาวันไหนดี!” ฮ่าๆ

ผมเลยทำเว็บเล็กๆ ชื่อ มาตามนัด (MaTamNud) ไว้ช่วยแก้ปัญหานี้แหละ (ใครอยู่ Gen Y คงคุ้นชื่อนี้ ฮ่าๆ) ไอเดียตรงไปตรงมาครับ แทนที่จะไล่ถามทีละคน ก็สร้างนัด แชร์ลิงก์ แล้วให้ทุกคนโหวตวันหรือช่วงเวลาที่ตัวเองว่าง จากนั้นค่อยดูพร้อมกันว่าวันไหนเวลาตรงกันที่สุด ไม่ต้องถาม ไม่ต้องย้อนแชตรวบรวมเพื่อมาสรุป ใครไม่ตอบ ก็ไม่มีชื่ออยู่ในนั้นแหละ ประจานกันไปเงียบๆ

หากอยากลองเล่นเลย กดที่นี่ 👉 https://tamnud.com/

  • ใช้ฟรี (ขี้เกียจทำระบบเก็บตัง)
  • สร้างนัดแล้วแชร์ลิงก์ได้เลย
  • ใช้โหวตเป็นช่วงวันว่าง หรือโหวตเป็นเวลาก็ได้
  • เหมาะกับนัดกิน นัดเที่ยว ปาร์ตี้ สังสรรค์ จัดทริป หรือกิจกรรมกลุ่ม
  • ไม่เก็บข้อมูลใดๆ ใน Server ทั้งสิ้น (มีเก็บ profile ในอุปกรณ์ของผู้ใช้เท่านั้น เพื่อยืนยันว่าเป็นคนดีคนเดิม คนโหวตหรือคนสร้างนัด)

อ่ะ ใครอยากรู้รายละเอียดเพิ่มเติม ก็ไปอ่านกันต่อ…

Continue reading “MaTamNud: ระบบนัดหมายช่วยโหวตหาวันว่างตรงกันของกลุ่มเพื่อน”

Open Knowledge Format ฟอร์แมตกลางของ Knowledge/Dataset สำหรับ AI จาก Google Cloud

ช่วงนี้ผมสนใจเรื่อง knowledge base สำหรับ AI agent มากขึ้น อาจจะต้องใช้ในเรื่องส่วนตัว และใช้เอาไปทำงานด้วย โดยเฉพาะปัญหาที่เอามาคิดว่า ถ้าองค์กรมีข้อมูล business condition, schema, document, changelog และเอกสารกระจัดกระจายอยู่เต็มไปหมด เราจะทำให้ AI เข้าใจ context เหล่านี้ได้อย่างไร

หนึ่งในแนวคิดที่น่าสนใจคือ Open Knowledge Format หรือ OKF จาก Google Cloud ที่เพิ่งเผยแพร่เป็นบทความเมื่อ 13 มิ.ย. ที่ผ่านมานี่เองครับ ซึ่งผมมองว่าแก่นของมันไม่ใช่การสร้าง LLM Wiki ตัวใหม่ แบบของ Karpathy แต่คือการเสนอ ฟอร์แมตกลางสำหรับชุด knowledge/context ให้ AI, agent, data catalog และเครื่องมืออื่นๆ อ่านร่วมกันได้

Continue reading “Open Knowledge Format ฟอร์แมตกลางของ Knowledge/Dataset สำหรับ AI จาก Google Cloud”

AI Spec Writing Checklist: เขียนสเปกให้ AI เดาถูกขึ้น

หลังๆ มานี้ผมใช้ skill พวก grill-me ในการ discovery ความต้องการตนเอง หรือเขียน reqruiement ตั้งต้นแล้วให้ grill-me มาถามเติมต่อ แต่ถึงกระนั้น ในตอนที่ผมเขียน requriement ตั้งต้นเอง ผมก็จะพยามเขียนให้ละเอียดที่สุดเท่าที่ตนเองจะทำได้ โดยเฉพาะ Features และ Business Condition ต่างๆ เพื่อให้ AI ไม่ต้องเดาใจความสำคัญของระบบที่ผมต้องการให้มันทำ และไม่ต้องหงุดหงิดความหลอน (hallucinate) ของมันด้วย

ผมไปอ่านบทความของ Jaroslaw Wasowski เรื่อง How to write specs for AI แล้วรู้สึกว่าตรงกับสิ่งที่ผมทำอยู่ แต่ก็มีบางข้อน่าสนใจที่ผมต้องปรับเพิ่ม โดยเขาพูดตรงๆ ว่า หลายครั้งปัญหาไม่ได้อยู่ที่ model อย่างเดียว แต่อยู่ที่ spec ที่เราเขียนให้มันต่างหาก

เพราะ AI ไม่ได้อ่านใจเราออก ดังนั้นถ้าเราเขียน requirement แบบคลุมเครือ มันก็ไม่ได้หยุดแล้วถามเหมือน senior developer ที่นั่งข้างๆ แต่มันจะเดาต่อจาก pattern ที่มันเคยเห็นมาใน training data แล้วบางทีเดาได้เนียนมาก เนียนจนสรุปออกมา หรือ code ดูเหมือนจะถูกต้อง แต่การใช้งานผิด (เป็นเหตุผลว่าผมต้องมี skill ให้มันตั้งคำถามผมไปเรื่อยๆ นอกจากช่วยคิดแล้ว ผมใช้เพื่อคอยเช็กความเข้าใจของมัน)

Continue reading “AI Spec Writing Checklist: เขียนสเปกให้ AI เดาถูกขึ้น”

วิธีใช้ Fable 5 แบบประหยัด Token

โพสต์ใน X ของ ClaudeDevs ที่พูดถึง pattern การใช้ Fable 5 แบบประหยัด token ผมรู้สึกว่าน่าสนใจมาก เพราะมันแตะปัญหาที่คนทำ AI agent เจอกันจริงๆ คือถ้าเราใช้โมเดลฉลาดสุดทำทุกอย่าง ทั้งคิด อ่านไฟล์ อ่านเว็บ เรียก tool แก้โค้ด รัน test และสรุปผล จะใช้โทเค็นเยอะมาก (ต้นทุนสูงมาก) ทั้งที่หลาย step ไม่ได้ต้องใช้ความฉลาดระดับสูงตลอดเวลา

แนวคิดที่ Anthropic ยกมาคือ ให้ Sonnet 5 เป็น executor ทำงานหลักใน loop ปกติ แล้วให้ Fable 5 เป็น advisor ที่ถูกเรียกเฉพาะตอนต้องใช้ judgment สูง เช่น วางแผน ตัดสินใจ architecture แก้ทางเมื่อเริ่มหลุด หรือ review ก่อนจบงาน ผมว่ามันเป็น pattern ที่ practical มาก เพราะมันไม่ได้พยายามลดคุณภาพด้วยการใช้โมเดลเล็กอย่างเดียว แต่ใช้โมเดลฉลาดให้ถูกจังหวะมากกว่า

Continue reading “วิธีใช้ Fable 5 แบบประหยัด Token”