Claude Certification Guide
0% chương trình học đã hoàn thành

Tra cứu nhanh: Lĩnh vực 1 — Kiến trúc Agentic & Điều phối

Agentic Loop

Chu trình thực thi cốt lõi: Gửi yêu cầu → Kiểm tra stop_reason → Thực thi tool hoặc kết thúc.

  • stop_reason: "tool_use" — Claude muốn gọi tool. Vòng lặp tiếp tục.
  • stop_reason: "end_turn" — Claude đã hoàn thành. Vòng lặp kết thúc.
  • Kết quả tool phải được thêm vào lịch sử hội thoại trước vòng lặp tiếp theo. Nếu không, Claude không thể suy luận về những gì tool đã trả về.
  • Trường stop_reason là tín hiệu kết thúc đáng tin cậy duy nhất. Nó có tính tất định và không mơ hồ.

Ba anti-pattern (phải nắm vững):

Anti-PatternVì Sao Sai
Phân tích ngôn ngữ tự nhiên ("Tôi xong rồi")Mơ hồ — Claude có thể nói "đã xong bước 1" trong khi vẫn định tiếp tục
Dùng giới hạn số vòng lặp làm cơ chế điều khiển chínhHoặc cắt ngang công việc hữu ích, hoặc chạy các vòng lặp không cần thiết
Kiểm tra content[0].type == "text"Claude có thể trả về văn bản cùng với khối tool_use trong cùng một phản hồi

Giới hạn số vòng lặp chỉ chấp nhận được như một lưới an toàn (giới hạn tối đa để ngăn agent chạy mất kiểm soát), không bao giờ là cơ chế dừng chính.

Các Mẫu Điều Phối (Orchestration Patterns)

Mẫu HìnhKhi Nào DùngĐặc Điểm Chính
Tuần tự (Sequential)Các bước phụ thuộc vào output trước đóA → B → C, mỗi bước nhận kết quả của bước trước
Song song (Parallel)Nhiệm vụ con độc lập, độ trễ quan trọngPhân tán rồi hội tụ; các nhiệm vụ không chia sẻ state
PipelineCác giai đoạn có chuyên môn khác nhauDây chuyền lắp ráp; output của bước này là input của bước sau
Thích ứng động (Dynamic Adaptive)Độ phức tạp nhiệm vụ chưa biết trướcMô hình quyết định cách phân rã ngay tại thời điểm chạy
Hub-and-SpokeMẫu hình coordinator + chuyên giaAgent trung tâm ủy quyền cho các subagent chuyên biệt

Quy tắc quyết định: Dùng song song khi các nhiệm vụ con độc lập. Dùng tuần tự khi mỗi bước cần kết quả của bước trước. Dùng thích ứng động khi bạn không thể dự đoán cách phân rã ngay từ khi thiết kế.

Hệ Thống Phân Cấp Guardrail

Hướng dẫn trong prompt mang tính xác suất. Hook mang tính tất định. Đây là điểm phân biệt được kiểm tra nhiều nhất trong lĩnh vực này.

Cơ ChếLoạiCách Thực ThiDùng Cho
Rules trong system promptXác suấtMô hình có thể không tuân thủHướng dẫn phong cách, sở thích không bắt buộc
Hook PreToolUseTất địnhỞ mức code, trước khi thực thiChặn lệnh gọi tool nguy hiểm, xác thực tham số
Hook PostToolUseTất địnhỞ mức code, sau khi thực thiXác thực output, làm sạch kết quả, ghi log kiểm toán

Thứ tự thực thi hook: PreToolUse chạy trước khi tool thực thi. PostToolUse chạy sau. Cả hai đều theo lập trình — không thể bị vượt qua bằng prompt injection.

Khi đề thi nói "luôn phải" hoặc "được đảm bảo" — đáp án là hook, không phải prompt.

Claude Agent SDK

  • AgentDefinition: Khai báo danh tính, system prompt, và các tool khả dụng của một agent.
  • allowedTools: Giới hạn tool mà một agent được phép truy cập. Giới hạn ở mức 4-5 tool mỗi agent.
  • Task tool: Được coordinator dùng để ủy quyền công việc cho subagent. Subagent chạy trong context riêng của nó.
  • Handoff (bàn giao): Chuyển quyền điều khiển giữa các agent. Agent nhận không thừa hưởng lịch sử hội thoại của agent gửi.

Ràng buộc chính: Subagent không chia sẻ bộ nhớ. Mọi ngữ cảnh phải được truyền tường minh qua định nghĩa task hoặc payload bàn giao.

Hệ Thống Đa Agent

