题目
工具定义、调用请求、实际执行和结果回传之间如何衔接?
答案
工具定义是给模型看的“使用说明”,包含名称、用途和参数 Schema。它不会自动执行业务代码。运行时还需要维护“工具名 → 处理函数”的映射。
模型返回工具名、参数和调用 ID 后,运行时解析参数,校验类型、权限和业务前置条件,再调用对应函数。执行结束后,将真实返回值包装成工具结果,通过同一个调用 ID 交回模型。

例如模型请求 `get_order(order_id="A123")`,真正访问数据库的是后端函数。模型读到查询结果后,才决定回复还是继续申请退款。
流式响应可能把参数 JSON 拆成多段,必须等调用完整再校验和执行。执行记录、业务幂等键和模型调用 ID 用途不同,应分别保存,便于恢复和排查。
