提升 Claude Code 自定义模型上下文识别容量 200K -> 1M(迎接 DeepSeek V4)

2026-04-29 08:253阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐
问题描述: Claude Code 使用原生 `--settings` 选项配置多个自定义模型供应商 开发调优
很久没有写博客类文本,已经不知道怎么开场了,直接开始吧 首先需要把 Claude Code 更新到 1.0.61 及以上版本,Anthropic 在这个版本给 Claude Code 添加了 --settings 选项, 这个也是实现原生多模型供应商配置的切入点 [image] Claude Code Changelog [image] 现在开始配置,打开用户目录下的…

接上一个帖子

这两天看到了 DeepSeek V4 Lite / V4 API 要上线的消息,心里想着又了 1M 上下文之后,Cladue Code × DeepSeek V4 可以爽用了。

紧接着产生一个疑问,Claude Code 是怎么识别自定义模型的上下文长度的?目前配置的 DeepSeek 在 Claude Code 中默认的上下文长度是多少?

DeepSeek 自定义模型配置:

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic", "API_TIMEOUT_MS": "600000", "ANTHROPIC_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-reasoner" } }

image2198×1430 271 KB

/context 命令看了一下,Claude Code 默认会认为模型的上下长度是 200K。想到之前 Sonnet / Opus 测试 1M 上下文模型的时候要用 /model sonnet[1m] 来进行指定,[1m] 这个上下文标识符可能是个突破口。

翻看了一下官方文档,找到了如下描述:

image3656×2436 713 KB

抱着试一试的想法,我修改了自定义模型配置,给模型名称后添加了 [1m] 标识

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic", "API_TIMEOUT_MS": "600000", "ANTHROPIC_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-reasoner[1m]" } }

重新打开 Claude Code,使用 /context 命令再次查看
image2198×1430 294 KB
image2198×1430 256 KB

上下文大小成功识别为 1M,由于之前的源代码已经泄漏了,马上让 DeepSeek 驱动的 Cladue Code 去调查一下上下文容量判断的具体依据是什么

网友解答:
--【壹】--:

嗯呢,有一段时间没关注了,感谢指正补充。


--【贰】--:

看起来可以设置 [1m] 或者 [2m]
Code 2026-04-23 23.02.061920×1329 318 KB


--【叁】--:

注意看懂 我用的是 多Profile载入

主 settings.json 不用写那么多

所以是有优先级覆盖关系的

/model 基本不怎么用了 这个会写往 主 settings.json

所以我没搞懂你的最终诉求是什么 你切换模型 那肯定没啊


--【肆】--:

emmm
我懂你的配置切换逻辑;
然后
我就想知道 [1m]怎么固定的;
我用/mode从OPUS切换到SONNET然后 [1m]就没了;


--【伍】--:

image1474×692 85.6 KB
懂了吗 实际上这一坨呢 只是个模式别名
至于对应什么 列表能够出现什么 都不是直接联系

所以 如果列表里没有 sonnet[1m] 的那个选项

你就 /model sonnet[1m]

完事了


--【陆】--:

用deepseek chat写代码还是干啥呢,还没用过~~


--【柒】--:

大佬有个关于‘1[m]’的问题求助;

# 我在配置文件里面设置了 "model": "opus[1m]",

问题是,我切换模型之后,这个’[1m]'就没了;
然后就得重新手动改配置;


1、我没太懂这个[1m]的配置逻辑;然后就不知道怎么固定
2.配置如下

{ "env": { "ANTHROPIC_BASE_URL": "http://127.", "ANTHROPIC_AUTH_TOKEN": "sk-", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6", "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-6", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001", "ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "deepseek-v4-flash", "ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION": "deepseek-v4-pro", "ENABLE_TOOL_SEARCH": "true", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1", "CLAUDE_CODE_ATTRIBUTION_HEADER": "0", "DISABLE_TELEMETRY": "1" }, "includeCoAuthoredBy": false, "alwaysThinkingEnabled": true, "model": "opus[1m]", "language": "chinese", "editorMode": "normal", "autoCompactEnabled": false, }


--【捌】--:

佬铁接的帖子时间跨越有点长呢哈哈哈哈

事实上这里写的是不太对的 其中的这些DEFAULT只是模型路由而已

而模型选择器上的

  • Default (视版本而定)
  • Haiku
  • Sonnet
  • Opus
  • Custom (如有设定)

所以其实 别名 opus[1m]opus 就能够充当 200K 和 1M的上下文窗口模型路由切换

