0Pricing
AI Prompt Engineering · บทเรียน

ผู้ประสานงานและผู้ปฏิบัติงาน

การประสานงานตามลำดับชั้น

ผู้ประสานงานและผู้ปฏิบัติงาน เป็นบทเรียน AI Prompt Engineering ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AI Prompt Engineering และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AI Prompt Engineering มีบทเรียนทั้งหมด 4 บทเรียน

รูปแบบผู้ประสานงาน

ในรูปแบบผู้ประสานงานและผู้ปฏิบัติงาน เอเจนต์ผู้ประสานงานเพียงตัวเดียวรับผิดชอบแผนงานและเป้าหมาย ส่วนเอเจนต์ผู้ปฏิบัติงานดำเนินงานย่อยตามขอบเขตและรายงานผลกลับมา ผู้ประสานงานแบ่งงาน มอบหมายงาน รวมผลลัพธ์ และตัดสินใจว่างานเสร็จสิ้นเมื่อใด

  • ผู้ประสานงาน: การวางแผน การกำหนดเส้นทาง การสังเคราะห์ และลำดับการควบคุม
  • ผู้ปฏิบัติงาน: การดำเนินงานที่มุ่งเน้นภายใต้สัญญาที่รัดกุม

ลำดับชั้นนี้รวมการใช้ดุลยพินิจไว้ในจุดเดียว และกระจายงานที่ทำแบบขนานได้ไปยังหลายจุด

การแยกการวางแผนออกจากการดำเนินการ

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

โดยทั่วไป ผู้ประสานงานไม่ควรแตะต้องผลลัพธ์ดิบจากเครื่องมือโดยตรง แต่ควรใช้เหตุผลจากบทสรุปของผู้ปฏิบัติงาน

plan = orchestrator.decompose(goal)        # high-level
results = [worker.run(sub) for sub in plan] # detailed, scoped
final = orchestrator.integrate(results)     # over summaries

คุณภาพการแบ่งงานกำหนดทุกสิ่ง

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

  • งานย่อยที่เป็นอิสระ -> การดำเนินงานแบบขนาน
  • ครอบคลุมครบถ้วน -> ไม่มีส่วนขาดในคำตอบสุดท้าย
plan = {
  'subtasks': [
    {'id': 1, 'goal': '...', 'inputs': [...], 'depends_on': []},
    {'id': 2, 'goal': '...', 'inputs': [...], 'depends_on': [1]}
  ]
}

มอบหมายงานด้วยสัญญาที่รัดกุม

การมอบหมายแต่ละครั้งต้องส่งให้ผู้ปฏิบัติงานเฉพาะเป้าหมาย ข้อมูลเข้า และโครงสร้างผลลัพธ์ที่คาดหวังเท่านั้น ไม่มีสิ่งอื่นเพิ่มเติม ผู้ปฏิบัติงานที่รู้เฉพาะส่วนของตนจะไม่ถูกรบกวนด้วยเป้าหมายที่กว้างกว่า และจะส่งผลลัพธ์ในรูปแบบที่คาดเดาได้ ซึ่งผู้ประสานงานสามารถนำไปรวมได้

ข้อความมอบหมายงานคือสัญญา โดยต้องมีสิ่งส่งมอบที่ชัดเจน รูปแบบที่ชัดเจน และเกณฑ์ระบุว่างานเสร็จแล้วที่ชัดเจน

dispatch = {
  'goal': 'Summarize doc 7 risks',
  'context': doc7,
  'output_schema': {'risks': [{'text': str, 'severity': str}]},
  'done_when': 'all risk clauses covered'
}

การแยกบริบทระหว่างผู้ปฏิบัติงาน

โดยค่าเริ่มต้น ผู้ปฏิบัติงานไม่ควรเห็นบริบททั้งหมดของกันและกัน การแยกบริบทป้องกันไม่ให้ข้อผิดพลาดหรือการสร้างข้อมูลหลอนของผู้ปฏิบัติงานคนหนึ่งปนเปื้อนอีกคน และช่วยให้พรอมต์ของผู้ปฏิบัติงานแต่ละตัวมีขนาดเล็กและแคชได้ ผู้ประสานงานเป็นองค์ประกอบเดียวที่มีมุมมองโดยรวม

ให้ผู้ปฏิบัติงานแบ่งปันข้อมูลกันผ่านบทสรุปที่ผู้ประสานงานตรวจสอบแล้วเท่านั้น ห้ามสื่อสารข้ามกันโดยใช้ข้อมูลดิบ

งานย่อยแบบขนานเทียบกับแบบลำดับ

งานย่อยที่เป็นอิสระ run แบบขนานเพื่อช่วยลดเวลาแฝง ส่วนงานย่อยที่ขึ้นต่อกันต้องเคารพลำดับ การวางแผนของผู้ประสานงานจะเข้ารหัสกราฟการพึ่งพา และระบบขณะทำงานจะจัดลำดับให้สอดคล้องกัน โดยกระจายงานย่อยปลายทางที่เป็นอิสระออกไป แล้วจึงรวมผลลัพธ์

  • การกระจายงาน: มอบหมายงานย่อยที่พร้อมทั้งหมดพร้อมกัน
  • การรวมผลลัพธ์: รอการพึ่งพาให้เสร็จก่อนมอบหมายงานที่ขึ้นต่อกัน
