功能

工具调用

让模型提出动作,让产品负责执行

符合条件的路由可以接收 OpenAI-compatible 工具定义。应用仍负责验证参数、授权动作并返回工具结果。

使用 JSON Schema 定义工具

在请求中描述函数与输入契约,并只选择已确认支持工具调用的路由。

tools = [{
  "type": "function",
  "function": {
    "name": "lookup_order",
    "description": "查询当前用户可见的订单",
    "parameters": {
      "type": "object",
      "properties": {"order_id": {"type": "string"}},
      "required": ["order_id"]
    }
  }
}]

执行前验证

将模型生成的参数视为不可信输入。再次校验 Schema,应用用户与工作区授权,并拒绝产品边界之外的动作。

  • 不允许模型选择凭据
  • 检查资源归属与权限
  • 副作用应有超时与幂等控制
  • 记录决定但不记录敏感载荷

返回工具结果

追加一条与 tool call 关联的工具消息,然后通过同一条受治理路由发送更新后的会话。


Fallback 必须保留能力

必须使用工具时,策略路由及任何回退路由都必须保持工具调用资格,不能静默降级到不满足契约的路由。

下一篇工作区