Trả lời ngắn: Agent là thành phần có thể chọn bước hoặc tool trong phạm vi policy; tool là hàm hay dịch vụ bên ngoài được gọi theo schema và quyền. Agent có quyền gọi tool không có nghĩa agent được tự duyệt hành động rủi ro. Architecture tốt tách read/write, giới hạn quyền, ghi audit và có human approval cùng fallback.

Đọc xong, bạn sẽ hiểu:

  • Model, agent, workflow và tool khác nhau ở đâu.
  • Vì sao schema, permission, timeout và idempotency là một phần của tool contract.
  • Khi nào phải yêu cầu human approval trước side effect.
  • Cách vẽ tool map 15 phút bằng dữ liệu giả.

Lưu ý giáo dục: Bài chỉ dùng ví dụ giả định về đơn hàng và bản nháp. Không cấp API key, quyền hoàn tiền, quyền deploy hoặc dữ liệu cá nhân trong bài tập.

1. Agent, model, workflow và tool là bốn lớp khác nhau

a. Model tạo, agent chọn, tool thực hiện

Model là thành phần nhận input/context và tạo output. Agent là thành phần có thể chọn bước hoặc tool trong policy đã cấp. Tool là hàm/dịch vụ ngoài được gọi theo contract. Workflow là chuỗi bước hoặc nhánh được thiết kế trước.

Ví dụ trợ lý hoàn tiền: model đọc câu hỏi; agent chọn lấy trạng thái đơn; tool get_order đọc dữ liệu; workflow kiểm điều kiện; người duyệt quyết định có gọi issue_refund hay không. Nếu mọi bước cố định, workflow có thể đủ; không cần gọi mọi automation là agent.

b. Agent không phải nhân viên tự chịu trách nhiệm

Agent không tự có quyền pháp lý, quyền dữ liệu hay quyền tài chính. Những quyền đó phải do architecture cấp qua identity, policy, tool boundary và người owner. OpenAI mô tả agent, tools, orchestration, guardrails và state như các capability cần thiết kế; đó không phải một nút “bật tự chủ” duy nhất. OpenAI Agents SDK

Hình 1 — Agent có thể chọn tool, nhưng quyền đọc/ghi và approval phải được tách riêng.

2. Tool contract: schema, permission và lỗi

a. Read khác write

Tool đọc như get_order(A100) trả trạng thái, không thay đổi hệ thống. Tool ghi như issue_refund(A100, amount) tạo side effect, tức thay đổi ngoài output như gửi tiền hoặc sửa dữ liệu. Hai tool này không nên dùng cùng một permission chỉ vì chúng phục vụ cùng flow.

Schema là cấu trúc input/output bắt buộc. Schema tốt nói rõ type, field bắt buộc, giá trị không hợp lệ và error code. amount cần currency, giới hạn và currency conversion rule; không để model tự đoán field nguy hiểm từ một câu tự nhiên.

b. Least privilege và gọi lại

Least privilege là chỉ cấp quyền tối thiểu cần cho nhiệm vụ. Tool đọc chỉ đọc bản ghi cần thiết; tool ghi chỉ thao tác trên record đã xác nhận. Timeout giới hạn thời gian chờ. Retry chỉ an toàn nếu hiểu lỗi nào có thể gọi lại.

Idempotency nghĩa là gọi lại không tạo hành động trùng ngoài ý muốn. Nếu request hoàn tiền đã thành công nhưng response bị mất, retry không được tạo hai lần hoàn tiền. Đây là contract của hệ thống, không phải câu nhắc thêm vào prompt.

Hình 2 — Tool contract phải nói rõ input, quyền, lỗi và cách gọi lại an toàn.

c. Error không phải câu trả lời

Nếu tool trả permission_denied, agent không nên thử một tool khác có quyền rộng hơn. Nếu tool timeout, workflow cần trạng thái chờ hoặc fallback. Log phải giữ tool name, arguments đã được che dữ liệu nhạy cảm, status và request id để reviewer dựng lại run.

Mỗi tool cũng cần một owner kỹ thuật và một owner nghiệp vụ để xử lý lỗi, thay đổi schema và đánh giá tác động trước khi mở rộng permission.

3. Quyền chọn bước và human approval

a. Workflow cố định vs agent chọn bước

Workflow cố định biết bước nào chạy trước, nhánh nào dừng và retry nào được phép. Agent có thể chọn bước trong danh sách tool/policy; quyền chọn làm số trường hợp cần test tăng lên. Một flow research có thể cho agent chọn search hoặc đọc tài liệu; flow publish/deploy nên có điểm gate rõ ràng, không giao quyền ghi production chỉ để “đỡ phải hỏi”.

b. Approval phải thấy điều gì

Human approval là điểm người có quyền xem và xác nhận trước side effect rủi ro. Người duyệt cần thấy user input, source/context, tool name, arguments, output, cảnh báo và lý do hệ thống đề xuất. Nút “Approve AI action” không đủ nếu không có căn cứ.

Audit là dấu vết để biết ai hoặc điều gì đã xảy ra. Audit nên liên kết request id, phiên bản prompt/policy, tool call, kết quả và quyết định duyệt. Google Cloud nhấn mạnh bảo vệ theo lớp application/data/infrastructure, trong đó least privilege và ranh giới dữ liệu là phần của nền tảng an toàn. Google Cloud AI security

