跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI

Claude Code 模型配置详解

综述由AI生成详细讲解了 Claude Code 模型配置的核心参数含义及三种配置方法。内容包括环境变量配置、Python SDK 代码配置以及 settings.json 文件配置。重点介绍了 ANTHROPIC_MODEL、ANTHROPIC_DEFAULT_OPUS_MODEL 等关键参数的作用与适用场景,并提供了具体的代码示例和命令操作指南。此外,文章还说明了默认模型的优先级规则、验证方法及配置注意事项,帮助开发者高效管理 AI 代码助手模型选择。

虚拟内存发布于 2026/4/6更新于 2026/5/2227 浏览

模型配置解释

一、核心参数含义与作用

这些参数本质是 Anthropic Claude 模型在代码开发场景下的预设标识符,用于简化不同 Claude 模型版本的调用配置(避免硬编码模型 ID),每个参数对应不同定位的 Claude 模型,具体如下:

参数名核心作用适用场景对应官方模型 ID 示例
ANTHROPIC_MODEL通用/顶层模型参数,可覆盖其他默认模型参数,是所有 Claude 调用的'全局开关'统一指定所有代码任务的模型(如全局切换为 Sonnet)可设为任意 Claude 模型 ID(如 claude-3-5-sonnet-20240620)
ANTHROPIC_DEFAULT_OPUS_MODEL预设 Claude Opus(旗舰版)模型的标识符,Opus 是推理能力最强的模型复杂代码任务(大型项目重构、算法设计、多语言代码整合、核心逻辑开发)claude-3-5-opus-20240620(最新 Opus 3.5)、claude-3-opus-20240229
ANTHROPIC_DEFAULT_SONNET_MODEL预设 Claude Sonnet(平衡版)模型的标识符,性能/速度/成本最优平衡常规代码任务(接口开发、Bug 修复、代码注释/重构、逻辑验证)→ 代码开发默认首选claude-3-5-sonnet-20240620、claude-3-sonnet-20240229
ANTHROPIC_DEFAULT_HAIKU_MODEL预设 Claude Haiku(轻量版)模型的标识符,速度最快、成本最低轻量代码任务(单行代码生成、语法检查、简单函数编写、快速代码解释)claude-3-haiku-20240307
CLAUDE_CODE_SUBAGENT_MODEL指定'代码子代理'的模型,子代理是处理细分代码任务的模块(如单元测试生成、代码风格检查)代码子任务(可单独指定模型,如主模型用 Sonnet,子代理用 Haiku 提升速度)通常设为 Haiku/Sonnet,复杂子任务可设为 Opus

二、配置方法(实战示例)

配置核心是将这些参数映射到 Anthropic 官方模型 ID,推荐两种方式(优先环境变量配置,解耦代码与配置):

场景 1:环境变量配置(生产环境推荐)

通过系统/项目环境变量定义参数,代码中直接读取,无需修改代码即可切换模型。

Windows CMD 终端:

set ANTHROPIC_API_KEY=your-api-key-here
set ANTHROPIC_MODEL=claude-3-5-sonnet-20240620
set ANTHROPIC_DEFAULT_OPUS_MODEL=claude-3-5-opus-20240620
set ANTHROPIC_DEFAULT_SONNET_MODEL=claude-3-5-sonnet-20240620
set ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-3-haiku-20240307
set CLAUDE_CODE_SUBAGENT_MODEL=claude-3-haiku-20240307

Linux/macOS 终端:

# 配置 API Key(必须,从 Anthropic 控制台获取)
export ANTHROPIC_API_KEY=

 ANTHROPIC_MODEL=

 ANTHROPIC_DEFAULT_OPUS_MODEL=
 ANTHROPIC_DEFAULT_SONNET_MODEL=
 ANTHROPIC_DEFAULT_HAIKU_MODEL=

 CLAUDE_CODE_SUBAGENT_MODEL=