所以 当需要用 非内部模型ID时(claude时下三种最新模型)

就来用这 几个 AUTHROPIC_DEFAULT_* 模型路由设定

以 Qwen3.6 Plus 为例 (1M上下文)

直接写给 OPUS DEFAULT即可

然后模型选择器里 选 Opus (1M Context) 时下就是 对应的4.7[1M] 但因为我们路由替换顶包成了 qwen3.6-plus
这样就已经达成了目的

细节早已在 Any牌路由器使用清障! 中详细解释过


--【玖】--:

感谢您的耐心解答,我提问的语言组织有待提高;
给您添麻烦了;嘿嘿嘿~


--【拾】--:

因为 DeepSeek V4 Lite 上下文增加到 1M 了,如果 Claude Code 还是使用 200K,会在 200K 附近触发上下文压缩,需要让它识别成 1M


--【拾壹】--:

源代码分析结论:

image1920×1428 231 KB


--【拾贰】--:

雀食凹,已配置环境变量:

export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic export ANTHROPIC_AUTH_TOKEN=sk-xxx export API_TIMEOUT_MS=600000 export ANTHROPIC_MODEL=deepseek-chat[1m] export CLAUDE_CODE_EFFORT_LEVEL=high export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1


--【拾叁】--:

懂了

我的 claude-opus-4-6 映射的是 glm5.1

"env": { "ANTHROPIC_BASE_URL": "http://0000000000:9104", "ANTHROPIC_AUTH_TOKEN": "sk-", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6", "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-6[1m]", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001", "ANTHROPIC_CUSTOM_MODEL_OPTION": "deepseek-v4-pro[1m]", "ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "deepseek-v4-pro[1m]", "ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION": "deepseek-v4-pro[1m]", "ENABLE_TOOL_SEARCH": "true", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1", "CLAUDE_CODE_ATTRIBUTION_HEADER": "0", "DISABLE_TELEMETRY": "1" },

亲测有效,切换模型, [1m] 也不会丢失了,哈哈哈哈,蟹蟹诶


image790×255 7.45 KB

image743×307 9.72 KB


--【拾肆】--:

啊?原来我一直用200k的gpt5.4接到cc用吗?


--【拾伍】--:

200k 和 1m 就是 cc 内置的呀,好像说明不了什么

问题描述: Claude Code 使用原生 `--settings` 选项配置多个自定义模型供应商 开发调优
很久没有写博客类文本,已经不知道怎么开场了,直接开始吧 首先需要把 Claude Code 更新到 1.0.61 及以上版本,Anthropic 在这个版本给 Claude Code 添加了 --settings 选项, 这个也是实现原生多模型供应商配置的切入点 [image] Claude Code Changelog [image] 现在开始配置,打开用户目录下的…

接上一个帖子

这两天看到了 DeepSeek V4 Lite / V4 API 要上线的消息,心里想着又了 1M 上下文之后,Cladue Code × DeepSeek V4 可以爽用了。

紧接着产生一个疑问,Claude Code 是怎么识别自定义模型的上下文长度的?目前配置的 DeepSeek 在 Claude Code 中默认的上下文长度是多少?

DeepSeek 自定义模型配置:

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic", "API_TIMEOUT_MS": "600000", "ANTHROPIC_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-chat", "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-reasoner" } }

image2198×1430 271 KB

/context 命令看了一下,Claude Code 默认会认为模型的上下长度是 200K。想到之前 Sonnet / Opus 测试 1M 上下文模型的时候要用 /model sonnet[1m] 来进行指定,[1m] 这个上下文标识符可能是个突破口。

翻看了一下官方文档,找到了如下描述:

image3656×2436 713 KB

抱着试一试的想法,我修改了自定义模型配置,给模型名称后添加了 [1m] 标识

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic", "API_TIMEOUT_MS": "600000", "ANTHROPIC_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-chat[1m]", "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-reasoner[1m]" } }

重新打开 Claude Code,使用 /context 命令再次查看
image2198×1430 294 KB
image2198×1430 256 KB

上下文大小成功识别为 1M,由于之前的源代码已经泄漏了,马上让 DeepSeek 驱动的 Cladue Code 去调查一下上下文容量判断的具体依据是什么

网友解答:
--【壹】--:

嗯呢,有一段时间没关注了,感谢指正补充。


--【贰】--:

看起来可以设置 [1m] 或者 [2m]
Code 2026-04-23 23.02.061920×1329 318 KB


--【叁】--:

