Claude Code 配置第三方模型后,内置工具到底用的谁的?

Claude Code 配置第三方模型后,内置工具到底用的谁的?

核心问题:Claude Code 配了智谱(Z.AI)的 key 后,WebSearch、图片分析、web_fetch 这些能力,是用的 Claude/Anthropic 原生的,还是被替换成了 GLM 的?

结论:全部用的是智谱的

Claude Code 配了智谱的地址后,所有请求都发给智谱的服务器。智谱的 API 完全兼容了 Anthropic API 协议,包括模型推理和工具调用。Claude Code 以为自己在跟 Anthropic 对话,实际上全部由智谱后端处理

但需要说明:智谱官方文档推荐用户手动安装 MCP 来获得搜索/图片等能力,并未明确宣称在 API 兼容层实现了 Anthropic 服务端工具。实际上,实测表明这些工具确实可用,是因为智谱在 API 兼容层做了额外处理。


一、原理

Claude Code 客户端
    ↓ 所有 API 请求(推理、搜索、图片、抓取...)
    ↓
ANTHROPIC_BASE_URL → https://open.bigmodel.cn/api/anthropic
    ↓
智谱 API 服务器(兼容 Anthropic 协议)
    ↓ 用 GLM 模型处理 + 实现 Anthropic 工具调用
    ↓ 返回 Anthropic 格式的响应
    ↓
Claude Code 客户端(以为是 Anthropic 返回的)

关键ANTHROPIC_BASE_URL 只替换请求目标地址,请求体、流式协议、工具调用格式都不变。Claude Code 不知道后面是智谱。

来源:Claude Code 环境变量文档 — "override the API endpoint to route requests through a proxy or gateway"
来源:ANTHROPIC_BASE_URL 深度解析 — "only the destination does change; Whatever sits behind that URL just has to accept the same shape of request"


二、模型映射关系

通过环境变量映射,所有 Claude 模型名都指向 GLM:

环境变量 映射到
ANTHROPIC_MODEL glm-5.1
ANTHROPIC_DEFAULT_OPUS_MODEL glm-5.1
ANTHROPIC_DEFAULT_SONNET_MODEL glm-5.1
ANTHROPIC_DEFAULT_HAIKU_MODEL glm-5.1
ANTHROPIC_REASONING_MODEL glm-5.1

来源:https://docs.z.ai/devpack/tool/claude


三、各工具的具体情况

1. WebSearch(联网搜索)→ 用智谱的

WebSearch 是 Anthropic 的服务端工具web_search_20250305),运行在 API 服务器上,不是客户端工具。

Claude Code 的调用机制(来自逆向分析):

  1. Claude Code 创建一个二次对话(secondary conversation)
  2. 发送 web_search_20250305 工具请求到 ANTHROPIC_BASE_URL
  3. API 服务器执行搜索,返回结果

ANTHROPIC_BASE_URL 指向智谱时,这个二次对话也发到智谱。智谱在兼容层实现了 web_search_20250305 工具的处理,所以搜索可用。

说明
Claude Code 调用方式 发送 web_search_20250305 工具请求到 API
实际处理 智谱兼容层拦截,用智谱的搜索服务处理
需要额外配置 MCP? ❌ 实测不需要
官方怎么说? 推荐安装 Search MCP,但未明确说明兼容层已实现

注意:Anthropic 官方文档明确说 WebSearch "在 Bedrock 上不可用",Claude Code 检测到非 Anthropic 端点时会隐藏 WebSearch。但智谱的兼容层看起来成功欺骗了 Claude Code 的检测机制。

来源:WebSearch 逆向分析 — "Claude Code hides the WebSearch tool entirely" for non-Anthropic endpoints
来源:WebSearch 二次对话机制 — 详细描述了 secondary conversation 的请求结构
来源:Anthropic WebSearch 文档 — "Web search is not available on Amazon Bedrock"
来源:Ollama 也做了同样的事 — "Ollama's web search is now built into the Anthropic compatibility layer"

2. 图片分析(Vision)→ 用智谱的

图片分析是模型级能力,图片数据作为 base64 编码随 Messages API 请求发送。

说明
Claude Code 调用方式 图片随 Messages API 请求发送
实际处理 智谱收到请求后用 GLM 视觉模型处理
需要额外配置 MCP? ❌ 不需要,跟着推理走

智谱的 Vision MCP Server(@z_ai/mcp-server)是额外的专用工具包,和模型级视觉能力是两套并行机制

来源:Z.AI Vision MCP 文档 — "pasting an image directly into the client cannot call this MCP Server, as the client will by default transcode the image and call the model interface directly"

3. WebFetch(网页抓取)→ 用智谱的

WebFetch 是客户端 pipeline,运行在 Claude Code 的 Node.js 进程里:

  1. HTML 抓取(客户端本地执行)
  2. Turndown 转 Markdown(客户端本地执行)
  3. 调 Haiku 模型做摘要 → 这个步骤走 API

由于 ANTHROPIC_DEFAULT_HAIKU_MODEL 映射到 glm-5.1,摘要步骤自然用 GLM 处理。

来源:WebFetch 逆向分析 — 详细描述了 Haiku 做 LLM pass 的流程
来源:Claude Code 模型配置ANTHROPIC_DEFAULT_HAIKU_MODEL 用于 "background functionality"


四、总结表

工具 工具类型 配智谱后用谁的 需要手动配置? 确定程度
模型推理 服务端 ✅ GLM-5.1 自动 官方文档确认
WebSearch 服务端工具 ✅ 智谱搜索 不需要(实测) 实测可用,官方未明确承认
图片分析 模型级能力 ✅ GLM 视觉模型 不需要 官方文档确认
WebFetch 客户端 pipeline ✅ GLM-5.1(摘要) 不需要 源码分析确认

五、参考来源

官方文档

源码/逆向分析

社区实践

posted on 2026-06-12 10:00  C_C_菜园  阅读(156)  评论(0)    收藏  举报

导航