前言¶
DeepSeek Harness(DSH)采用插件化架构,允许开发者扩展其功能。在开发智能体或多并发场景下,频繁调用 LLM 接口容易触发 API 速率限制,或导致资源过度占用。dsh-llm-rate-limiter 作为一个插件,旨在为每个模型提供独立的调用频率控制,解决这一问题。
插件简介¶
这是一个针对 DeepSeek Harness 的 LLM 调用限速插件。它由开发者 Leafyezi233 维护,遵循 MIT 许可证。插件支持按模型配置并发数、RPM(每分钟请求数)和突发流量限制,并提供队列或拒绝两种处理策略,同时内置交互式 GUI 配置面板和实时状态监控。
核心功能¶
- 按模型独立限流:可以为不同的
provider/model组合设置独立的并发上限、RPM 和突发大小。 - 双算法支持:提供令牌桶算法(允许突发)和滑动窗口算法(平滑且严格限制 RPM)。
- 队列与拒绝模式:当触发限流时,请求可选择在队列中等待,或直接被拒绝(可配合重试插件实现退避)。
- 交互式 GUI 配置:在 DSH 的设置界面中,可以直接展开“LLM 调用限速”卡片进行配置,无需编辑文件。
- 实时状态面板:展示实时计数器、进度条和事件日志,监控限流运行状况。
- 热重载:修改配置后无需重启 DSH 进程,设置即时生效。
- 全链路拦截:拦截所有智能体回合中的
llm/stream调用。
安装与启用¶
安装插件需要 DeepSeek Harness 的命令行工具。
- 在终端执行以下命令添加插件:
dsh plugin add <your-profile> @leaf233/dsh-llm-rate-limiter
其中 `<your-profile>` 替换为你的配置文件目录名称。
- 确保插件已添加到 profile 的
package.json依赖中,插件会自动识别cordis.patch.yml入口。
典型用法¶
配置方式分为通过图形界面和编辑配置文件两种。
通过 GUI 配置¶
- 启动 Web 界面:
dsh web。 - 进入 Settings → Plugins。
- 在 Official 分组中找到 LLM 调用限速 卡片。
- 点击展开,在表单中配置默认策略、模型特定覆盖规则以及限流行为。
通过文件配置¶
编辑 profile 目录下的 cordis.patch.yml 或 settings.yaml,在顶层定义 llm-rate-limiter 策略。示例如下:
llm-rate-limiter:
enabled: true
strategy: token-bucket # 算法选择:token-bucket 或 sliding-window
defaults:
maxConcurrent: 5 # 默认最大并发数
maxRpm: 60 # 默认每分钟请求数
burstSize: 10 # 令牌桶容量(仅 token-bucket)
refillRate: 1 # 令牌每秒补充数(仅 token-bucket)
models:
"deepseek/deepseek-chat":
maxConcurrent: 8
maxRpm: 120
"openai/gpt-4o":
maxConcurrent: 2
maxRpm: 10
burstSize: 3
onThrottled: queue # 触发限流时的行为:queue(排队)或 reject(拒绝)
maxQueueWaitMs: 60000 # 最大排队等待时间(毫秒)
注意事项与适用场景¶
- 版本依赖:当前版本(v0.3.0)要求 DSH 版本不低于
0.1.7-rc.1。如果在旧版本上使用,请锁定@leaf233/dsh-llm-rate-limiter@0.2.x。 - 依赖检查:如果框架的
connection.requestRejection不可用,插件将拒绝挂载,而不是发布未认证的路由。 - Git 安装限制:通过 GitHub URL 安装时,可能会因 pnpm 的
allowBuilds限制报错。此时需要在 profile 根目录的pnpm-workspace.yaml中添加该插件名称,然后重新运行安装命令。 - 生态定位:这是社区插件,与 DeepSeek / 幻方无官方从属关系,请自行审查源码与许可证。
总结¶
dsh-llm-rate-limiter 提供了一套从算法选择到实时监控的完整解决方案,适合需要在 DSH 环境下精细化控制 LLM 调用频率的开发者。通过其 GUI 面板,可以直观地调整策略和观察运行状态,降低开发调试成本。
插件主页:https://github.com/Leafyezi233/dsh-llm-rate-limiter
社区目录:https://www.skillhub.cn/plugins/Leafyezi233/dsh-llm-rate-limiter