Chuyển tới nội dung chính

Chapter 5 — Workflow Patterns

Phase 2

Câu hỏi trung tâm: Khi nào cần orchestration và khi nào một call là đủ?

🔒 Chapter chưa mở

Nội dung chi tiết sẽ được unlock dần. Dưới đây là outline.


Outline

5.1 — Tại sao cần workflow

  • Một LLM call ≠ một sản phẩm
  • Ví dụ: "tóm tắt 50 trang PDF" — một call không đủ context window
  • Ví dụ: "phân loại email rồi draft reply" — cần ít nhất 2 bước
  • Nguyên tắc: bắt đầu bằng 1 call, chỉ thêm bước khi cần

5.2 — 5 Pattern cốt lõi

PatternMô tảKhi nào dùng
ChainOutput bước A → input bước BTask tuần tự, mỗi bước transform data
RoutingClassify input → chọn handler phù hợpMulti-intent, khác nhau về cách xử lý
ParallelizationChạy nhiều LLM call đồng thờiNhiều subtask độc lập, cần tốc độ
Orchestrator-Workers1 LLM phân task → N LLM workers thực thiTask phức tạp, cần planning
Evaluator-Optimizer1 LLM generate → 1 LLM evaluate → lặp lạiCần chất lượng output cao

5.3 — Chain deep dive

  • Gate: kiểm tra output trước khi chuyển bước tiếp
  • Error propagation: bước A fail thì bước B xử lý thế nào
  • Lab: build chain 3 bước — extract → validate → transform

5.4 — Routing deep dive

  • Classification prompt → chọn handler
  • Fallback khi classify sai
  • Lab: email router — phân loại intent rồi chọn response template

5.5 — Parallelization & Orchestrator-Workers

  • asyncio.gather() — chạy song song nhiều LLM call
  • Orchestrator pattern: 1 model lên plan, N model thực thi
  • Khi nào overhead orchestration lớn hơn lợi ích
  • Lab: tóm tắt nhiều tài liệu song song

5.6 — Evaluator-Optimizer

  • Generate → Evaluate → Feedback → Re-generate
  • Self-critique: model đánh giá chính output của mình
  • Giới hạn: khi nào loop vô ích (diminishing returns)

Checkpoint

  • Phân biệt Chain vs Orchestrator-Workers — khi nào dùng cái nào?
  • Vẽ sơ đồ workflow cho bài toán: "User upload CV → extract info → match với JD → generate cover letter"
  • Khi nào thêm bước orchestration là overkill?

Tiếp theo: Chapter 6 — Agent Loop & Capstone →