- ณ ปี 2025 การสร้าง Coding Agent ด้วยตัวเองเป็นหนึ่งในโปรเจกต์ที่ดีที่สุดที่นักพัฒนารายบุคคลควรลองทำ
- เอเจนต์สามารถทำงานได้ด้วยเพียง โค้ด 300 บรรทัด และ ลูปโทเค็นของ LLM และการลองสร้างสิ่งนี้จะเปิดโอกาสให้เปลี่ยนจากผู้บริโภคมาเป็น ผู้ผลิต AI
- องค์ประกอบพื้นฐานคือเครื่องมืออย่าง การอ่านไฟล์, การแสดงรายการไฟล์, การรัน Bash, การแก้ไขไฟล์, การค้นหาโค้ด ซึ่งช่วยให้สร้างความสามารถด้านอัตโนมัติได้จริง
- ในการเลือกโมเดล โมเดลเชิงเอเจนต์ อย่าง Claude Sonnet, Kimi K2 เหมาะสมกว่า และหากจำเป็นก็สามารถเชื่อมต่อโมเดลแบบออราเคิลอย่าง GPT เป็นเครื่องมือเพื่อทำการตรวจสอบในระดับสูงได้
- ในความเป็นจริง ผลิตภัณฑ์เชิงพาณิชย์อย่าง Amp, Cursor, Claude Code, GitHub Copilot ก็ใช้โครงสร้างคล้ายกัน
ภาพรวมเวิร์กช็อป
- เวิร์กช็อปฟรีที่จัดโดย Geoffrey Huntley ซึ่งสอนทั้งวิธีและหลักการของการสร้าง Coding Agent ด้วยตนเองโดยเน้นการลงมือปฏิบัติ
- เปรียบเทียบโครงสร้างและหลักการกับผู้ช่วย AI เชิงพาณิชย์ที่มีอยู่แล้ว เช่น Roo code, Cline, Amp, Cursor, Windsurf, OpenCode พร้อมเปิดโอกาสให้ได้ลองทำเอง
- จากประสบการณ์การสร้างจริง ผู้เข้าร่วมสามารถเติบโตจากผู้ใช้ AI ทั่วไปไปเป็น นักพัฒนาที่ใช้ AI เพื่อสร้างเครื่องมืออัตโนมัติด้วยตนเอง
- โครงสร้างหลักคือการใช้ลูปโทเค็นของ LLM ภายในโค้ดราว 300 บรรทัดเพื่อสร้างความสามารถแบบเอเจนต์
- มีการเพิ่มความสามารถระดับ primitive ของแต่ละเครื่องมือ (อ่าน, แสดงรายการไฟล์, รัน, แก้ไข, ค้นหาโค้ด) และเผยแพร่ตัวอย่างการทำงานจริงพร้อมโค้ดไว้ที่ GitHub repository
เอเจนต์คืออะไร
- ช่วงหลังมานี้คำว่า "เอเจนต์" ถูกใช้กันอย่างกว้างขวาง แต่ความหมายที่แท้จริงและ หลักการทำงานภายใน ยังไม่ชัดเจนนัก
- เมื่ออุปสรรคในการเริ่มสร้างเอเจนต์ลดลง จึงเป็นไปได้ที่จะก้าวข้ามจากผู้บริโภค AI ไปสู่ ผู้ผลิตที่ขับเคลื่อนระบบอัตโนมัติในการทำงาน
- ณ ปี 2025 หลักการสร้างเอเจนต์ ได้กลายเป็นความรู้จำเป็นพอ ๆ กับแนวคิดพื้นฐานของฐานข้อมูลอย่าง Primary key
- บริษัทอย่าง Canva เริ่ม สนับสนุนการใช้ AI ในกระบวนการสัมภาษณ์แล้ว และความสามารถด้านระบบอัตโนมัติด้วย AI ก็กลายเป็นองค์ประกอบสำคัญของการจ้างงาน
- จากนี้ไป สาเหตุที่ตามไม่ทันไม่ใช่เพราะ AI แต่เป็นเพราะไม่ยอมพัฒนาตัวเองและเรียนรู้เครื่องมือใหม่
หลักการสำคัญของ Coding Agent
- Coding Agent ประกอบขึ้นจากเพียง โค้ด 300 บรรทัด และ ลูปโทเค็นของ LLM โดยอาศัยการป้อนโทเค็นแบบวนซ้ำเพื่อทำงาน
- แนวคิดเรื่อง การทำงานพร้อมกัน (concurrent work) มีความสำคัญ
- ตัวอย่าง: แม้อยู่ในระหว่างประชุม Zoom เอเจนต์ก็ยังสามารถทำงานแบบขนานต่อไปได้ ช่วยเพิ่มประสิทธิภาพการทำงานอย่างมาก
- ไม่ใช่ LLM ทุกตัวจะมีความเป็นเอเจนต์
- 'ความปลอดภัยสูง' (เช่น Anthropic, OpenAI)
- 'ความปลอดภัยต่ำ' (เช่น Grok)
- 'ออราเคิล' (เหมาะกับการสรุปและการคิดขั้นสูง)
- 'เชิงเอเจนต์' (เอนเอียงไปทางการลงมือทำ, วนซ้ำเร็ว, เรียกใช้เครื่องมือเก่ง)
- นักพัฒนาควรเข้าใจ ลักษณะเฉพาะของแต่ละโมเดล และเลือกโมเดลให้เหมาะกับเป้าหมาย
- การจัดสรรคอนเท็กซ์วินโดว์แบบมากเกินไปส่งผลให้ประสิทธิภาพลดลง และควรจำไว้ว่า "ยิ่งใส่น้อย ผลลัพธ์ยิ่งดี"
- การลงทะเบียนเครื่องมือ MCP มากเกินไป นำไปสู่ประสิทธิภาพที่ลดลง
- กฎคือ “Less is more” → ควรวางเครื่องมือและข้อมูลในบริบทเท่าที่จำเป็นเพื่อให้ได้ประสิทธิภาพสูงสุด
ลำดับขั้นของการสร้าง Coding Agent
-
1. การลงทะเบียนเครื่องมือและการเรียกใช้ฟังก์ชัน
- ตัวอย่างเช่น ลงทะเบียน เครื่องมือตรวจสอบสภาพอากาศ ให้กับ LLM เพื่อให้ LLM ตอบสนองในรูปแบบการเรียกฟังก์ชันได้เมื่อเจอสถานการณ์ที่เหมาะสม
- MCP(Model Context Protocol) มีลักษณะคล้าย "แบนเนอร์ข้อมูลของฟังก์ชัน" และเพียงลงทะเบียนคำอธิบายของฟังก์ชันก็สามารถเรียกใช้อัตโนมัติได้
-
2. ความสามารถหลักของเครื่องมือ primitive แต่ละชนิด
- อ่านไฟล์(ReadFile): เมื่อส่งพาธเข้ามา จะอ่านเนื้อหาไฟล์เข้ามาเป็นคอนเท็กซ์
- แสดงรายการไฟล์(ListFiles): แสดงรายการไฟล์และโฟลเดอร์ในไดเรกทอรี
- รันคำสั่ง(Bash): ให้ LLM รันคำสั่งเชลล์ของระบบและส่งผลลัพธ์กลับมา
- แก้ไขไฟล์(Edit): ทำให้การสร้างหรือแก้ไขไฟล์ที่ระบุเป็นไปโดยอัตโนมัติ
- ค้นหาโค้ด(CodeSearch): ค้นหาได้อย่างรวดเร็วทั่วทั้งโค้ดเบสตามแพตเทิร์น คีย์เวิร์ด หรือชื่อฟังก์ชัน (ใช้ ripgrep)
-
3. ตัวอย่างและลำดับผลลัพธ์
- เมื่อนำแต่ละเครื่องมือมารวมเข้ากับ LLM ก็สามารถทำงานต่อเนื่องโดยอัตโนมัติได้ด้วยเพียงพรอมป์ต์ภาษาธรรมชาติ เช่น สร้างโค้ด FizzBuzz → ตรวจสอบการรัน, สำรวจไดเรกทอรี → วิเคราะห์เนื้อหา เป็นต้น
- ฟังก์ชันของเครื่องมือจะถูกเรียกตามลำดับให้สอดคล้องกับอินพุตของผู้ใช้หรือสถานการณ์ และวนซ้ำภายในลูปพร้อมส่งคืนผลลัพธ์
- ลำดับการทำงานหลักของเอเจนต์คือ: อินพุตผู้ใช้ → ตัดสินใจว่าจะเรียกเครื่องมือหรือไม่ → รันเครื่องมือ → ใส่ผลลัพธ์เข้าไปในคอนเท็กซ์ → ทำซ้ำ
ความสามารถในการขยายและโอเพนซอร์ส
- ปัจจุบัน Coding Agent ส่วนใหญ่ทำงานบนพื้นฐานของ เครื่องมือโอเพนซอร์สที่มีอยู่แล้ว เช่น ripgrep
- บน GitHub มีโปรเจกต์เอเจนต์ที่เรียบง่ายแต่ทรงพลังอย่าง SST Open Code, mini-swe-agent ซึ่งสร้างด้วยโค้ดเพียง 100 บรรทัด ทำให้สามารถใช้เป็นข้อมูลอ้างอิงด้านประสิทธิภาพและโครงสร้างได้
- นักพัฒนาควรทำความเข้าใจหลักการและการใช้งานผ่านการสร้างด้วยตนเอง มากกว่ามัวแต่เปรียบเทียบผลิตภัณฑ์ที่มีอยู่
- เมื่อนำไปใช้กับงานจริงและระบบอัตโนมัติ การสร้างเอเจนต์ใช้เองและขยายการใช้งานภายในองค์กรจะกลายเป็นความสามารถในการแข่งขัน
บทสรุปและข้อคิด
- Coding Agent ไม่ใช่เทคโนโลยีที่ซับซ้อน แต่ประกอบขึ้นจาก โครงสร้างลูปที่เรียบง่ายและการผสมผสานเครื่องมือ
- หัวใจสำคัญของการสร้าง Coding Agent คือ ความเข้าใจในโครงสร้างและความสามารถในการลงมือทำอย่างรวดเร็ว และประสบการณ์จากการสร้างเองช่วยให้รับมือกับการเปลี่ยนแปลงของเทคโนโลยี AI ได้อย่างกระตือรือร้น
- สิ่งสำคัญในตอนนี้ไม่ใช่ AI เพียงอย่างเดียว แต่คือ การพัฒนาตัวเองอย่างต่อเนื่องและการลงทุนกับความสามารถในการสร้างเครื่องมือ ซึ่งเป็นกลยุทธ์การเติบโตส่วนบุคคลที่สำคัญที่สุด ณ เวลานี้
- “สิ่งที่คุกคามไม่ใช่ AI ที่มาแย่งงานของคุณ แต่คือ เพื่อนร่วมงานของคุณที่ติดอาวุธด้วยเอเจนต์ ทำระบบอัตโนมัติ และทำงานได้เร็วกว่าเดิม”
ยังไม่มีความคิดเห็น