🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

限流重试策略 Rinai-R/dsh-omp-retry

DeepSeek Harness
Rinai-R12 天前有提交已提供中文文档扫描:未发现敏感能力

为 429 限流提供更长间隔的退避重试

30.6/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Rinai-R/dsh-omp-retry
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · other
装得上吗
本站尚未做安装检查
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 12 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DeepSeek Harness 的 OMP 风格 HTTP 429 重试策略

README

由 DeepSeek 最新模型翻译生成
dsh-omp-retry 为 DeepSeek Harness 中的 HTTP 429 响应提供 OMP 风格的退避重试策略。 DSH 内置的 dsh-llm-retry 对所有瞬时失败只用一套有界指数策略。默认配置下是重试五次,间隔从 500 ms 到 10 s,所以预算耗尽时 TPM/RPM 窗口可能还没结束。OMP 对限流的处理不同:最多重试十次,每次至少等 30 秒,并接受服务商返回的 Retry-After,上限五分钟。 这个插件包加上上述限流行为,无需 fork DSH。它在 dsh-llm-retry 之前插入一个 agent/request-error 监听器,只接管 RATE_LIMIT;其余失败码仍交给内置执行器处理。 行为 - 每个失败步骤最多重试 10 次限流(可配置)。 - 延迟为 max(30 s, provider Retry-After)。 - 所需等待超过 5 分钟时,直接结束重试链,不再休眠。 - 每次安排重试都会追加持久化的 llm/retry / llm/retry-started 事件,所以常规重试 UI 和会话历史照常工作。 - 取消、回合结束、插件销毁都会中止当前等待。 - SERVER、TIMEOUT、TRANSPORT、EMPTY_RESPONSE 交给 dsh-llm-retry,沿用服务商自己的策略。
展开完整文档(README 剩余 1 节)
dsh-omp-retry

为 DeepSeek Harness 中的 HTTP 429 响应提供 OMP 风格的退避重试策略。

DSH 内置的 dsh-llm-retry 对所有瞬时失败只用一套有界指数策略。默认配置下是重试五次,间隔从 500 ms 到 10 s,所以预算耗尽时 TPM/RPM 窗口可能还没结束。OMP 对限流的处理不同:最多重试十次,每次至少等 30 秒,并接受服务商返回的 Retry-After,上限五分钟。

这个插件包加上上述限流行为,无需 fork DSH。它在 dsh-llm-retry 之前插入一个 agent/request-error 监听器,只接管 RATE_LIMIT;其余失败码仍交给内置执行器处理。

行为

- 每个失败步骤最多重试 10 次限流(可配置)。
- 延迟为 max(30 s, provider Retry-After)。
- 所需等待超过 5 分钟时,直接结束重试链,不再休眠。
- 每次安排重试都会追加持久化的 llm/retry / llm/retry-started 事件,所以常规重试 UI 和会话历史照常工作。
- 取消、回合结束、插件销毁都会中止当前等待。
- SERVER、TIMEOUT、TRANSPORT、EMPTY_RESPONSE 交给 dsh-llm-retry,沿用服务商自己的策略。
- CONTEXT_WINDOW_EXCEEDED、QUOTA、AUTH、INVALID_REQUEST 本插件永不重试。

安装

dsh plugin --profile desktop add github:Rinai-R/dsh-omp-retry

web 或自定义配置档请把 desktop 换成你的配置档名,然后重启 DSH。插件包会自行插入 omp-rate-limit-retry 行。

配置

默认值为 maxRetries: 10、floorMs: 30000、maxDelayMs: 300000。在配置档的 cordis.patch.yml 中覆盖该行:

- id: omp-rate-limit-retry
config:
maxRetries: 10
floorMs: 30000
maxDelayMs: 300000

maxRetries: 0 会禁用插件。插件的预算与服务商的 retryPolicy.maxRetries 相互独立:服务商保持默认的五次,限流仍能拿到十次尝试。

要让非 429 的失败快速重试,把服务商策略调到接近 OMP 的本地退避:

retryPolicy:
mode: normal
maxRetries: 10
retryableCodes:
- EMPTY_RESPONSE
- RATE_LIMIT
- SERVER
- TIMEOUT
- TRANSPORT
backoff:
initialDelayMs: 500
maxDelayMs: 8000
jitterRatio: 0.25

保留列表里的 RATE_LIMIT 是为了在移除本插件包时兜底;插件包启用期间,429 由它先接管。

兼容性

已在 DSH Desktop 0.2.1-rc.2 上测试。插件依赖:

- agent/request-error 瀑布流,
- llm-retry 会话投影(llmRetry),
- 内置重试执行器使用的 llm/retry 事件结构。

如果未来的 DSH 改动这些契约,插件可能需要更新;它会以失败关闭的方式处理,把请求交给下一个监听器。

开发

无需构建步骤,无运行时依赖:

npm test

限制

- 这不是 Ghostty,也不是通用重试框架:它只覆盖
- HTTP 429 限流。
- OMP 的模型/凭据回退链尚未实现。
- 服务商返回的 Retry-After 超过 maxDelayMs 时,不会等待到该时间。

许可证

MIT
预览分享卡片长什么样 ↓Rinai-R/dsh-omp-retry
分享 · DeepSeek Harness Hub
Rinai-R/dsh-omp-retry

为 429 限流提供更长间隔的退避重试

这是你的仓库?认领条目

回到顶部