前言¶
在 DeepSeek Harness (DSH) 中处理长对话上下文时,保持 Token 使用效率是一个常见需求。dsh-openai-server-compaction 插件通过在服务器端实现 Codex 风格的压缩逻辑,为 llm-pi-ai 插件管理的 OpenAI Responses 路由提供了自动化的上下文清理能力,无需手动干预即可维持对话的连贯性。
插件定位¶
这是一个 DeepSeek Harness 原生插件,旨在为 OpenAI Responses API 路由添加持久化的服务器端压缩功能。它不负责连接管理或模型定义,而是专注于压缩策略的执行与状态恢复。
核心功能¶
插件提供以下能力:
* 服务器端压缩:支持手动触发、基于 Token 压力和溢出的自动触发,基于 Codex Remote Compaction V2 协议。
* 历史保留:在压缩过程中保留最近 64,000 个 Token 的实际用户消息。
* 状态持久化:将压缩后的状态写入 DSH 历史,并生成可移植的文本检查点。
* 请求处理:正常请求通过 POST /v1/responses 处理,压缩请求通过在请求体中附加特定指令触发。
安装¶
在 DSH 环境中执行以下命令安装插件:
dsh plugin --profile web add dsh-openai-server-compaction
配置与使用¶
1. 配置路由¶
插件不创建路由,仅处理已配置的路由。在 Settings -> Models 下,找到 llm-pi-ai 插件管理的 provider,创建或编辑一个路由。该路由必须显式指定 api: openai-responses,并配置 baseURL 和 apiKeyEnv。
配置示例:
llm-pi-ai:
providers:
openai:
displayName: OpenAI Responses
api: openai-responses
baseURL: https://api.openai.com/v1
apiKeyEnv: OPENAI_API_KEY
models:
- id: gpt-5.6
name: GPT-5.6
contextWindow: 1050000
maxTokens: 128000
2. 启用压缩¶
在 Settings -> Plugins -> OpenAI Compaction 中,启用之前配置的路由,并设置触发阈值(thresholdRatio)。
配置示例:
openai-server-compaction:
routes:
openai:
enabled: true
thresholdRatio: 0.7
修改配置后需要重启 DSH。
注意事项¶
- 配置依赖:路由必须显式设置
api: openai-responses,否则插件不会处理该请求。 - 状态文件:压缩状态存储在
$DSH_HOME/openai-server-compaction/state.json(默认路径),这是操作配置的一部分,请勿随意删除。 - 输出限制:插件在发起压缩请求时不会发送
max_output_tokens参数。 - 兼容性:该插件通过
llm-pi-ai间接处理 OpenAI Responses 路由,若路由配置不正确(如缺少凭证或模型不支持),系统会明确报错。
结语¶
该插件适合需要深度集成 OpenAI Responses API 并希望自动管理上下文长度的 DSH 用户。源码与详细文档可在 GitHub 查阅。