Harness Engineering คือวิธีการออกแบบข้อจำกัดเชิงโครงสร้าง เช่น prompt, tool definition และ CI/CD เพื่อป้องกันการทำงานผิดพลาดของ AI agent
Harness Engineering คือวิธีการออกแบบข้อจำกัดเชิงโครงสร้าง เช่น prompt, การกำหนด tool, CI/CD และอื่น ๆ เพื่อป้องกันการทำงานผิดพลาดของ AI agent คำว่า "harness" มีที่มาจากอุปกรณ์บังเหียนม้า (เครื่องมือที่ใช้ควบคุมม้า) และหมายถึงแนวคิดในการควบคุมพลังงานอันทรงพลังให้ปลอดภัย ในยุคปัจจุบันที่ AI agent สามารถดำเนินงานได้อย่างอิสระ การออกแบบ "โครงสร้างที่ควบคุม" ความสามารถดังกล่าวได้กลายเป็นประเด็นหลักที่กำหนดความน่าเชื่อถือของระบบโดยรวม ## เหตุใด Harness Engineering จึงจำเป็นในตอนนี้ [AI agent](slug: ai-agent) ดำเนินการที่ส่งผลกระทบต่อโลกจริง เช่น การจัดการ external API, การอ่านเขียนไฟล์, และการรันโค้ด ผ่าน[ToolCalling (Function Calling)](slug: function-calling) และ[multi-agent system](slug: multi-agent-system) หาก[prompt engineering](slug: prompt-engineering) แบบดั้งเดิมคือเทคนิคที่เพิ่มประสิทธิภาพ "วิธีการสื่อสาร" แล้ว Harness Engineering ก็คือเทคนิคที่ออกแบบโครงสร้างของ "สิ่งที่อนุญาต และสิ่งที่ห้าม" นั่นเอง ยิ่ง agent ทำงานอย่างอิสระมากเท่าใด ความเสี่ยงของ[Hallucination](slug: hallucination) และ[Prompt Injection](slug: prompt-injection) ก็ยิ่งเพิ่มขึ้นเท่านั้น ปัญหาเหล่านี้ไม่สามารถแก้ไขได้ด้วยการปรับ prompt เพียงครั้งเดียว แต่จำเป็นต้องฝังข้อจำกัดไว้ในระดับ system architecture ## องค์ประกอบของ Harness Engineering Harness Engineering ประกอบด้วยการออกแบบที่ครอบคลุมหลาย layer ดังต่อไปนี้ - **การออกแบบข้อจำกัดโครงสร้าง prompt**: ระบุแนวปฏิบัติ, สิ่งที่ห้ามกระทำ, และเงื่อนไขการ escalation อย่างชัดเจนใน system prompt เพื่อกำหนด "กรอบ" การตัดสินใจของ agent - **การจำกัด scope ของการกำหนด tool**: ลดสิทธิ์ของ tool ที่ส่งให้ agent ให้เหลือน้อยที่สุด และตัดเส้นทางการดำเนินการที่ไม่จำเป็นออกในเชิงกายภาพ - **การฝังเข้าใน CI/CD pipeline**: สร้างกลไกที่ให้โค้ดหรือ output ที่ agent สร้างขึ้นผ่านประตูการตรวจสอบอัตโนมัติ เช่น [unit test](slug: unit-test), [E2E test](slug: e2e-test), และ[acceptance test](slug: acceptance-test) - **การออกแบบ human oversight loop**: นำแนวคิด[HITL (Human-in-the-Loop)](slug: hitl) และ[On the Loop](slug: on-the-loop) มาใช้ และกำหนด flow ที่บังคับให้ต้องได้รับการอนุมัติจากมนุษย์สำหรับการตัดสินใจที่มีความเสี่ยงสูง - **การ implement [Guardrail (AI Guardrails)](slug: ai-guardrails)**: จัดวาง output filtering และ input validation แบบหลายชั้น ## แนวคิดในการ implement ในขณะที่ [Context Engineering](slug: context-engineering) เพิ่มประสิทธิภาพคุณภาพและปริมาณของข้อมูลที่ส่งให้ LLM นั้น Harness Engineering เปรียบได้กับงานการกำหนดเส้นแบ่งระหว่างสิ่งที่ agent "ทำได้" และ "ทำไม่ได้" แนวคิดนี้มีความสอดคล้องสูงกับแนวคิด[Shift Left](slug: shift-left) โดยแทนที่จะแก้ไขหลังจากเกิดปัญหา จะฝังข้อจำกัดไว้ตั้งแต่ขั้นตอนการออกแบบเพื่อกำจัดความเสี่ยงล่วงหน้า ในกรณีที่ใช้งาน coding agent อย่าง [Claude Code](slug: claude-code) ในสภาพแวดล้อม production การกำหนด policy อย่างชัดเจนว่าจะอนุญาตให้เข้าถึง directory ใด และห้ามรันคำสั่งใด ถือเป็นตัวอย่างการปฏิบัติที่เป็นแบบฉบับของ Harness Engineering นอกจากนี้ แนวคิดการออกแบบนี้ยังจำเป็นอย่างยิ่งสำหรับการรักษาความสอดคล้องกับ[AI governance](slug: ai-governance) และมาตรฐานความปลอดภัยของ[OWASP](slug: owasp) ## ข้อควรระวังและข้อจำกัด Harness Engineering ไม่ใช่สิ่งที่ครอบคลุมทุกอย่าง หากกำหนดข้อจำกัดเข้มงวดเกินไป ความเป็นประโยชน์ของ agent จะลดลง ในทางกลับกัน หากหลวมเกินไป ก็อาจนำไปสู่พฤติกรรมที่ไม่คาดคิดในลักษณะ[Shadow AI](slug: shadow-ai) การค้นหาสมดุลที่เหมาะสมนั้น การตรวจสอบแบบ iterative ผ่าน[PoC (Proof of Concept)](slug: poc) และการทดสอบโจมตีโดยเจตนาผ่าน[AI Red Teaming](slug: ai-red-teaming) มีประสิทธิภาพอย่างยิ่ง ยิ่ง capability ของ agent มีความซับซ้อนสูงขึ้นเท่าใด การออกแบบ harness ก็ยิ่งต้องพัฒนาตามไปด้วยเท่านั้น สิ่งนี้ไม่ใช่เอกสารที่เสร็จสมบูรณ์แล้วจบ แต่ควรได้รับการปฏิบัติในฐานะ engineering asset ที่ได้รับการปรับปรุงอย่างต่อเนื่องควบคู่ไปกับการดำเนินงานของ agent



