在 Claude Code 中使用 DeepSeek V4 Flash / Pro
通过APIMaster在Claude Code中运行DeepSeek V4 Flash和Pro。设置网关和API密钥,切换模型,验证文件读取工具并修复配置错误。
Claude Code能否使用DeepSeek?我们使用Claude Code 2.1.239进行的测试,通过APIMaster的Messages端点成功使用了deepseek-v4-flash和deepseek-v4-pro。 将ANTHROPIC_BASE_URL设置为https://apimaster.ai,提供APIMaster密钥并显式选择模型。此配置可运行DeepSeek,即使客户端名为Claude Code。
实测日期:2026-09-07,Claude Code 2.1.239,Linux。两个模型均返回了预期文本,并完成了文件读取工具的往返测试。所有运行均退出码均为 0。CLI打印了
unrecognized_model,但测试的请求均成功。这些检查并不保证支持Claude Code的所有功能、长时间会话或未来版本。包含Windows / macOS设置命令;记录的测试在Linux上运行。
1. 准备CLI和API密钥
按照环境指南和Claude Code设置指南进行安装。检查您的版本:
claude --version
获取一个APIMaster API密钥,该密钥具有所选DeepSeek模型的访问权限和足够的配额。使用以下会话设置进行本教程;无需覆盖现有的settings.json。
2. 设置网关和密钥
打开一个新的终端,以将这些设置与您通常的CLI会话分开。
macOS / Linux:
export ANTHROPIC_BASE_URL='https://apimaster.ai'
export ANTHROPIC_API_KEY='YOUR_APIMASTER_API_KEY'
unset ANTHROPIC_AUTH_TOKEN
Windows PowerShell:
$env:ANTHROPIC_BASE_URL = 'https://apimaster.ai'
$env:ANTHROPIC_API_KEY = 'YOUR_APIMASTER_API_KEY'
Remove-Item Env:ANTHROPIC_AUTH_TOKEN -ErrorAction SilentlyContinue
此处使用站点根地址,不带/v1:Claude Code会附加/v1/messages。API密钥必须来自APIMaster。这些命令影响此终端及其子进程,而不是您保存的登录文件。不要将真实密钥放在共享的设置文件或仓库中。
3. 发送最小测试请求
claude --bare --setting-sources "" --no-session-persistence --model deepseek-v4-flash --tools "" --output-format json -p "Reply with exactly: DEEPSEEK_TEST_OK"
预期:is_error为false,result为DEEPSEEK_TEST_OK,进程退出码均为 0。将--model更改为deepseek-v4-pro并再次运行。
测试版本的--bare模式使用显式API密钥认证,并跳过正常的后台集成。--setting-sources ""排除保存的设置源,而--tools ""为此文本测试禁用工具。这些是用于排查问题的设置,并非正常使用期间禁用工具的要求。较旧的CLI版本可能不接受所有这些标志。
4. 验证文件读取工具
在当前目录中创建probe.txt,内容如下:
TOOL_PROBE_739182
运行:
claude --bare --setting-sources "" --no-session-persistence --model deepseek-v4-flash --tools Read --allowedTools Read --output-format json -p "Use the Read tool to read probe.txt in the current directory. Reply with only the exact content. Do not guess."
预期:CLI读取文件并返回TOOL_PROBE_739182。使用deepseek-v4-pro重复。这检查模型是否可以请求工具、接收结果然后回答。此测试仅启用Read工具。
对于使用相同终端设置的普通交互式工作:
claude --bare --setting-sources "" --model deepseek-v4-flash
要使用Pro启动:
claude --bare --setting-sources "" --model deepseek-v4-pro
交互式命令省略了--tools "",因此默认工具可用。照常审查权限提示。--bare跳过诸如钩子和自动项目说明等便利功能;在最小设置正常工作后,请有意启用您的正常设置,并检查它们不会覆盖网关或模型。完成后关闭此终端,以离开此会话的环境。
故障排除
| 症状 | 检查内容 |
|---|---|
unrecognized_model |
在2.1.239中观察到两个DeepSeek ID均出现。它并未阻止我们的请求完成。检查最终结果,而不是仅将警告视为失败。 |
| 401或意外的登录提示 | 确认ANTHROPIC_API_KEY已设置,在此终端中移除冲突的ANTHROPIC_AUTH_TOKEN,然后重试裸模式。 |
| 404 | ANTHROPIC_BASE_URL应为https://apimaster.ai,而不是完整的/v1/messages端点或以/v1结尾的基础。 |
未知的--bare选项 |
检查您的版本与测试的2.1.239。如有适当,使用通用安装指南进行更新。 |
无法读取probe.txt |
从文件所在目录运行。对于工具测试,启用Read而不是使用--tools ""。 |
| 选择了不同的模型 | 使用--model传递完整的模型ID,并在启用保存的设置或模型别名覆盖之前检查它们。 |
| 速率限制、配额不足或上游错误 | 阅读错误正文,检查配额和模型权限,并记录时间戳以供支持。 |
常见问题解答
这与使用Claude模型相同吗?
不是。Claude Code是这里的客户端;所选模型是DeepSeek。依赖特定Claude模型的功能不会自动由此设置覆盖。
为什么基础URL与Python SDK示例不同?
Python OpenAI SDK使用https://apimaster.ai/v1并附加/chat/completions。Claude Code使用https://apimaster.ai并附加/v1/messages。使用每个客户端文档中的基础格式。
我可以使用DeepSeek官方密钥与此网关一起使用吗?
本教程要求使用APIMaster颁发的密钥。密钥特定于颁发它们的提供商;仅更改端点不会转移凭据或配额。
是否测试了实际工具使用,还是仅测试了文本回复?
两个模型都测试了这两种情况。工具测试读取了本地文件并返回其内容。它并不保证支持所有工具、后台代理或长时间编码任务。