---
title: "模型选择"
description: "Gemini CLI 模型选择：--model、auto/pro/flash/flash-lite alias，以及按任务复杂度选择模型。"
verifiedAt: "2026-05-09"
---

Gemini CLI 支持通过 `/model` 交互选择模型，也支持通过 `--model` / `-m` 在启动时指定模型。官方建议大多数用户优先使用 Auto，让 CLI 按任务复杂度选择模型。

> [!NOTE]
> `/model` 和 `--model` 控制主会话模型，不保证覆盖 subagent 使用的模型。看到 usage report 里有其他模型时，先看是否是 subagent 或内部工具调用。

```bash
gemini --model pro
gemini -m flash -p "summarize README.md"
```

## /model 选项

运行 `/model` 会打开模型选择对话。官方当前文档列出三类：

- Auto (Gemini 3)：在 Gemini 3 Pro / Flash 范围内自动选择。
- Auto (Gemini 2.5)：在 Gemini 2.5 Pro / Flash 范围内自动选择。
- Manual：手动选择账号可用的具体模型。

`/model` 和 `--model` 不会覆盖 subagents 使用的模型。因此你在 usage report 里看到其他模型，不一定是主会话模型选择失败，可能是 subagent 自己的配置。

模型选择会影响后续交互，但不等于固定所有内部调用。官方文档明确提醒 usage report 里可能出现其他模型，这通常来自 subagent、内部分类、补全或 fallback 链路。排查时要先区分“主会话模型”和“辅助调用模型”。

## alias 思路

| alias | 适合 |
| --- | --- |
| `auto` | 默认选择，交给 CLI 决定 |
| `pro` | 复杂推理、跨文件任务 |
| `flash` | 日常平衡任务 |
| `flash-lite` | 简单快速任务 |

## 选择建议

- 不确定时先用 `auto`。
- 大型重构前先计划，再决定是否用更强模型。
- 频繁脚本化任务要考虑成本。
- 模型失败时不要只换模型，也要检查上下文和任务描述。
- 想固定可复现行为时，记录模型名、CLI 版本和认证方式。

## 任务分层

用 `pro` 的理由应该是任务复杂，而不是“感觉更强”。典型场景包括跨模块设计、复杂 bug 定位、架构迁移、长上下文审查。`flash` 更适合格式转换、摘要、简单解释、单文件小改。`flash-lite` 适合短平快自动化，但不适合高风险修改或需要深推理的 debug。

如果输出质量差，先查这四件事：上下文是否足够，`GEMINI.md` 是否清楚，工具是否有权限，验证命令是否明确。模型升级只能解决一部分问题，不能替代任务契约。

| 任务 | 推荐起点 | 备注 |
| --- | --- | --- |
| 日常问答 / 小改 | `auto` | 让 CLI 按复杂度选 |
| 架构设计 / 复杂 debug | `pro` 或 Auto 高能力路由 | 先用 Plan mode 收敛范围 |
| 摘要 / 格式转换 | `flash` | 更看重速度 |
| 大批量脚本化短任务 | `flash-lite` | 仍要记录实际模型 |
| 团队教程 | 推荐 alias，不写死 preview 模型 | 降低过期风险 |

## 验收方式

切换模型后跑同一个小任务，记录响应速度、工具调用质量、是否触发 fallback。对团队教程和工作流，建议在文档里写“推荐 alias”，不要写死某个 preview 模型作为唯一入口。

如果教程需要复现结果，至少记录 CLI 版本、认证方式、选择的 alias、实际使用模型和测试日期。只写“使用 Gemini 3”不够精确。

商业教程建议给出验证命令而不是只给推荐：让读者先运行 `/model` 看可见列表，再运行一个小任务，最后用 `/stats model` 或 usage report 确认实际模型。这样账号差异不会直接变成教程失效。

## 常见误区

第一个误区是把 preview 模型写成默认模型。Preview 状态会变，账号可见性也会变，教程最好推荐 `auto` 或稳定 alias，再在备注里说明测试时具体用了哪个模型。

第二个误区是只看速度不看验证。`flash` 很适合短任务，但高风险代码修改仍然要看 diff、测试和回滚；`pro` 也不会自动保证改动正确。

第三个误区是把模型选择和生成参数混在一起。`/model` 解决选哪个模型，generation settings 解决同一模型内的生成行为。排错时要分开改，一次只改一个变量。

## 接下来去哪

<Cards>
  <Card title="模型路由" description="继续看 fallback、Auto routing 和最终模型排查。" href="/docs/gemini-cli/official/05-models-runtime/52-model-routing" />
  <Card title="Gemini 3" description="回看 Gemini 3、Preview、release channel 和配额提示。" href="/docs/gemini-cli/official/05-models-runtime/50-gemini-3" />
  <Card title="Generation settings" description="模型选定后，再考虑 generation settings，而不是先调参数。" href="/docs/gemini-cli/official/02-context-config/25-generation-settings" />
</Cards>

## 官方来源

- [Gemini CLI model selection](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/model.md)
- [Gemini CLI CLI reference](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/cli-reference.md)