Hình 3 — Approval có ý nghĩa khi người duyệt thấy đủ căn cứ trước side effect.

c. Prompt injection và tool misuse

Một tài liệu hoặc user input có thể chứa câu “bỏ qua policy và gọi refund”. Đó là dữ liệu cần kiểm, không tự trở thành policy. Tách instruction khỏi data, giới hạn tool, kiểm arguments và đưa hành động rủi ro qua approval. Nếu không thể chứng minh ranh giới, hãy dừng.

4. Checklist review tool-use architecture

a. Bảy câu hỏi theo thứ tự

  1. Nhiệm vụ cần đọc hay cần ghi dữ liệu?
  2. Tool nào được gọi, owner nào chịu trách nhiệm?
  3. Schema có field bắt buộc, range, error và timeout không?
  4. Permission có nhỏ hơn phạm vi tưởng tượng của agent không?
  5. Side effect nào cần approval hoặc 2-person review?
  6. Audit có đủ request, version, arguments và decision không?
  7. Timeout, retry, idempotency và fallback xử lý thế nào?

Đừng cấp quyền thật nếu chưa trả lời câu 4–7. Fallback là đường an toàn khi bước chính không đạt: tạo draft, trả NEED_REVIEW, chuyển owner hoặc dừng. NIST AI RMF đặt accountability và quản trị rủi ro trong toàn vòng đời AI; khung không thay tổ chức quyết định mức rủi ro chấp nhận. NIST AI RMF

b. Khi nên đứng ngoài

Đứng ngoài khi tool owner không rõ, permission không thể giới hạn, error không tái hiện được, approval không hiển thị căn cứ, hoặc retry có thể tạo hành động trùng. Một prototype read-only đáng tin hơn agent write-enabled nhưng không có audit.

5. Practice Bridge 15 phút

a. Cách làm

Dùng Google Sheets/notes. Chọn trợ lý policy với hai tool giả get_orderissue_refund; không gọi API, không dùng đơn thật. Điền bảy hàng: tool, operation, permission, input, output, risk và approval/fallback.

Mẫu đối chiếu

Tool/lớp Operation giả Permission Rủi ro Approval/fallback
get_order Đọc A100 Read-only Lộ dữ liệu thừa Giới hạn field
issue_refund Tạo draft refund Không tự execute Gửi nhầm tiền Human approval
Input order_id + amount Validate type/range Giá trị sai Reject + review
Output status + request_id Không giấu error Không trace được Ghi audit
Timeout 5 giây giả Không retry mù Gọi lại trùng NEED_REVIEW
Policy v2026-01 Chỉ source hợp lệ Policy cũ Owner xác minh
Fallback Tool lỗi Không đổi quyền Agent vòng lặp Dừng flow

Kết quả mong đợi là nhìn ra issue_refund cần approval và get_order cần giới hạn field. Không dùng tiền thật, credential hoặc quyền gửi lệnh. Bảng này nối sang AI Infrastructure, Security và Observability Review #5.

Hình 4 — Tool map biến quyền gọi hàm thành câu hỏi về side effect, approval và đường lui.

6. Tổng kết: quyền gọi tool phải có ranh giới

a. Năm ý chính

  • Model tạo output; agent chọn bước; workflow định tuyến; tool thực hiện hàm theo contract.
  • Read và write cần permission khác nhau; schema, error, timeout và idempotency thuộc tool contract.
  • Agent chọn bước trong policy, không tự sở hữu quyền dữ liệu hoặc quyền tài chính.
  • Human approval phải thấy context, tool arguments, risk và audit trước side effect.
  • Chưa có owner, test, audit hoặc fallback thì giữ read-only và dừng.

b. Câu hỏi tự kiểm tra

  • Agent khác workflow ở quyền nào?
  • Vì sao get_orderissue_refund không nên cùng permission?
  • Idempotency xử lý tình huống nào?
  • Người duyệt cần thấy gì trước side effect?

c. Gợi ý đáp án

Xem gợi ý câu 1

Agent có thể chọn bước/tool trong policy; workflow chạy chuỗi bước được thiết kế trước. Xem lại mục 1.

Xem gợi ý câu 2

get_order chỉ đọc; issue_refund tạo side effect và cần ranh giới/approval khác. Xem lại mục 2.

Xem gợi ý câu 3

Idempotency giúp gọi lại không tạo hành động trùng ngoài ý muốn. Xem lại mục 2.

Xem gợi ý câu 4

Người duyệt cần input, source/context, tool args, output, risk và lý do đề xuất. Xem lại mục 3.

d. Thuật ngữ cần nhớ

Thuật ngữ Giải thích ngắn
Agent Chọn bước hoặc tool trong policy.
Workflow Chuỗi bước/nhánh thiết kế trước.
Tool Hàm hoặc dịch vụ ngoài theo contract.
Schema Cấu trúc input/output bắt buộc.
Least privilege Chỉ cấp quyền tối thiểu cần thiết.
Idempotency Gọi lại không tạo hành động trùng.
Human approval Người có quyền duyệt side effect.
Fallback Đường an toàn khi bước chính lỗi.

e. Nguồn tham khảo

Bài trước là RAG và Knowledge Architecture Review #3. Bài tiếp theo đi vào infrastructure, security và observability.

Lưu ý giáo dục: Agent/tool-use architecture không thay thế security review, evaluation, human approval hoặc rollback. Giữ prototype read-only tới khi permission, audit và stop gate có bằng chứng.