是什么
model-config 描述 Claude Code 的模型选择机制,包括模型别名、各提供商的模型 ID 格式、切换方式和版本固定策略。
核心机制
模型别名
| 别名 | 行为 |
|---|---|
default | 清除模型覆盖,恢复账号推荐模型 |
best | 最强模型,当前等同于 opus |
sonnet | 日常编码任务的最新 Sonnet |
opus | 复杂推理的最新 Opus |
haiku | 简单任务的快速轻量模型 |
sonnet[1m] | Sonnet + 1M token context window |
opus[1m] | Opus + 1M token context window |
opusplan | Plan 阶段用 Opus,执行阶段切换到 Sonnet |
各提供商的别名解析
- Anthropic API / Claude Platform on AWS:
opus→ Opus 4.7,sonnet→ Sonnet 4.6 - Bedrock / Vertex / Foundry:
opus→ Opus 4.6,sonnet→ Sonnet 4.5(低一个版本)
设置模型的优先级
- Session 内:
/model <alias|name>或/model打开选择器 - 启动时:
claude --model <alias|name> - 环境变量:
ANTHROPIC_MODEL=<alias|name> - Settings 文件:
"model": "sonnet"
/model 选择保存到 user settings,跨 session 持久化。--model 和 ANTHROPIC_MODEL 仅当次 session 有效。
固定具体版本
# 使用完整模型名
export ANTHROPIC_MODEL=claude-sonnet-4-6
# 或通过环境变量固定别名解析
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-4-7
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-4-6各提供商的模型 ID 格式
- Anthropic API:完整模型名,如
claude-opus-4-7 - Bedrock:inference profile ARN
- Foundry:deployment name
- Vertex:version name
关键细节
- Opus 4.7 需要 Claude Code v2.1.111+,运行
claude update升级 - 项目
.claude/settings.json固定了模型时,个人选择会写入.claude/settings.local.json保持生效 - Managed settings 优先级最高,下次启动时重新应用
ANTHROPIC_BASE_URL改变请求目标,不改变模型选择;路由到 gateway 见 llm-gateway
与其他概念的关联
- settings - 模型配置在 settings.json 中的位置
- llm-gateway - 通过 gateway 使用自定义模型名
- fast-mode - Opus 的高速模式配置
实践要点
- 团队部署固定具体版本,避免别名指向的模型升级影响稳定性
opusplan别名适合需要深度规划但执行阶段不需要最强模型的场景- 同时运行多个不同模型的 session:用
--model标志启动,不要用/model切换