"your-api-key-here"
# 通用模型参数(全局默认 Sonnet)
export
"claude-3-5-sonnet-20240620"
# 各系列模型默认值
export
"claude-3-5-opus-20240620"
export
"claude-3-5-sonnet-20240620"
export
"claude-3-haiku-20240307"
# 代码子代理模型(轻量任务用 Haiku)
export
"claude-3-haiku-20240307"
场景 2:代码中直接配置(Python SDK 示例)

先安装依赖:

pip install anthropic

完整配置与调用示例:

import os
from anthropic import Anthropic

# 1. 定义模型参数(优先读环境变量,兜底设默认值)
ANTHROPIC_MODEL = os.getenv("ANTHROPIC_MODEL", "claude-3-5-sonnet-20240620")
ANTHROPIC_DEFAULT_OPUS_MODEL = os.getenv("ANTHROPIC_DEFAULT_OPUS_MODEL", "claude-3-5-opus-20240620")
ANTHROPIC_DEFAULT_SONNET_MODEL = os.getenv("ANTHROPIC_DEFAULT_SONNET_MODEL", "claude-3-5-sonnet-20240620")
ANTHROPIC_DEFAULT_HAIKU_MODEL = os.getenv("ANTHROPIC_DEFAULT_HAIKU_MODEL", "claude-3-haiku-20240307")
CLAUDE_CODE_SUBAGENT_MODEL = os.getenv("CLAUDE_CODE_SUBAGENT_MODEL", ANTHROPIC_DEFAULT_HAIKU_MODEL)

# 2. 初始化 Anthropic 客户端(API Key 从环境变量读取)
client = Anthropic(api_key=os.getenv("ANTHROPIC_API_KEY"))

# 3. 不同场景的调用示例
# 示例 1:常规代码任务(用通用模型)
def regular_code_task(prompt):
    response = client.messages.create(
        model=ANTHROPIC_MODEL,
        max_tokens=1024,
        temperature=0.2, # 代码任务建议低温度,保证准确性
        messages=[{"role": "user", "content": prompt}]
    )
    return response.content[0].text

# 示例 2:复杂代码任务(专用 Opus 模型)
def complex_code_task(prompt):
    response = client.messages.create(
        model=ANTHROPIC_DEFAULT_OPUS_MODEL,
        max_tokens=2048,
        temperature=0.1,
        messages=[{"role": "user", "content": prompt}]
    )
    return response.content[0].text

# 示例 3:代码子代理任务(轻量 Haiku 模型)
def code_subagent_task(prompt):
    response = client.messages.create(
        model=CLAUDE_CODE_SUBAGENT_MODEL,
        max_tokens=512,
        temperature=0.0,
        messages=[{"role": "user", "content": prompt}]
    )
    return response.content[0].text

# 测试调用
if __name__ == "__main__":
    # 常规任务:生成 FastAPI 接口
    print("=== 常规代码任务 ===")
    print(regular_code_task("写一个 FastAPI 的用户登录接口,包含手机号 + 密码校验"))
    
    # 复杂任务:设计分布式锁
    print("\n=== 复杂代码任务 ===")
    print(complex_code_task("设计基于 Redis 的 Python 分布式锁,处理并发和超时问题"))
    
    # 子代理任务:语法检查
    print("\n=== 代码子代理任务 ===")
    print(code_subagent_task("检查这段代码的语法错误:\n def add(a,b): return a + b \n print(add(1))"))
场景 3:claude/settings.json 配置

claude/settings.json 是 Claude 代码工具/插件(如 Claude Code、集成 Claude 的 IDE 插件、Claude 桌面端) 的核心配置文件,用于持久化存储模型参数、API 密钥等核心配置。

1. 基础配置结构

JSON 格式要求:键名必须用双引号、值为字符串/数字、末尾无多余逗号(否则会解析失败),完整示例如下:

