บทเรียน 22: การมอบหมายงานให้ซับเอเจนต์
บทเรียน 22: การมอบหมายงานให้ซับเอเจนต์ — คู่มือเข้าใจง่ายอ้างอิงจากเอกสารอย่างเป็นทางการ
นี่เป็นส่วนหนึ่งของชุดบทช่วยสอนอย่างเป็นทางการของ Hermes Agent ดูบทช่วยสอนทั้งหมด
ลองนึกภาพว่าคุณเป็นหัวหน้าทีมในโปรเจกต์หนึ่ง คุณจะทำทุกอย่างด้วยตัวเองก็ได้ แต่มันช้าเกินไป คุณกลับแจกจ่ายงานเฉพาะให้เพื่อนร่วมทีม ให้รายละเอียดที่พวกเขาต้องการ แล้วรอให้พวกเขารายงานกลับมา นั่นคือสิ่งที่ การมอบหมายงานให้ซับเอเจนต์ (Subagent Delegation) ทำกับ Hermes Agent — มันช่วยให้เอเจนต์หลักของคุณจ้าง “คนงาน” ชั่วคราวมาจัดการงานเบื้องหลัง
ขั้นตอนที่ 1: ทำความเข้าใจแนวคิดพื้นฐาน
เมื่อคุณเรียกใช้ delegate_task Hermes จะสร้าง เอเจนต์ลูก (child agents) หรือซับเอเจนต์หนึ่งตัวหรือมากกว่า โดยแต่ละตัว:
- ได้รับ บทสนทนาใหม่เอี่ยม — มันไม่รู้ประวัติการแชทของคุณเลย
- เข้าถึงเครื่องมือเดียวกันกับเอเจนต์หลัก
- ทำงานในเซสชันเทอร์มินัลที่แยกจากกัน
- ส่งคืนเฉพาะ บทสรุปสุดท้าย ให้กับเอเจนต์หลัก
ลองคิดเหมือนการส่งเพื่อนร่วมงานไปค้นคว้าหัวข้อหนึ่ง พวกเขาไม่ได้นั่งฟังการประชุมทั้งหมดของคุณ — คุณแค่ส่งโน้ตพร้อมงานและบริบทให้พวกเขา แล้วพวกเขาก็กลับมาพร้อมรายงาน
ขั้นตอนที่ 2: มอบหมายงานเดียว
กรณีการใช้งานที่ง่ายที่สุด: หนึ่งงาน หนึ่งซับเอเจนต์
delegate_task(
goal="Debug why tests fail",
context="Error: assertion in test_foo.py line 42"
)
goal บอกซับเอเจนต์ว่า ต้องทำอะไร ส่วน context ให้ ทุกสิ่งที่จำเป็น ในการทำงานนั้น
ขั้นตอนที่ 3: มอบหมายหลายงานพร้อมกัน
ต้องการให้ทำหลายอย่างพร้อมกันไหม? ส่งรายการงานเข้าไป โดยค่าเริ่มต้น Hermes จะรันซับเอเจนต์พร้อมกันสูงสุด 3 ตัว (คุณเปลี่ยนได้ — ไม่มีขีดจำกัดตายตัว)
delegate_task(tasks=[
{"goal": "Research topic A", "context": "Focus on recent primary sources"},
{"goal": "Research topic B", "context": "Compare the leading explanations"},
{"goal": "Fix the build", "context": "Project root: /home/user/project"}
])
ซับเอเจนต์แต่ละตัวทำงานอย่างอิสระ เอเจนต์หลักจะรอให้ทั้งหมดเสร็จสิ้น แล้วรวมผลลัพธ์เข้าด้วยกัน
ขั้นตอนที่ 4: กฎทอง — ซับเอเจนต์ไม่รู้อะไรเลย
นี่คือจุดที่สำคัญที่สุด โปรดฟังให้ดี:
ซับเอเจนต์เริ่มต้นด้วยความรู้เป็นศูนย์เกี่ยวกับบทสนทนาของคุณ
ถ้าคุณพูดว่า “แก้ข้อผิดพลาด” โดยไม่อธิบายว่า “ข้อผิดพลาด” คืออะไร ซับเอเจนต์จะงงไปหมด คุณต้องส่ง บริบทที่จำเป็นทั้งหมด ในฟิลด์ goal และ context
นี่คือตัวอย่างที่ไม่ดี:
# แย่ - ซับเอเจนต์ไม่รู้ว่า "ข้อผิดพลาด" คืออะไร
delegate_task(goal="Fix the error")
และเวอร์ชันที่ดี:
# ดี - ซับเอเจนต์มีบริบทครบถ้วนตามที่ต้องการ
delegate_task(
goal="Fix the TypeError in api/handlers.py",
context="""The file api/handlers.py has a TypeError on line 47:
'NoneType' object has no attribute 'get'.
The function process_request() receives a dict from parse_body(),
but parse_body() returns None when Content-Type is missing.
The project is at /home/user/myproject and uses Python 3.11."""
)
ให้คิดว่า context เป็นเอกสารสรุปข้อมูล ยิ่งคุณระบุเจาะจงมากเท่าไร ผลงานของซับเอเจนต์ก็จะดีมากขึ้นเท่านั้น
ขั้นตอนที่ 5: นำไปใช้กับเวิร์กโฟลว์จริง
ค้นคว้าแบบขนาน
รวบรวมข้อมูลหลายหัวข้อพร้อมกัน:
delegate_task(tasks=[
{
"goal": "Research the current state of WebAssembly in 2025",
"context": "Focus on: browser support, non-browser runtimes, language support"
},
{
"goal": "Research the current state of RISC-V adoption in 2025",
"context": "Focus on: server chips, embedded systems, software ecosystem"
},
{
"goal": "Research quantum computing progress in 2025",
"context": "Focus on: error correction breakthroughs, practical applications, key players"
}
])
รีวิวโค้ด + แก้ไข
ส่งงานรีวิวและแก้ไขแบบเต็มรูปแบบให้กับบริบทใหม่:
delegate_task(
goal="Review the authentication module for security issues and fix any found",
context="""Project at /home/user/webapp.
Auth module files: src/auth/login.py, src/auth/jwt.py, src/auth/middleware.py.
The project uses Flask, PyJWT, and bcrypt.
Focus on: SQL injection, JWT validation, password handling, session management.
Fix any issues found and run the test suite (pytest tests/auth/)."""
)
สรุป
การมอบหมายงานให้ซับเอเจนต์เป็นวิธีที่ทำให้งานใน Hermes Agent ขนานกันได้ จำประเด็นสำคัญเหล่านี้ไว้:
- ใช้
delegate_taskสำหรับงานเดียวหรือหลายงานพร้อมกัน - ระบุบริบทให้ครบถ้วนเสมอ — ซับเอเจนต์เริ่มต้นจากศูนย์
- ซับเอเจนต์พร้อมกันสูงสุด 3 ตัว โดยค่าเริ่มต้น ปรับแต่งได้หากต้องการมากกว่านั้น
- ซับเอเจนต์แต่ละตัวส่งคืนบทสรุปที่มีโครงสร้าง — สิ่งที่ทำ สิ่งที่พบ ไฟล์ที่เปลี่ยนแปลง ปัญหาที่เจอ
มันเหมือนกับการมีทีมผู้ช่วยที่รู้เฉพาะสิ่งที่คุณบอก — ดังนั้นจงบอกทุกสิ่งที่พวกเขาจำเป็นต้องรู้
ต่อไป: บทช่วยสอน 23 — คัมบัง (Kanban): บอร์ดแชร์แบบถาวรสำหรับการทำงานร่วมกันของหลายเอเจนต์
📖 เอกสารทางการ
この記事は Hermes Agent のเอกสารทางการに基づいています:เอกสารทางการ › user-guide/features/delegation