04. 模型与推理力度
推理力度
在暴露推理力度控件的模型上,用延迟和费用换思考深度。等级就是该模型提供的那些,不是 MatchaCode 固定的产品阶梯。
菜单可能显示什么
部分服务商模型会声明推理力度。对这些模型,Matcha CLI 可以把一个等级附到下一轮。服务商没有发来 reasoningEfforts 列表时,内置菜单回退到这四个:
| 常用 id | 内置菜单怎么写 |
|---|---|
low | 更快、更轻的推理 |
medium | 平衡推理 |
high | 较重的推理 |
xhigh | 加长推理 |
现场菜单是按模型定的:
- 模型可以只提供子集、额外 id(
max),或none/minimal。 - 模型可以重映射显示 id(菜单可能插入
deep,线上值却是xhigh)。键入菜单显示的那个 id。 - 不支持推理力度的模型会拒绝
/effort(does not support reasoning effort),并把/model <name> <level>当成未知模型字符串。
/effort 从不重新选择模型。/model <name> <level> 一次选定模型和等级,且只作用于本会话(不会像单独的 /model <name> 那样写入 [models].default)。
| 命令 | 改什么 | 会写成默认吗? |
|---|---|---|
/model <name> | 当前模型 | 会 — [models].default |
/model <name> <level> | 本会话的模型与力度 | 不会(仅本会话) |
/effort <level> | 当前模型的力度 | 不会(仅本会话) |
也可以用 [models].default_reasoning_effort 或 CLI 的 --reasoning-effort / --effort 为整个进程设默认。该 CLI 标志在 matcha 和 matcha agent 上都接受。取值仍会按实际跑起来的模型做门控。
更高力度通常意味着更多推理 token、更长延迟,以及同一条提示在服务商那边更高的账单。已经知道答案形态时,更低力度更便宜、也更利落。设计工作保持较强默认,机械改动再降到 low 或 medium,不必换模型。
看当前模型是否支持力度
键入 /effort 并开始填参数。若当前模型支持推理力度,菜单会列出其等级(回退集合里最强的在前:xhigh、high、medium、low)。当前等级标 (active)。
若模型不支持力度,参数菜单为空。/session-info 也会显示当前模型;不确定自己在用哪个时看它。
给当前模型设力度
/effort high空参数会打印用法,带上该模型提供的 id;若已设等级,还会带上当前值:
Usage: /effort <xhigh|high|medium|low> (current: medium)未知 token 会打印 unknown effort level '…'; use one of: …,并且只列出该模型实际提供的 id。除非该模型列出了 none 和 minimal,否则会被拒绝。
没有当前模型时(例如还没开始会话的屏幕):No active model。
同时设定模型与力度
/model Reasoning X high
/model Reasoning X xhigh自动补全:先选支持推理的模型,尾随空格会按该模型的等级再打开下拉。选中一行会补全两个 token(Reasoning X high)。
多词显示名会先按整串解析。/model Grok 4.5 选中那一行目录;不会把 4.5 当成较短名字 Grok 上的力度。
为一次进程设力度
matcha --effort high
matcha --reasoning-effort medium
matcha -p "Review this design" -m reasoning-x --effort xhigh
matcha agent --effort max--effort 是 --reasoning-effort 的可见别名。两个名字都出现时,后出现的胜出。该标志接受模型稍后会门控的同一套 token —— 包括重映射 id(如 deep),以及该模型提供时的额外值(如 max)。
在配置里持久化默认力度
[models]
default = "reasoning-x"
default_reasoning_effort = "high"默认力度只会盖到支持推理力度的模型上。不会应用到普通对话模型。
Matcha CLI 不会做什么
- 力度不是 MatchaCode 账号权益,也不是云端思考模式市场。
- 不保证每个服务商模型都提供同样四个等级。始终看现场的
/effort菜单。 - 不要假定存在
none/minimal/max。只有当前模型列出它们时才有效。
服务商上报时,推理 token 会出现在本地用量块里。见「本地用量」。