提升 Claude Code 自定义模型上下文识别容量 200K -> 1M(迎接 DeepSeek V4)
- 内容介绍
- 文章标签
- 相关推荐
很久没有写博客类文本,已经不知道怎么开场了,直接开始吧 首先需要把 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 更新到 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 内置的呀,好像说明不了什么

