dsh-qwen38-local-qol: DeepSeek Harness 本地 Qwen3.8 优化插件

前言

DeepSeek Harness (DSH) 采用插件化架构,允许用户根据需求扩展功能。对于本地部署 Qwen3.8 系列模型(27B, Flash-Next)的开发者来说,管理不同推理后端的思考预算(Thinking Budget)以及处理上下文窗口压缩(Compaction)是一个常见的痛点。dsh-qwen38-local-qol 插件旨在为这套本地工作流提供一套统一的配置入口和优化策略。

插件简介

这是一个针对 DeepSeek Harness 的 Quality of Life (QoL) 插件,由用户 Yunado 维护,采用 MIT 许可证。它主要解决在 llama.cpp、NInfer、TabbyAPI 和 oMLX 等本地推理引擎上运行 Qwen3.8 时的配置碎片化问题。

核心特性

  1. 按请求的思考预算:支持 llama.cpp、NInfer、TabbyAPI 和 oMLX 四种方言,允许在每条请求中动态调整推理预算。
  2. 压缩后端优化:在触发压缩时,会修剪预填充内容(保留近期推理、降级图片为文本占位、截断工具结果),防止因输出上限导致的检查点截断。
  3. 工具结果中的视觉支持:嵌套在工具结果中的图片块(如 read_image 输出)会被传输而非丢弃。
  4. 可视化设置面板:提供 Settings Tab,支持实时配置所有行参数。

安装与启用

通过命令行安装插件:

dsh plugin --profile web add github:Yunado/dsh-qwen38-local-qol

安装完成后,需要重启 dsh web 服务。服务启动时,插件会从标准预设组合中生成 qwen38 用户预设。如果未配置默认代理预设,该预设会被设为默认。新会话将自动使用此预设,而现有会话则保持其创建时的预设不变。

若需固定特定版本,可在规格中添加标签(如 #v0.2.0 或任何历史发布版本)。

配置详解

插件在 DSH 设置中增加了一个名为 Qwen3.8 Local 的设置 Tab。这里列出了所有配置项,支持实时修改和热重载。

状态指示

设置面板中的状态点颜色表示当前 qwen38 预设的默认状态:
* 绿色:qwen38 是默认预设。
* 琥珀色:默认预设是 qwen38 以外的其他预设。
* 灰色:qwen38 预设不存在。

服务器配置

该 Tab 支持配置四种不同的本地推理服务器:

  1. llama.cpp (llamacpp):标准的 llama-server,支持通过请求参数动态发送思考预算。
  2. NInfer:高性能 TensorRT-LLM 引擎,思考预算通常在服务器启动时配置(--default-thinking-budget)。
  3. TabbyAPI:基于 ExLlamaV3 的后端,原生支持按请求预算。
  4. oMLX:Apple Silicon MLX 推理服务器,原生支持 thinking_budget 和 chat_template_kwargs.enable_thinking。

主要配置项包括:
* Dialect (dialect):选择上述引擎之一(默认 llamacpp)。
* Base URL:本地服务地址(默认端口分别为:llama.cpp 8080,NInfer 8082,TabbyAPI 8083,oMLX 8000)。
* Model:服务器识别的模型 ID 或别名。
* Display Name:在 UI 模型选择器中显示的标签。
* API Key:可选的认证令牌。

上下文窗口与输出限制

  • Context Window:模型支持的总 Token 容量,用于判断何时触发压缩。
  • Max Tokens:单次响应的最大 Token 数,默认约为窗口的 20%(约 52428),为压缩触发预留空间。

思考预算

插件支持为 llama.cpp、TabbyAPI 和 oMLX 设置不同级别的思考预算:
* Low: 4,096 tokens
* Medium: 8,192 tokens
* Extra High: 16,384 tokens

对于 NInfer,则通过 defaultThinkingBudget 配置。此外还有 defaultEffort 参数,用于设置默认的思考强度。

压缩与修剪

为了防止上下文溢出,插件提供了一套压缩策略(主要在 Env 变量层面配置,也可在 Tab 中配置):
* Summarize Images:处理历史图片的策略。strip(推荐)会将旧图片替换为文本占位符以节省空间;keep 则保留图片。
* Keep Recent Reasoning:保留最近的几轮助手回复。
* Tool Chars:限制工具结果的最大字符数。

注意事项

  1. 依赖要求:插件需要 Node.js 环境版本 >= 22.14。
  2. 无核心补丁:该插件不包含核心补丁或 pi-ai patchfile。
  3. 持久化:所有在设置面板中的修改会实时生效,并持久化保存到 settings.yaml 文件中。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