ไขข้อข้องใจศัพท์ AI Agent: Harness, Scaffold และคำศัพท์สำคัญที่ควรรู้
ในยุคที่ AI Agent กำลังก้าวหน้าอย่างรวดเร็ว คำศัพท์เฉพาะทางก็ผุดขึ้นมามากมาย ทำให้หลายคน โดยเฉพาะผู้ที่เพิ่งเริ่มต้น หรือแม้แต่ผู้ที่มีประสบการณ์ก็อาจตามไม่ทัน วันนี้เราจะมาไขข้อข้องใจเกี่ยวกับคำศัพท์ที่มักถูกใช้สลับกัน หรือมีความหมายไม่ชัดเจน เพื่อให้การพูดคุยและทำความเข้าใจเกี่ยวกับ AI Agent เป็นไปอย่างราบรื่นยิ่งขึ้น
AI Agent คืออะไร?
โดยพื้นฐานแล้ว AI Agent คือ โมเดลภาษาขนาดใหญ่ (LLM) ที่สามารถรับข้อความและสร้างข้อความตอบกลับได้ แต่ตัวมันเองยังไม่มีความจำระหว่างการเรียกใช้งานแต่ละครั้ง และไม่มีลูปการทำงานต่อเนื่อง โมเดลเหล่านี้สามารถแสดงเจตนาที่จะเรียกใช้เครื่องมือ (Tool) ได้ แต่ต้องการ "Harness" เพื่อทำให้การเรียกใช้นั้นเกิดขึ้นจริง เมื่อนำโมเดลมาห่อหุ้มด้วย "Scaffolding" และ "Harness" มันก็จะกลายร่างเป็น AI Agent ที่สามารถลงมือทำสิ่งต่างๆ ได้
Harness: ชั้นที่กำหนดพฤติกรรมรอบตัวโมเดล
Harness คือชั้นที่อยู่รอบตัวโมเดล มีหน้าที่กำหนดพฤติกรรมต่างๆ เช่น:
- System Prompt: คำสั่งหรือข้อความตั้งต้นที่บอกให้โมเดลรู้ว่าควรทำอะไร
- Tool Descriptions: ข้อมูลเกี่ยวกับเครื่องมือที่ Agent สามารถเรียกใช้ได้
- Response Parsing: วิธีการตีความและแยกแยะข้อความตอบกลับของโมเดล
- Context Management: การจัดการสิ่งที่โมเดลต้องจดจำในแต่ละขั้นตอนการทำงาน (Memory)
Harness เป็นตัวกำหนดว่าโมเดลจะมองเห็นโลกและลงมือทำสิ่งต่างๆ ในนั้นอย่างไร ทั้งในระหว่างการฝึกฝน (Training) และการใช้งานจริง (Inference)
การใช้งานในผลิตภัณฑ์ต่างๆ:
- ผลิตภัณฑ์อย่าง Claude Code, Codex และ Antigravity CLI มักเรียกรวมทั้งหมดนี้ว่า "Harness"
- เอกสารของ Claude Code ระบุไว้ชัดเจนว่า "Claude Code ทำหน้าที่เป็น Agentic Harness รอบตัว Claude"
- ในความหมายที่กว้าง "Harness" หมายถึงทุกสิ่งที่ ไม่ใช่ตัวโมเดล
ความแตกต่างระหว่าง "Scaffold" และ "Harness" จะมีความสำคัญเมื่อเราต้องการพิจารณาแยกส่วนกัน เช่น ในกระบวนการฝึกฝน นอกจากนี้ คำว่า "Scaffold" บางครั้งอาจถูกใช้ในความหมายที่กว้างกว่า ครอบคลุมโครงสร้างพื้นฐานที่ Harness ต้องพึ่งพา เช่น Hooks, Runtime Configuration หรือแม้กระทั่งโครงสร้าง Directory
Scaffold: โครงสร้างพื้นฐานที่ Agent ใช้ทำงาน
Scaffold คือชั้นที่กำหนดว่าโมเดลจะทำงานจากอะไร ซึ่งรวมถึง:
- คำสั่ง (Instructions): สิ่งที่โมเดลได้รับมอบหมายให้ทำ
- เครื่องมือ (Tools): ฟังก์ชันหรือ API ที่โมเดลสามารถเรียกใช้เพื่อโต้ตอบกับโลกภายนอก
- รูปแบบการตอบกลับ (Format): โครงสร้างหรือรูปแบบของข้อความที่โมเดลควรสร้างขึ้น
Scaffold เป็นเหมือนพิมพ์เขียวที่ Agent ใช้ในการทำงาน ช่วยกำหนดกรอบและทิศทางให้ Agent สามารถประมวลผลข้อมูลและตัดสินใจได้อย่างมีประสิทธิภาพ
ความแตกต่างที่สำคัญ: Harness vs. Scaffold
- Harness: คือ กลไกการทำงาน (Execution Layer) ที่เรียกโมเดล จัดการการเรียกใช้เครื่องมือ และตัดสินใจว่าจะหยุดเมื่อใด เป็นสิ่งที่ทำให้ Agent ทำงานได้
- Scaffold: คือ ข้อมูลตั้งต้น (Information Base) ที่โมเดลใช้ในการทำงาน เช่น คำสั่ง เครื่องมือ และรูปแบบการตอบกลับ เป็นสิ่งที่โมเดล ทำงานจาก
ตัวอย่างเช่น ใน Agent สำหรับเขียนโค้ด:
- Scaffold คือ System Prompt, คำอธิบาย Tool ต่างๆ และรูปแบบ Output ที่โมเดลต้องทำตาม
- Harness คือลูปการทำงานที่เรียกโมเดลจัดการ Tool Call และตัดสินใจว่าจะหยุดเมื่อไร
คำศัพท์ AI Agent ที่ควรรู้เพิ่มเติม
🤖 Agent
คือ โมเดล + ทุกสิ่งที่อยู่รอบตัวมัน ที่ทำให้มันสามารถ ลงมือทำ ได้ ไม่ใช่แค่การตอบสนอง เป็นการเปลี่ยนจากการสร้างข้อความธรรมดาไปสู่การกระทำจริงในลูปการทำงาน
🛠️ Tool
คือ กลไกที่ทำให้ Agent เข้าถึงโลกภายนอก ได้ เช่น APIs, Code Interpreters, Databases, Web Search หรือ File Systems โมเดลจะแสดงเจตนาที่จะใช้ Tool ในรูปแบบที่มีโครงสร้าง และ Harness จะรับหน้าที่ส่งต่อไปยังฟังก์ชันที่ถูกต้อง
🧠 Memory
เป็นส่วนหนึ่งของ Context Window ที่มีอยู่ระหว่างการทำงานแต่ละครั้ง (Short-term memory) เช่น ประวัติการสนทนา ผลลัพธ์จาก Tool หรือจะเป็นหน่วยความจำที่คงอยู่ข้ามเซสชัน (Long-term memory) ซึ่งจะถูกจัดเก็บภายนอกและเรียกใช้เมื่อจำเป็น
📜 Policy
คือ พฤติกรรม ที่ Agent ยึดถือ ในสภาวะการณ์ใดๆ Policy จะกำหนดความน่าจะเป็นของการกระทำแต่ละอย่าง ในระบบ LLM ส่วนหนึ่งของ Policy ถูกเรียนรู้ผ่านน้ำหนักของโมเดล (Model Weights) แต่อีกส่วนก็ขึ้นอยู่กับ Scaffold และ Harness ที่อยู่รอบตัว
🧩 Skill
คือ ชุดความรู้ที่นำกลับมาใช้ใหม่ได้ ซึ่งช่วยให้ทำงานหลายขั้นตอนได้สำเร็จ หาก Tool คือ "การกระทำ" (เช่น รันคำสั่งนี้) Skill ก็คือ "เป้าหมาย" (เช่น ตรวจสอบบั๊กนี้ หาข้อสันนิษฐาน เขียนโค้ดแก้ไข)
🔗 Sub-agent
คือ Agent ที่ถูกเรียกโดย Agent อื่น เพื่อจัดการ งานย่อยเฉพาะ โดย Agent นี้จะมี Model และ Scaffold ของตัวเอง และสามารถเรียกใช้ Tool หรือ Sub-agent อื่นๆ ได้อีก
🔄 Orchestrator
คือ ตัวควบคุมระดับสูงที่ ประสานงานการทำงานระหว่าง Agent หลายตัว ซึ่งแตกต่างจาก Harness ที่ขับเคลื่อนโมเดลผ่านลูปการทำงาน Orchestrator จะจัดการ Agent แต่ละตัวในฐานะหน่วยย่อย โดยแต่ละ Agent ก็จะทำงานผ่าน Harness ของตัวเอง
คำศัพท์เฉพาะสำหรับการฝึกฝน (Training)
สำหรับผู้ที่ทำงานด้านการฝึกฝนโมเดล คำศัพท์เหล่านี้จะมีความเกี่ยวข้องมากขึ้น:
🏞️ Environment
คือ สิ่งแวดล้อม ที่ Agent สามารถโต้ตอบด้วย เป็น Object ที่รับ Action เป็น Input อัปเดตสถานะภายใน และส่ง Observation กลับมา
🧑🏫 Trainer
คือ ส่วนที่ทำให้ Agent เก่งขึ้น โดยการรัน Agent หลายๆ Episode ให้คะแนนผลลัพธ์ และใช้คะแนนนี้นำไปอัปเดตน้ำหนักของโมเดลภายใน
🏃 Rollout
คือ การทำงานของ Agent หนึ่งครั้งเต็มรูปแบบ ตั้งแต่ต้นจนจบ ตั้งแต่สิ่งที่ Agent เห็น สิ่งที่มันทำ และรางวัลที่ได้รับในแต่ละขั้นตอน (อาจเรียกว่า Trajectory หรือ Trace)
💯 Reward
คือ คะแนน ที่บอก Algorithm การฝึกฝนว่าโมเดลกำลังพัฒนาไปในทิศทางที่ดีหรือไม่ อาจเป็นคะแนนที่ตรวจสอบได้ (เช่น Test ผ่าน/ไม่ผ่าน) หรือคะแนนที่เรียนรู้มา (เช่น ความชอบของมนุษย์)
สรุป
การทำความเข้าใจคำศัพท์เหล่านี้อย่างชัดเจน จะช่วยให้เราสื่อสารและทำงานกับ AI Agent ได้อย่างมีประสิทธิภาพมากขึ้น แม้ว่าบางคำอาจยังไม่มีนิยามที่เป็นสากล แต่การมีโมเดลความคิด (Mental Model) ที่ดี จะช่วยให้เราติดตามความคืบหน้าและพัฒนาการของเทคโนโลยี AI Agent ได้อย่างไม่หลงทาง
#AI #Agent #Harness #Scaffold #LLM #MachineLearning
ขอบคุณ แหล่งข้อมูล
https://huggingface.co/blog/agent-glossary