{
  "env": {
    "ANTHROPIC_API_KEY": "sk-ant-api03-xxxxxxxxxxxx-xxxxxxxxxxxx",
    "ANTHROPIC_MODEL": "claude-3-5-sonnet-20240620",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-3-5-opus-20240620",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-3-5-sonnet-20240620",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-3-haiku-20240307",
    "CLAUDE_CODE_SUBAGENT_MODEL": "claude-3-haiku-20240307"
  },
  "code_inference": {
    "temperature": 0.1,
    "max_tokens": 2048
  }
}

如果用代理,则改为:

{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-e5575d689a844514bc4fd03a2700eff6",
    "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
    "ANTHROPIC_MODEL": "claude-3-5-sonnet-20240620",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-3-5-opus-20240620",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-3-5-sonnet-20240620",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-3-haiku-20240307",
    "CLAUDE_CODE_SUBAGENT_MODEL": "claude-3-haiku-20240307"
  }
}
字段规范说明
工具/场景正确字段名说明
Claude 官方 VS Code 插件anthropic_api_key全小写(官方默认)
Claude Code 桌面端ANTHROPIC_API_KEY全大写(兼容环境变量)
自定义 Claude 代码工具两者均可(需与代码解析逻辑一致)建议统一:配置文件用小写,环境变量用大写
配置节点:model_config vs env
  • env:是 Claude 官方工具(如 VS Code 插件)的标准根节点,用于存放环境相关配置(密钥、模型、调用参数);
  • model_config:是自定义工具的常用命名,官方工具不使用该节点,直接将模型参数放在 env 或根节点下。

避坑要点

  1. 模型参数名大小写:ANTHROPIC_MODEL/CLAUDE_CODE_SUBAGENT_MODEL 这类参数名必须大写(官方工具的解析逻辑是匹配大写标识符)
  2. 节点层级不能错:所有环境相关配置(密钥、模型)需放在 env 根节点下,否则工具无法读取;

敏感信息保护:不要将 settings.json 提交到代码仓库,在 .gitignore 中添加:

# 忽略 Claude 配置文件
claude/settings.json
.claude/settings.json
核心参数详解
JSON 配置项取值说明作用
ANTHROPIC_MODEL任意 Claude 官方模型 ID全局默认模型(工具/插件优先使用该值)
ANTHROPIC_DEFAULT_OPUS_MODELOpus 系列模型 ID(如 claude-3-5-opus-20240620)复杂代码任务(重构/算法设计)的专用模型标识
ANTHROPIC_DEFAULT_SONNET_MODELSonnet 系列模型 ID(如 claude-3-5-sonnet-20240620)常规代码任务(接口开发/Bug 修复)的默认模型
ANTHROPIC_DEFAULT_HAIKU_MODELHaiku 系列模型 ID(如 claude-3-haiku-20240307)轻量代码任务(语法检查/单行生成)的快速模型
CLAUDE_CODE_SUBAGENT_MODEL通常设为 Haiku/Sonnet ID代码子代理(单元测试生成/风格检查)的专用模型
2. 配置生效与验证
使配置生效

修改 settings.json 后,需:

  • 重启 Claude 代码工具/IDE 插件(核心步骤,否则读取旧配置);
  • 部分工具支持「刷新配置」按钮(在设置界面),可替代重启。
验证配置是否生效

方法 1:在工具/插件中执行简单代码任务,查看日志(通常在 ~/.claude/logs/),日志中会显示 model: claude-3-5-sonnet-20240620 等字样,确认与配置一致; 方法 2:调用工具的「配置检查」接口(若有),会返回当前加载的模型参数。

三、配置注意事项

  1. 模型 ID 需使用 Anthropic 官方最新版本(可参考 Anthropic 官方文档),旧 ID 可能被停用;
  2. API Key 不要硬编码到代码中,务必通过环境变量配置,避免泄露;
  3. 温度(temperature)建议:代码任务设 0.0~0.2(保证结果稳定),创意类代码可设 0.5~0.7。

四、默认模型与验证

当你不在 claude/settings.json 中配置 MODEL 相关参数时,默认值由你使用的 Claude 工具/插件版本 决定(Anthropic 官方会将「通用性、性价比最优」的模型设为默认)。

1. 核心 MODEL 参数的默认值(按工具分类)
最常用:Claude 官方 VS Code 插件(主流场景)

这是大部分开发者使用的场景,默认值是 Anthropic 官方定义的「推荐值」,具体如下:

参数名未配置时的默认值适用说明
ANTHROPIC_MODEL(全局模型)claude-3-5-sonnet-20240620核心默认:Claude 3.5 Sonnet(平衡性能/速度/成本,代码任务首选)
ANTHROPIC_DEFAULT_OPUS_MODELclaude-3-5-opus-20240620旗舰版默认:最新 Opus 3.5(仅手动指定 Opus 时生效)
ANTHROPIC_DEFAULT_SONNET_MODELclaude-3-5-sonnet-20240620平衡版默认:与全局默认一致
ANTHROPIC_DEFAULT_HAIKU_MODELclaude-3-haiku-20240307轻量版默认:最新 Haiku(速度最快、成本最低)
CLAUDE_CODE_SUBAGENT_MODEL(代码子代理)复用 ANTHROPIC_DEFAULT_HAIKU_MODEL 的默认值子代理默认用 Haiku,适配轻量任务(如语法检查、单元测试生成)
Claude Code 桌面端

默认逻辑与 VS Code 插件完全一致,核心默认仍为 claude-3-5-sonnet-20240620,仅在「快速模式/低功耗模式」下,全局默认会自动切换为 Haiku。

纯 Anthropic SDK 调用(无配置文件)

注意:ANTHROPIC_MODEL/CLAUDE_CODE_SUBAGENT_MODEL 这类参数是 工具/插件层的封装(非 SDK 原生参数),如果直接用 Anthropic Python/JS SDK 且不指定 model 参数,会直接抛出 必填参数缺失异常(SDK 要求必须显式指定 model)。

示例:SDK 无默认值,必须写死或从配置读取:

from anthropic import Anthropic
client = Anthropic(api_key="your-key")
# 必须显式指定 model,否则报错
response = client.messages.create(
    model="claude-3-5-sonnet-20240620", # 无默认值,必填
    max_tokens=1024,
    messages=[{"role": "user", "content": "写一个 Python 函数"}]
)
2. 默认值的优先级规则

如果只配置了部分 MODEL 参数,工具会按「自定义配置 > 官方默认」的逻辑生效:

  1. 若配置了 ANTHROPIC_MODEL(全局),但未配置 CLAUDE_CODE_SUBAGENT_MODEL → 子代理仍用默认的 Haiku;
  2. 若未配置任何 MODEL 参数 → 所有参数均使用上表的官方默认值;
  3. 若配置了 ANTHROPIC_DEFAULT_SONNET_MODEL,但未配置 ANTHROPIC_MODEL → 全局默认仍为官方的 Sonnet 3.5(不会自动复用你配置的 Sonnet 自定义值)。
3. 如何确认当前工具的默认值(实操验证)

如果想精准知道你所用工具的默认模型,最可靠的方式是:

  1. 查看工具设置页:
    • VS Code 插件:打开「设置」→ 搜索「Claude Model」,会显示「Default Model」的默认值(通常是 claude-3-5-sonnet-20240620);
    • Claude Code 桌面端:「设置」→「模型设置」→ 查看「默认模型」的灰色占位符/默认选中项。
  2. 查看工具日志: 执行任意代码任务后,查看工具日志(VS Code 插件日志路径:~/.vscode/extensions/anthropic.claude-code-xxx/logs),日志中会显示:
    [INFO] Using default model: claude-3-5-sonnet-20240620
    
  3. 参考官方文档: Anthropic 会在工具的 CHANGELOG/文档中说明默认模型的更新(比如未来若发布新版,官方工具会同步更新默认值)。
4. 命令行更新默认模型

若你的工具仍显示旧版本,可通过命令行一键更新:

# 1. 升级 CLI 到最新版本(必做)
pip install --upgrade anthropic-cli

# 2. 设置全局默认为最新版
anthropic config set model claude-3-5-sonnet-20240620
anthropic config set opus_model claude-3-5-opus-20240620
anthropic config set haiku_model claude-3-haiku-20240307

# 3. 验证更新结果
anthropic config get model

目录

  1. 模型配置解释
  2. 一、核心参数含义与作用
  3. 二、配置方法(实战示例)
  4. 场景 1:环境变量配置(生产环境推荐)
  5. 配置 API Key(必须,从 Anthropic 控制台获取)
  6. 通用模型参数(全局默认 Sonnet)
  7. 各系列模型默认值
  8. 代码子代理模型(轻量任务用 Haiku)
  9. 场景 2:代码中直接配置(Python SDK 示例)
  10. 1. 定义模型参数(优先读环境变量,兜底设默认值)
  11. 2. 初始化 Anthropic 客户端(API Key 从环境变量读取)
  12. 3. 不同场景的调用示例
  13. 示例 1:常规代码任务(用通用模型)
  14. 示例 2:复杂代码任务(专用 Opus 模型)
  15. 示例 3:代码子代理任务(轻量 Haiku 模型)
  16. 测试调用
  17. 场景 3:claude/settings.json 配置
  18. 1. 基础配置结构
  19. 字段规范说明
  20. 配置节点:model_config vs env
  21. 忽略 Claude 配置文件
  22. 核心参数详解
  23. 2. 配置生效与验证
  24. 使配置生效
  25. 验证配置是否生效
  26. 三、配置注意事项
  27. 四、默认模型与验证
  28. 1. 核心 MODEL 参数的默认值(按工具分类)
  29. 最常用:Claude 官方 VS Code 插件(主流场景)
  30. Claude Code 桌面端
  31. 纯 Anthropic SDK 调用(无配置文件)
  32. 必须显式指定 model,否则报错
  33. 2. 默认值的优先级规则
  34. 3. 如何确认当前工具的默认值(实操验证)
  35. 4. 命令行更新默认模型
  36. 1. 升级 CLI 到最新版本(必做)
  37. 2. 设置全局默认为最新版
  38. 3. 验证更新结果
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 基于 n8n 与网页解锁服务的自动化资讯采集实战
  • 全栈毕业设计实战:前后端分离架构与核心实现指南
  • RAG 技术为何对下一代 AI 开发至关重要
  • llama.cpp 实战指南:普通电脑运行大模型方案
  • 使用 Cpolar 和 JuiceSSH 远程连接内网 Linux 虚拟机
  • PHP 项目开发流程与配置指南
  • 医疗自然语言处理(NLP)应用场景与实战开发
  • 二叉树核心解析:结构、存储与遍历算法详解
  • HexStrike AI 部署与使用指南
  • 提示词工程:大语言模型指令设计与优化
  • MyBatisPlus 与 Thymeleaf 全栈分页整合方案
  • AI Agent 选型实战:16 款主流框架与工具深度对比
  • 基于 AI 工程文档构建儿童英语学习应用前端示例
  • PyTorch 模型训练完整工作流程详解
  • 开源本地 Markdown 笔记工具:支持代码执行与图表嵌入
  • C# 封装:Windows 服务的安装、启停与状态查询
  • 贪心算法实战:摆动序列与股票买卖等经典问题
  • 2026 丙午马年元旦祝福程序 Python 实现
  • Stable Diffusion 视觉提示词注入攻击原理与实现分析
  • MySQL 单表行数真相:2000 万限制是伪命题吗?

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online