"On the Loop" คือรูปแบบการทำงานร่วมกันที่มุ่งเน้นการปรับปรุง harness (สภาพแวดล้อมการทำงาน ข้อจำกัด และเครื่องมือ) มากกว่าการตรวจสอบผลลัพธ์รายชิ้นของ AI agent และถือเป็นบทบาทที่แนะนำสำหรับมนุษย์ในการปฏิบัติด้าน harness engineering

Context Engineering คือสาขาวิชาที่ว่าด้วยการออกแบบและปรับแต่งบริบท (Context) ที่ป้อนให้กับ AI Model อย่างเป็นระบบ ไม่ว่าจะเป็นโครงสร้างของ Codebase, ประวัติ Commit, เจตนาในการออกแบบ (Design Intent) และความรู้เฉพาะด้าน (Domain Knowledge)

AI Agent คือระบบ AI ที่วางแผนและดำเนินงานอย่างอิสระเพื่อบรรลุเป้าหมายที่กำหนด โดยสามารถเรียกใช้ external tools ต่างๆ ในระหว่างการทำงานได้

Agentic Flywheel คือวงจรการเติบโตแบบเสริมแรงตัวเอง ซึ่ง AI Agent ดำเนินงานอย่างอิสระ และข้อมูลรวมถึง Feedback ที่ได้จากผลลัพธ์นั้นจะช่วยพัฒนาความแม่นยำและความสามารถในการตัดสินใจของ Agent เอง ส่งผลให้สามารถมอบหมายงานให้รับผิดชอบได้มากขึ้นเรื่อยๆ

การบำรุงรักษาเชิงพยากรณ์ (Predictive Maintenance) คือวิธีการที่ใช้ AI วิเคราะห์ข้อมูลเซ็นเซอร์และบันทึกการทำงาน เพื่อคาดการณ์ความเสียหายของอุปกรณ์ล่วงหน้าและวางแผนการซ่อมบำรุง