def schedule(plan):
    ready = [t for t in plan if not t['depends_on']]
    run_parallel(ready)
    # then unlock tasks whose deps are now done

การรวมผลลัพธ์และการแก้ไขข้อขัดแย้ง

การรวมผลลัพธ์ไม่ใช่การนำข้อความมาต่อกัน ผู้ประสานงานต้อง reconcile ผลลัพธ์จากผู้ปฏิบัติงานที่ทับซ้อน ขัดแย้ง หรือมีความเชื่อมั่นต่ำให้เป็นผลลัพธ์เดียวที่สอดคล้องกัน โดยตัดสินใจว่าจะเชื่อผลลัพธ์ใดและเปิดเผยข้อขัดแย้งที่ยังไม่ได้รับการแก้ไข

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

merged = orchestrator.reconcile(
  results,
  rules='prefer higher confidence; flag contradictions; re-dispatch on gaps'
)

ผู้ประสานงานในฐานะตัวควบคุม

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

หากไม่มีผู้ประสานงานที่ควบคุมระบบหลายเอเจนต์ ระบบจะวนเวียนจนควบคุมไม่ได้

if iterations > MAX_ITERS or spend > BUDGET:
    return orchestrator.best_effort_answer()

การแบ่งงานแบบเรียกซ้ำ

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

การจำกัดผลกระทบจากความล้มเหลว

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

  • ตรวจสอบผลลัพธ์ที่ผู้ปฏิบัติงานส่งกลับมาทุกครั้งเทียบกับโครงสร้างของผลลัพธ์
  • ลองใหม่แล้วใช้ fallback ห้ามส่งต่อความล้มเหลวดิบขึ้นไป
def collect(worker, dispatch):
    out = worker.run(dispatch)
    if not valid(out, dispatch['output_schema']):
        out = worker.run(clarify(dispatch))
    return out or fallback(dispatch)

พิมพ์เขียวการประสานงาน

พิมพ์เขียวมีดังนี้ ผู้ประสานงานแบ่งงานเป็นแผนกราฟการพึ่งพาที่ตรวจสอบได้ มอบหมายสัญญาที่รัดกุมให้ผู้ปฏิบัติงานซึ่งแยกบริบท ทำงานย่อยที่เป็นอิสระแบบขนาน ตรวจสอบและแก้ไขผลลัพธ์ตามกฎข้อขัดแย้งที่ชัดเจน บังคับใช้ขีดจำกัดและเงื่อนไขหยุด และจำกัดความล้มเหลวของผู้ปฏิบัติงานด้วยการลองใหม่แล้วใช้ fallback การใช้ดุลยพินิจยังคงรวมศูนย์ ส่วนการดำเนินงานยังกระจายออกไป

ตรวจสอบความเข้าใจอย่างรวดเร็ว

คุณกำลังออกแบบระบบผู้ประสานงาน-ผู้ปฏิบัติงานสำหรับงานวิจัยที่มีหัวข้อย่อยหลายหัวข้อซึ่งเป็นอิสระต่อกัน

ทบทวน: ผู้ประสานงานและผู้ปฏิบัติงาน

รวมการวางแผน การกำหนดเส้นทาง การผสานรวม และการควบคุมไว้ที่ผู้ประสานงานเพียงตัวเดียว แล้วมอบหมายการดำเนินงานเฉพาะด้านให้ผู้ปฏิบัติงานที่แยกจากกันภายใต้สัญญาที่รัดกุม แบ่งงานออกเป็นกราฟการพึ่งพาที่ตรวจสอบได้ ดำเนินงานย่อยที่เป็นอิสระแบบขนาน หาข้อสรุปจากผลลัพธ์ด้วยกฎจัดการความขัดแย้งที่ระบุไว้อย่างชัดเจน บังคับใช้ขีดจำกัดงบประมาณและเงื่อนไขหยุด และจำกัดผลกระทบจากความล้มเหลวของผู้ปฏิบัติงานด้วยการตรวจสอบ-ลองใหม่-ใช้ทางเลือกสำรอง ผู้ประสานงานใช้เหตุผลจากบทสรุปเท่านั้น ไม่ใช่การสื่อสารดิบระหว่างกัน เพื่อให้ลำดับชั้นมีความสอดคล้องและควบคุมได้

คำถามที่พบบ่อย

บทเรียน “ผู้ประสานงานและผู้ปฏิบัติงาน” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ผู้ประสานงานและผู้ปฏิบัติงาน” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AI Prompt Engineering ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AI Prompt Engineering มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ผู้ประสานงานและผู้ปฏิบัติงาน”

การประสานงานตามลำดับชั้น คุณปฏิบัติ AI Prompt Engineering ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AI Prompt Engineering หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน AI Prompt Engineering บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ผู้ประสานงานและผู้ปฏิบัติงาน” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน AI Prompt Engineering นี้ได้ไหม

ได้ บทเรียน AI Prompt Engineering ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. บทบาทและความเชี่ยวชาญเฉพาะด้าน
  2. ผู้ประสานงานและผู้ปฏิบัติงาน
  3. การสื่อสารระหว่างเอเจนต์
  4. เอเจนต์อภิปรายและลงคะแนน
← กลับไปที่ AI Prompt Engineering