Claude Platform Docs
  • 消息
  • 托管智能体
  • 管理

Search...
⌘K
第一步
Claude 简介快速入门
使用 Claude 构建
功能概览使用 Messages API停止原因与回退拒绝与回退回退额度
模型能力
扩展思考自适应思考努力程度任务预算(测试版)快速模式(研究预览)结构化输出引用流式传输消息批量处理搜索结果流式传输拒绝多语言支持嵌入
工具
概览工具使用的工作原理教程:构建使用工具的智能体定义工具处理工具调用并行工具使用工具运行器(SDK)严格工具使用工具使用与提示缓存服务器工具故障排除网页搜索工具网页抓取工具代码执行工具顾问工具记忆工具Bash 工具计算机使用工具文本编辑器工具
工具基础设施
工具参考管理工具上下文工具组合工具搜索编程式工具调用细粒度工具流式传输
上下文管理
上下文窗口压缩上下文编辑提示缓存对话中系统消息构建编排模式缓存诊断(测试版)令牌计数
处理文件
Files APIPDF 支持图像与视觉
技能
概览快速入门最佳实践企业技能API 中的技能
MCP
远程 MCP 服务器MCP 连接器
云平台上的 Claude
Amazon BedrockAmazon Bedrock(旧版)AWS 上的 Claude PlatformMicrosoft FoundryVertex AI

Log in
概览
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
消息/工具

Claude 的工具使用

将 Claude 连接到外部工具和 API。了解工具在何处执行以及智能体循环的工作原理。

"Tool use"(工具使用)让 Claude 能够调用您定义的函数或 Anthropic 提供的函数。Claude 会根据用户的请求和工具的描述来决定何时调用工具,然后返回一个结构化的调用,由您的应用程序执行(客户端工具)或由 Anthropic 执行(服务器工具)。

以下是使用服务器工具的最简单示例,其中由 Anthropic 处理执行:

client = anthropic.Anthropic()
response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    tools=[{"type": "web_search_20260209", "name": "web_search"}],
    messages=[{"role": "user", "content": "What's the latest on the Mars rover?"}],
)
print(response.content)

工具使用的工作原理

工具的主要区别在于代码的执行位置。客户端工具(包括用户定义的工具以及 Anthropic 提供 schema 的工具,如 bash 和 text_editor)在您的应用程序中运行:Claude 会返回 stop_reason: "tool_use" 以及一个或多个 tool_use 块,您的代码执行相应操作,然后您发回一个 tool_result。服务器工具(web_search、code_execution、web_fetch、tool_search)在 Anthropic 的基础设施上运行:您可以直接看到结果,无需处理执行过程。

有关完整的概念模型,包括智能体循环以及何时选择每种方法,请参阅工具使用的工作原理。

有关连接到 MCP 服务器的信息,请参阅 MCP 连接器。有关构建您自己的 MCP 客户端的信息,请参阅 modelcontextprotocol.io。



通过严格工具使用保证 schema 一致性

在您的工具定义中添加 strict: true,以确保 Claude 的工具调用始终与您的 schema 完全匹配。请参阅严格工具使用。

工具访问是您可以赋予智能体的最有效能力之一。在 LAB-Bench FigQA(科学图表解读)和 SWE-bench(真实世界软件工程)等基准测试中,即使添加基本工具也能带来显著提升,通常超过人类专家基线。


Claude 何时使用工具

当 tool_choice 使用默认值 {"type": "auto"} 时,Claude 会在每一轮决定是调用工具还是直接回复。当请求与某个工具所描述的能力相匹配,且答案尚不在上下文中时,它会调用工具。对于稳定的知识、创意任务和对话性的轮次,它会直接回复。

这一边界可以通过您的系统提示进行引导。如果 Claude 没有在您预期的情况下调用工具,像 "Use the tools to investigate before responding." 这样的轻量指令可以显著增加工具使用。更强的形式如 "Always call a tool first before responding." 会进一步推动这一行为。相反,"Use your judgment about whether to call a tool or respond directly." 会使触发行为保持保守。

如果您需要硬性保证而非引导,请使用 tool_choice。

每个服务器工具的页面都更详细地描述了其自身的触发边界。例如,请参阅网络搜索工具或代码执行工具。


工具使用示例

有关完整的实践演练,请参阅教程。有关各个概念的参考示例,请参阅定义工具和处理工具调用。


定价

工具使用请求的定价基于以下因素:

  1. 发送给模型的输入令牌总数(包括 tools 参数中的令牌)
  2. 生成的输出令牌数量
  3. 对于服务器端工具,还会产生基于使用量的额外费用(例如,网络搜索按每次执行的搜索收费)

客户端工具的定价与任何其他 Claude API 请求相同,而服务器端工具可能会根据其具体使用情况产生额外费用。

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

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

当您使用 tools 时,API 还会自动为模型包含一个特殊的系统提示以启用工具使用。每个模型所需的工具使用令牌数量如下所列(不包括上述额外令牌)。请注意,该表格假设至少提供了 1 个工具。如果未提供任何 tools,则工具选择为 none 时使用 0 个额外的系统提示令牌。

模型工具选择工具使用系统提示令牌数
Claude Opus 4.8auto、none
any、tool
290 个令牌
410 个令牌
Claude Opus 4.7auto、none
any、tool
675 个令牌
804 个令牌
Claude Opus 4.6auto、none
any、tool

这些令牌数量会加到您的正常输入和输出令牌中,以计算请求的总费用。

有关当前各模型的价格,请参阅模型概览表。

当您发送工具使用提示时,与任何其他 API 请求一样,响应会在报告的 usage 指标中包含输入和输出令牌计数。


后续步骤

工具使用的工作原理

了解工具使用循环、工具在何处执行,以及何时使用工具而非文本回复。


教程:构建使用工具的智能体

从单个工具调用到生产就绪的智能体循环的引导式演练。


工具参考

Anthropic 提供的工具目录以及可选工具定义属性的参考。

Was this page helpful?

  • 工具使用的工作原理
  • Claude 何时使用工具
  • 工具使用示例
  • 定价
  • 后续步骤
497 个令牌
589 个令牌
Claude Opus 4.5auto、none
any、tool
496 个令牌
588 个令牌
Claude Opus 4.1(已弃用)auto、none
any、tool
313 个令牌
315 个令牌
Claude Opus 4(已停用,Vertex AI 除外)auto、none
any、tool
313 个令牌
315 个令牌
Claude Sonnet 4.6auto、none
any、tool
497 个令牌
589 个令牌
Claude Sonnet 4.5auto、none
any、tool
496 个令牌
588 个令牌
Claude Sonnet 4(已停用,Bedrock 和 Vertex AI 除外)auto、none
any、tool
313 个令牌
315 个令牌
Claude Haiku 4.5auto、none
any、tool
496 个令牌
588 个令牌
Claude Haiku 3.5(已停用,Bedrock 和 Vertex AI 除外)auto、none
any、tool
264 个令牌
355 个令牌