Build
Tool use
Cho model đề xuất lệnh gọi công cụ, còn ứng dụng giữ quyền thực thi
Khai báo tool bằng JSON Schema trong tools. Model có thể trả block tool_use; ứng dụng xác thực input, kiểm tra quyền, thực thi và gửi lại tool_result.
{
"name": "lookup_order",
"description": "Tra cứu trạng thái đơn hàng theo mã",
"input_schema": {
"type": "object",
"properties": {"order_id": {"type": "string"}},
"required": ["order_id"],
"additionalProperties": false
}
}Vòng lặp an toàn
- Gửi message và danh sách tool tối thiểu.
- Chỉ chấp nhận tool name trong allowlist và input hợp schema.
- Kiểm tra quyền của người dùng, timeout, idempotency và giới hạn lượt.
- Yêu cầu xác nhận trước thao tác có tác động ngoài hệ thống.
- Trả kết quả bằng
tool_resultcótool_use_idtương ứng. - Dừng khi
stop_reasonkết thúc hoặc chạm giới hạn.
Năng lực tool phụ thuộc model/định tuyến. Smoke test cưỡng bức tool ngày 13/09/2026 trả HTTP 400; hãy kiểm tra trên key/model của bạn và luôn có fallback không-tool trước khi ship.

