工具使用产生的额外令牌来自:

  • API 请求中的 tools 参数(工具名称、描述和模式)
  • API 请求和响应中的 tool_use 内容块
  • API 请求中的 tool_result 内容块

当你使用 tools 时,我们还会自动为模型包含一个特殊的系统提示,以启用工具使用。下面列出了每个模型所需的工具使用令牌数(不包括上面列出的额外令牌):

模型工具选择工具使用系统提示令牌数
Claude 3 Opusauto530 个令牌
Claude 3 Opusany, tool281 个令牌
Claude 3 Sonnetauto159 个令牌
Claude 3 Sonnetany, tool235 个令牌
Claude 3 Haikuauto264 个令牌
Claude 3 Haikuany, tool340 个令牌
Claude 3 Opus (legacy beta: tools-2024-04-04)auto395 个令牌

这些令牌数量将添加到你的正常输入和输出令牌中,以计算请求的总成本。请参阅我们的模型概览表以了解当前每个模型的价格。

当你发送工具使用提示时,就像任何其他 API 请求一样,响应将输出输入和输出令牌计数作为报告的 usage 指标的一部分。

请记住,工具使用通常需要在你的代码和 Claude 之间进行多次往返(执行工具并返回结果),因此单个最终用户查询可能会导致多个 API 请求和相关的令牌成本。设计你的工具和提示时要尽可能简洁,同时仍然提供足够的信息让 Claude 有效地使用工具。