---
title: "compression（上下文压缩）配置指南"
---


SolonCode 在长任务、多文件分析、多轮工具调用时会积累大量上下文。Compression 用于把较早的对话与工具结果摘要化，减少模型上下文压力。

### 1、相关配置

| 配置项 | 默认值 | 说明 |
|---|---:|---|
| `sessionWindowSize` | `12` | 新任务带入最近几条历史消息（对话历史窗口大小） |
| `compressionThresholdMessages` | `100` | 消息数量达到阈值后触发摘要压缩（压缩消息触发数） |
| `compressionThresholdPercent` | `75` | 上下文压缩触发比例（按已用上下文百分比，达到后触发） |


![](/img/88565358f7f543b795beb1090934e6a5.png)


### 2、推荐值

| 模型上下文 | compressionThresholdMessages<br/>（压缩触发消息数） | compressionThresholdPercent<br/>（压缩触发上下文比例） | 策略 |
|---|---:|---:|---|
| 128k | 30 - 50 | 65 - 70 | 均衡配置，适合多数编码任务 |
| 256k | 60 - 100 | 70 - 75 | 保留更多工具链路，适合复杂重构 |
| 1m | 100 - 200 | 75 - 80 | 降低压缩频率，注意成本与延迟 |

### 3、调参建议

- 任务经常忘记刚读过的文件：适当调大 `compressionThresholdMessages`。
- 模型报上下文超限：调小 `compressionThresholdPercent`，让压缩更早触发。
- 压缩摘要成本太高或速度变慢：调大两个阈值，减少触发频率。
- 小模型执行复杂任务不稳定：降低 `sessionWindowSize`，减少历史干扰。

### 4、排查现象

| 现象 | 可能原因 | 建议 |
|---|---|---|
| AI 反复读取同一文件 | 上下文窗口太小或摘要过早 | 调大 `sessionWindowSize` 或 `compressionThresholdMessages` |
| 长任务后答非所问 | 摘要质量不足或上下文截断 | 换用更大上下文的模型，或调小 `compressionThresholdPercent` |
| 费用明显增加 | 上下文保留过多 | 调小 `compressionThresholdMessages`，让压缩更频繁 |

