请通过我们的反馈表单分享您对网络搜索工具的使用体验。
支持的模型
网络搜索可用于:- Claude Sonnet 4.5 (
claude-sonnet-4-5-20250929) - Claude Sonnet 4 (
claude-sonnet-4-20250514) - Claude Sonnet 3.7 (已弃用) (
claude-3-7-sonnet-20250219) - Claude Haiku 4.5 (
claude-haiku-4-5-20251001) - Claude Haiku 3.5 (
claude-3-5-haiku-latest) - Claude Opus 4.1 (
claude-opus-4-1-20250805) - Claude Opus 4 (
claude-opus-4-20250514)
网络搜索工作原理
当您在 API 请求中添加网络搜索工具时:- Claude 根据提示决定何时进行搜索。
- API 执行搜索并向 Claude 提供结果。此过程可能在单个请求中重复多次。
- 在其回合结束时,Claude 提供带有引用来源的最终响应。
如何使用网络搜索
您组织的管理员必须在控制台中启用网络搜索。
工具定义
网络搜索工具支持以下参数:JSON
最大使用次数
max_uses 参数限制执行的搜索次数。如果 Claude 尝试的搜索次数超过允许的次数,web_search_tool_result 将是一个包含 max_uses_exceeded 错误代码的错误。
域名过滤
使用域名过滤器时:- 域名不应包含 HTTP/HTTPS 方案(使用
example.com而不是https://example.com) - 子域名会自动包含(
example.com涵盖docs.example.com) - 支持子路径(
example.com/blog) - 您可以使用
allowed_domains或blocked_domains,但不能在同一请求中同时使用两者。
请求级别的域名限制必须与在控制台中配置的组织级别域名限制兼容。请求级别的域名只能进一步限制域名,不能覆盖或超出组织级别列表。如果您的请求包含与组织设置冲突的域名,API 将返回验证错误。
本地化
user_location 参数允许您根据用户的位置本地化搜索结果。
type:位置类型(必须为approximate)city:城市名称region:地区或州country:国家timezone:IANA 时区 ID。
响应
以下是响应结构的示例:搜索结果
搜索结果包括:url:源页面的 URLtitle:源页面的标题page_age:网站最后更新的时间encrypted_content:加密内容,必须在多轮对话中传回以用于引用
引用
引用始终为网络搜索启用,每个web_search_result_location 包括:
url:引用来源的 URLtitle:引用来源的标题encrypted_index:必须为多轮对话传回的参考。cited_text:最多 150 个字符的引用内容
cited_text、title 和 url 不计入输入或输出令牌使用量。
当直接向最终用户显示 API 输出时,必须包含对原始来源的引用。如果您对 API 输出进行修改,包括在显示给最终用户之前重新处理和/或将其与您自己的材料结合,请根据与您的法律团队的协商适当显示引用。
错误
当网络搜索工具遇到错误(例如达到速率限制)时,Claude API 仍然返回 200(成功)响应。错误在响应体中使用以下结构表示:too_many_requests:超过速率限制invalid_input:无效的搜索查询参数max_uses_exceeded:超过最大网络搜索工具使用次数query_too_long:查询超过最大长度unavailable:发生内部错误
pause_turn 停止原因
响应可能包括 pause_turn 停止原因,这表示 API 暂停了长时间运行的回合。您可以在后续请求中按原样提供响应以让 Claude 继续其回合,或者如果您希望中断对话,可以修改内容。
提示缓存
网络搜索与提示缓存配合使用。要启用提示缓存,请在您的请求中添加至少一个cache_control 断点。系统将在执行工具时自动缓存到最后一个 web_search_tool_result 块。
对于多轮对话,在最后一个 web_search_tool_result 块上或之后设置 cache_control 断点以重用缓存内容。
例如,为多轮对话使用提示缓存和网络搜索: