本教程面向第一次安装完 Claude Code、面对 /model 选择器不知所措的零基础开发者。学完你将能够:分清 Fable / Opus / Sonnet / Haiku 四档模型各自擅长什么;用四种方式(启动参数、环境变量、/model、settings)正确设定模型;理解 opusplan 混合模式与 /effort 推理强度;用 /config 一次性把主题、语言、通知、权限、自动压缩等首选项调到位;并完成一个可运行的小项目,亲手对比三档模型在同一需求下的差异。
适用人群:刚装好 Claude Code、会基本命令行、但对模型体系一无所知的开发者。
claude --version 能输出版本号,建议 v2.1.170 以上,否则 /model 里看不到 Fable 5)。claude。打开官方文档会发现,Claude Code 的模型并非"越贵越好",而是按任务难度分档。先把这张表刻进脑子:
| 别名(alias) | 实际指向 | 定位 | 适合的任务 |
|---|---|---|---|
fable |
Claude Fable 5 | 最强,擅长长程自主 | 多文件大重构、根因排查、架构决策 |
opus |
Opus 4.8(API)/ 4.7(AWS) | 复杂推理 | 跨文件逻辑、疑难 bug、设计权衡 |
sonnet |
Sonnet 4.6 | 日常主力 | 写功能、改 bug、读代码——绝大多数日常 |
haiku |
Haiku 4.5 | 快而省 | 改注释、重命名、简单机械改动 |
还有一个特殊的 best 别名:有 Fable 5 权限就用 Fable 5,否则退回最新 Opus。
操作说明:在你的项目目录运行 claude,进入交互界面后输入 /model(不带参数),会弹出选择器。
预期结果:选择器里会列出 default、fable、opus、sonnet、haiku、以及带 [1m] 后缀的长上下文版本。当前激活的模型旁边会有标记。
常见问题:
claude update 升级到 v2.1.170+。availableModels 限制了可选范围。opus 可能解析到 4.6。想锁死版本就用全名,如 claude-opus-4-8。一个新人最容易踩的坑:以为"无脑选最强"就对了。结果是简单改个注释也烧 Opus 的钱和等待时间。默认用 Sonnet,遇到啃不动的硬骨头再升档——这是官方与社区一致的建议。
模型不是只能用 /model 选。官方定义了一条优先级链(高到低):
/model <别名> 立即切换;从 v2.1.153 起,直接打 /model opus 会把你的选择存为默认(写入用户 settings 的 model 字段)。在弹窗里按 Enter 也是"切换并存默认",按 s 则"仅本会话切换"。claude --model sonnet,只对该次启动生效。ANTHROPIC_MODEL=haiku claude,仅对启动它的那次会话生效。~/.claude/settings.json 写 "model": "opus",永久默认。操作说明:
# 方式2:启动时指定
claude --model sonnet
# 方式3:环境变量(适合临时对照测试)
ANTHROPIC_MODEL=haiku claude
# 方式1:会话内临时切
/model haiku
预期结果:界面顶部(logo 和 spinner 旁边)会显示当前模型,例如 sonnet,旁边还会显示 effort 等级如 with high effort。
常见问题:
/model(它会把默认存下来影响别的会话),而是每个终端各自用 claude --model xxx 启动。/model 改了,下次进来又变回去了 → 因为项目级或企业级 settings 优先级更高,会话结束自动重应用。看启动横幅,它会注明是哪个 settings 文件设定的。--resume 续跑的会话模型不对 → 续跑的会话保留它保存时所用的模型,不受当前 model 设置影响。这是设计如此,防止别的会话的 /model 偷偷改掉你的续跑。opusplan 拿到"规划用 Opus、执行用 Sonnet"的混合体验很多人不知道这个别名。opusplan 不是某个模型,而是一种自动混合策略:
opus 做复杂推理和架构决策;sonnet 生成代码。等于"鱼与熊掌兼得"——规划阶段享受 Opus 的强推理,执行阶段享受 Sonnet 的高性价比。
操作说明:
# 启动即用混合模式
claude --model opusplan
# 或会话内切
/model opusplan
# 想两阶段都强制 1M 上下文(非自动升级档位时)
/model opusplan[1m]
预期结果:当你按计划模式提交方案、模型开始执行时,顶部模型标识会从 opus 切到 sonnet。
常见问题:
availableModels 黑名单 → opusplan 不会报错,而是在计划阶段也老老实实待在 Sonnet。opus,opusplan 是给"想要 Opus 的脑、Sonnet 的手"的人准备的。/effort 调节"想多久再答"新版引入了自适应推理(adaptive reasoning)与 effort 等级。同一个模型,effort 越高,"思考"越深,但也更慢更贵。
| 等级 | 适用场景 |
|---|---|
low |
短、聚焦、对延迟敏感、对智力不敏感的小任务 |
medium |
成本敏感、可牺牲一点智力的工作 |
high |
平衡,Opus 4.8 / Sonnet 4.6 / Fable 5 的默认 |
xhigh |
更深推理,Opus 4.7 的默认 |
max |
极难任务,当前会话生效,可能"想太多",先测再用 |
操作说明:
# 交互滑块
/effort
# 直接设定
/effort medium
# 回到模型默认
/effort auto
也可以在 /model 选择器里用左右方向键调 effort 滑块;或启动时 claude --effort low;或环境变量 CLAUDE_CODE_EFFORT_LEVEL=low;或 settings 里 "effortLevel": "low"。
小技巧:只想在某一轮让模型多想,又不想动全局设置,就在那句提示里加一个词
ultrathink——Claude Code 会识别这个关键词,为该轮加深推理,且不改 effort 等级。注意只有ultrathink是关键词,"think hard""think more"都只是普通文本,不触发任何特殊行为。
预期结果:顶部显示 with low effort / with high effort,你能随时确认当前强度。
常见问题:
xhigh 但模型没动静 → 该模型可能不支持 xhigh(如 Opus 4.6 只到 high 之上的 max,结构不同)。Claude Code 会自动降到"不高于你设定值"的最高支持等级。/config 一次调好所有首选项/model 只管模型,/config 才是总控面板。输入 /config(别名 /settings)会弹出三标签面板:Status / Config / Usage。Tab 切标签,方向键移动,Enter 切换,Esc 关闭。
Config 标签默认处于搜索态——直接打字就能过滤设置项,不必翻几十项。重点项:
/theme)。/fast)。/rewind 回滚。这是你的安全网,别关。default(危险操作会问你),熟练后再按需切。操作说明:
/config,回车。compact,立刻定位到 Auto-compact 开关,确认是开。lang,进 Language 选中文。Esc 保存关闭。如果调坏了,再按 Esc 会撤销本次面板里的全部修改——可以放心试。预期结果:界面语言变中文、主题更换、设置写进 ~/.claude/settings.json 与 ~/.claude/config.json,无需重启。
常见问题:
/status,先切过去看模型、账号、MCP 连接、诊断,把环境摸清再改。Esc 撤销);批量配权限规则、hooks、MCP 这类复杂结构时才手编 JSON。大型代码库会撑爆默认 200K 上下文。Fable 5、Opus 4.6+、Sonnet 4.6 都支持 1M token 窗口,但获取方式不同:
操作说明:
# 用 [1m] 后缀显式开
/model opus[1m]
/model sonnet[1m]
# 或在全名后加
/model claude-opus-4-8[1m]
想彻底关掉 1M,设 CLAUDE_CODE_DISABLE_1M_CONTEXT=1,选择器里的 1M 变体消失。
确认当前模型:在交互界面输入 /status,或配置 statusline 在状态栏常驻显示。
常见问题:
[1m] 选项 → 账号不支持或版本旧,重启会话或升级试试。目标:30 行左右的 Python 命令行番茄钟,支持启动、暂停、查看剩余。我们在同一个空项目里,用三种模型分别从零实现,直观感受差异。
1. 准备目录
mkdir pomodoro-lab && cd pomodoro-lab
# 用 Sonnet 起一个会话
claude --model sonnet
2. 给三档模型同一个需求
在交互界面粘贴:
用 Python 写一个命令行番茄钟
pomodoro.py:python pomodoro.py start开始 25 分钟计时并每秒打印剩余时间;pause暂停;resume继续;status看剩余;要能优雅处理 Ctrl+C。不要用第三方库。
记下:Sonnet 的实现是否一次跑通、用了多少 token、耗时多久(顶部会显示 turn 耗时)。
3. 切 Haiku 重做,再切 Opus 重做
/model haiku
(粘贴同样需求)
/model opus
(粘贴同样需求)
4. 预期对比(典型结果)
| 模型 | 一次成功率 | 代码质量 | 耗时 | 适合度 |
|---|---|---|---|---|
| haiku | 基本跑通,边界处理略糙 | 够用 | 最快 | 这种小活儿它的主场 |
| sonnet | 一次跑通,Ctrl+C 处理完善 | 干净 | 中等 | 日常首选 |
| opus | 一次跑通,可能附带单元测试与 argparse | 过度但优秀 | 最慢 | 杀鸡用牛刀 |
5. 我的推荐配置(写进 settings)
{
"model": "sonnet",
"effortLevel": "high",
"env": {
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5"
}
}
日常 Sonnet + high;遇到跨文件重构临时 /model opus 或 /model opusplan;机械改动 /model haiku。这样既不浪费算力,硬任务也能啃下来。
6. 验收:python pomodoro.py start 应每秒打印剩余分钟秒;Ctrl+C 不报错堆栈;pause/resume/status 行为正确。
flowchart TD
A[刚装好 Claude Code] --> B{任务多复杂?}
B -- "改注释/重命名等机械活" --> H[haiku, low effort]
B -- "写功能/改bug/读代码" --> S[sonnet, high effort<br/>日常默认]
B -- "跨文件逻辑/疑难bug" --> O[opus 或 opusplan]
B -- "长程自主/架构级大重构" --> F[fable 5]
S --> Q{上下文快满?}
Q -- "是,且是长会话" --> Q1["/model sonnet[1m]<br/>需 usage credits"]
Q -- "否" --> R
O --> R
H --> R
F --> R
R[/config 调主题/语言/通知/auto-compact] --> V[/status 确认当前模型与 effort] --> Z[开始干活]
code.claude.com/docs/en/model-config——别名、effort、1M、fallback chain 的权威来源,遇到版本差异先查这里。code.claude.com/docs/en/settings——settings 文件层级与优先级,理解为什么你的设置"不生效"。blog.vincentqiao.com/en/posts/claude-code-config/——把面板每个开关讲清楚,含搜索技巧与 Esc 撤销。www.morphllm.com/claude-code-models——含 SWE-bench 分数与定价,量化"什么时候该升档"。/status 确认当前模型与 effort。[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