Mẫu hình Coordinator + Chuyên gia:

  • Coordinator xử lý việc phân rã nhiệm vụ, sắp xếp trình tự, và tổng hợp kết quả.
  • Các agent chuyên gia được giới hạn trong một lĩnh vực duy nhất (4-5 tool mỗi agent).
  • Việc truyền ngữ cảnh phải tường minh — không có bộ nhớ chia sẻ, không có state ngầm định.

Vì sao dùng các agent chuyên gia thay vì một agent lớn:

  • Bộ tool tập trung giảm lỗi lựa chọn.
  • Context window nhỏ hơn cho mỗi agent giúp tăng độ chính xác.
  • Có thể mở rộng và kiểm thử từng agent chuyên gia độc lập.

Phân rã nhiệm vụ: Coordinator quyết định tại thời điểm chạy cách chia nhỏ công việc. Phân rã cố định phù hợp với nhiệm vụ có thể dự đoán; phân rã động phù hợp với khám phá mở.

Con Người Trong Vòng Lặp (Human-in-the-Loop)

Định dạng bàn giao có cấu trúc (đề thi kiểm tra chính xác mẫu hình này):

  1. Customer ID — Ai bị ảnh hưởng
  2. Tóm tắt — Điều gì đã xảy ra (mang tính sự kiện, không diễn giải)
  3. Nguyên nhân gốc rễ — Vì sao nó xảy ra
  4. Hành động đề xuất — Agent gợi ý gì

Khi nào leo thang: Độ tin cậy dưới ngưỡng, có ngoại lệ chính sách, thao tác có tính phá hủy, ý định mơ hồ mà ngữ cảnh sẵn có không giải quyết được.

Quy tắc chính: Không bao giờ thất bại trong im lặng. Nếu agent không thể hoàn thành nhiệm vụ, nó phải tạo ra một bàn giao có cấu trúc, không phải một thông báo lỗi chung chung.

Phục Hồi Lỗi & Khả Năng Phục Hồi

Chiến LượcKhi Nào Dùng
fork_sessionKhám phá phân nhánh — thử nhiều cách tiếp cận mà không làm ô nhiễm context chính
Khởi động mới + tiêm bản tóm tắtContext đã trở nên lỗi thời hoặc ô nhiễm; bắt đầu hội thoại mới với các dữ kiện đã trích xuất
Retry kèm phản hồi lỗiLỗi tạm thời; gửi lại yêu cầu gốc + output thất bại + lỗi cụ thể cho mô hình
Suy giảm có kiểm soát (Graceful Degradation)Kết quả một phần tốt hơn không có kết quả; trả về những gì đã có kèm metadata

Dấu hiệu ngữ cảnh lỗi thời: Mô hình lặp lại chính nó, mâu thuẫn với các phát biểu trước đó, hoặc bỏ qua kết quả tool gần đây. Cách khắc phục không phải là "thêm context" — mà là khởi động mới với một bản tóm tắt đã được chọn lọc kỹ.

Quy Tắc Quyết Định Cho Kỳ Thi

Nếu câu hỏi nói...Đáp án khả năng cao là...
"được đảm bảo", "luôn phải", "thực thi bắt buộc"Hook (tất định), không phải prompt
"linh hoạt", "thích ứng", "bất ngờ"Ra quyết định do mô hình dẫn dắt
"nhiệm vụ con độc lập"Điều phối song song
"mỗi bước cần output trước đó"Điều phối tuần tự
"kết thúc sớm"Kiểm tra stop_reason, không phải giới hạn số vòng lặp
"agent chạy mất kiểm soát"Giới hạn số vòng lặp làm lưới an toàn
"chia sẻ context giữa các agent"Truyền tường minh (subagent không có bộ nhớ chung)
"nhiệm vụ phức tạp, cấu trúc chưa biết"Điều phối thích ứng động
"tuân thủ", "quy định", "kiểm toán"Thực thi theo lập trình (hook), không phải phán đoán của mô hình

Các Bẫy Thi Thường Gặp

BẫyĐáp Án Đúng
"Tăng giới hạn số vòng lặp để sửa lỗi kết thúc sớm"Sai — hãy sửa cách kiểm tra stop_reason
"Subagent có thể đọc context của coordinator"Sai — mọi context phải được truyền tường minh
"Rules trong system prompt đảm bảo tuân thủ"Sai — prompt mang tính xác suất; hook mới đảm bảo
"Dùng một agent với nhiều tool cho đơn giản"Sai — hãy giới hạn ở 4-5 tool mỗi agent
"Giới hạn số vòng lặp là cơ chế điều khiển chính"Sai — stop_reason mới là chính; giới hạn số vòng lặp chỉ là lưới an toàn
"Có nội dung văn bản trong phản hồi nghĩa là agent đã xong"Sai — văn bản có thể xuất hiện cùng với khối tool_use