上下文轮数——决定模型"记得"多久以前的事
上下文轮数是什么
LLM 在生成回复时,会把之前几轮的对话历史一起作为输入——这些历史就是"上下文"。上下文轮数指的是保留多少组对话(用户消息 + 模型回复算一轮)。
上下文轮数决定了模型能"记得"多久以前的对话内容。调得少,模型会经常"失忆";调得多,每次推理时需要处理的历史更多,速度会变慢、内存占用也会增加。
设置位置
对话页 → 设置图标 → 「上下文数量」滑块,范围从 1 到模型支持的最大值(通常和 GGUF 的上下文窗口一致,见 GGUF 上下文长度设置)。
各档推荐
| 轮数 | 适合场景 |
|---|---|
| 4~8 | 简单单轮问答,每次都是新问题 |
| 12(默认) | 日常多轮对话,兼顾速度与连贯性 |
| 20~30 | 讨论同一个话题、需要引用前文内容 |
| 接近最大值 | 写长文档、逐段润色、复杂任务分解 |
和 GGUF 上下文窗口的关系
这两个容易混淆:
- 上下文轮数(对话设置里的滑块):Local AI 层控制的"保留几轮对话历史"
- 上下文长度(GGUF 精细设置里的参数):模型架构层面能处理的最大 token 数(典型值 4096~32768)
规则是:上下文轮数 × 每轮平均 token 数 ≤ 上下文长度上限。如果对话历史超过了 GGUF 的上下文窗口,模型会截断最早的部分——这和上下文轮数无关,是硬性限制。
调优建议
- 刚开始保持默认 12 轮就好——日常使用完全够用
- 发现模型开始"失忆"(答非所问、重复之前说过的内容),那是上下文窗口要满了,而不是轮数设置问题——需要手动开新会话
- 长篇连续写作任务可以临时调到 20~30 轮,写完记得改回来
- 模型切换后建议清空旧会话重新开——不同模型的上下文理解方式不同