注意看懂 我用的是 多Profile载入

主 settings.json 不用写那么多

所以是有优先级覆盖关系的

/model 基本不怎么用了 这个会写往 主 settings.json

所以我没搞懂你的最终诉求是什么 你切换模型 那肯定没啊


--【肆】--:

emmm
我懂你的配置切换逻辑;
然后
我就想知道 [1m]怎么固定的;
我用/mode从OPUS切换到SONNET然后 [1m]就没了;


--【伍】--:

image1474×692 85.6 KB
懂了吗 实际上这一坨呢 只是个模式别名
至于对应什么 列表能够出现什么 都不是直接联系

所以 如果列表里没有 sonnet[1m] 的那个选项

你就 /model sonnet[1m]

完事了


--【陆】--:

用deepseek chat写代码还是干啥呢,还没用过~~


--【柒】--:

大佬有个关于‘1[m]’的问题求助;

# 我在配置文件里面设置了 "model": "opus[1m]",

问题是,我切换模型之后,这个’[1m]'就没了;
然后就得重新手动改配置;


1、我没太懂这个[1m]的配置逻辑;然后就不知道怎么固定
2.配置如下

{ "env": { "ANTHROPIC_BASE_URL": "http://127.", "ANTHROPIC_AUTH_TOKEN": "sk-", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6", "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-6", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001", "ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "deepseek-v4-flash", "ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION": "deepseek-v4-pro", "ENABLE_TOOL_SEARCH": "true", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1", "CLAUDE_CODE_ATTRIBUTION_HEADER": "0", "DISABLE_TELEMETRY": "1" }, "includeCoAuthoredBy": false, "alwaysThinkingEnabled": true, "model": "opus[1m]", "language": "chinese", "editorMode": "normal", "autoCompactEnabled": false, }


--【捌】--:

佬铁接的帖子时间跨越有点长呢哈哈哈哈

事实上这里写的是不太对的 其中的这些DEFAULT只是模型路由而已

而模型选择器上的

  • Default (视版本而定)
  • Haiku
  • Sonnet
  • Opus
  • Custom (如有设定)

所以其实 别名 opus[1m]opus 就能够充当 200K 和 1M的上下文窗口模型路由切换

所以 当需要用 非内部模型ID时(claude时下三种最新模型)

就来用这 几个 AUTHROPIC_DEFAULT_* 模型路由设定

以 Qwen3.6 Plus 为例 (1M上下文)

直接写给 OPUS DEFAULT即可

然后模型选择器里 选 Opus (1M Context) 时下就是 对应的4.7[1M] 但因为我们路由替换顶包成了 qwen3.6-plus
这样就已经达成了目的

细节早已在 Any牌路由器使用清障! 中详细解释过


--【玖】--:

感谢您的耐心解答,我提问的语言组织有待提高;
给您添麻烦了;嘿嘿嘿~


--【拾】--:

因为 DeepSeek V4 Lite 上下文增加到 1M 了,如果 Claude Code 还是使用 200K,会在 200K 附近触发上下文压缩,需要让它识别成 1M


--【拾壹】--:

源代码分析结论:

image1920×1428 231 KB


--【拾贰】--:

雀食凹,已配置环境变量:

export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic export ANTHROPIC_AUTH_TOKEN=sk-xxx export API_TIMEOUT_MS=600000 export ANTHROPIC_MODEL=deepseek-chat[1m] export CLAUDE_CODE_EFFORT_LEVEL=high export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1


--【拾叁】--:

懂了

我的 claude-opus-4-6 映射的是 glm5.1

"env": { "ANTHROPIC_BASE_URL": "http://0000000000:9104", "ANTHROPIC_AUTH_TOKEN": "sk-", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6", "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-6[1m]", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001", "ANTHROPIC_CUSTOM_MODEL_OPTION": "deepseek-v4-pro[1m]", "ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "deepseek-v4-pro[1m]", "ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION": "deepseek-v4-pro[1m]", "ENABLE_TOOL_SEARCH": "true", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1", "CLAUDE_CODE_ATTRIBUTION_HEADER": "0", "DISABLE_TELEMETRY": "1" },

亲测有效,切换模型, [1m] 也不会丢失了,哈哈哈哈,蟹蟹诶


image790×255 7.45 KB

image743×307 9.72 KB


--【拾肆】--:

啊?原来我一直用200k的gpt5.4接到cc用吗?


--【拾伍】--:

200k 和 1m 就是 cc 内置的呀,好像说明不了什么