前言¶
DeepSeek Harness (DSH) 目前处于预览阶段,其“一切皆插件”的架构允许开发者根据需求扩展功能。在进行智能体开发或日常使用时,网页搜索往往是一个核心功能。然而,使用单一 API 密钥容易遇到速率限制或额度耗尽的问题。为了解决单密钥带来的瓶颈,下面介绍一个多密钥管理插件,它通过 Tavily 的接口接管 DSH 的搜索与抓取能力。
是什么¶
dsh-tavily-pool 是由 stormbuf 维护的一个联网工具类插件。它为 DeepSeek Harness 提供了基于 Tavily 的网页搜索和页面抓取能力。该插件的核心价值在于管理一个密钥池,通过余额感知的轮转策略和自动故障转移机制,确保搜索请求的连续性和稳定性。
核心功能¶
插件实现了以下具体功能:
-
多密钥池管理
支持批量粘贴 API 密钥(每行一个)。在设置面板中,可以对密钥进行标签、启用/禁用、排序和批量删除操作。界面始终显示掩码后的密钥,仅通过设置面板输入,不读取环境变量或凭据服务。 -
余额感知轮转
插件优先使用余额最高的密钥。它支持无限密钥检测(当key.limit和account.plan_limit均为null时)。插件会定期通过官方/usage接口刷新余额数据,不维护本地记账,以避免因计费规则变更导致的误差。 -
自动故障转移与冷却机制
当某个密钥请求失败时,插件会自动切换到下一个可用密钥。同时,它尊重上游返回的Retry-After头部,对冷却中的密钥进行硬性排除,防止过载。 -
功能接管与配置
- 搜索接管:接管
web_search接口,可配置深度、结果上限、主题和生成答案开关。 - 抓取接管:默认关闭,开启后将
web_fetch映射到 Tavily 的/extract接口,返回纯文本而非 HTML。 - 独立开关:搜索和抓取功能可以分别独立切换回官方提供者。
- 搜索接管:接管
-
调用监控
记录每次调用的详细信息(密钥、端点、结果、耗时、request_id),并提供 14 天的调用计数图表。数据文件受条目数和 30 天窗口限制。 -
技术特性
纯 ESM 实现,零运行时依赖,无需构建步骤。
安装与启用¶
安装该插件需要 DeepSeek Harness 环境。
1、执行以下命令安装插件:
dsh plugin add dsh-tavily-pool
或者从 GitHub 安装(无需注册 npm 账户):
dsh plugin add github:stormbuf/dsh-tavily-pool
若需安装特定版本,请使用:
dsh plugin add github:stormbuf/dsh-tavily-pool#vX.Y.Z
2、安装完成后,重启 DSH。
3、进入 设置 → 插件 → dsh-tavily-pool,在设置面板中粘贴您的 Tavily API 密钥。
典型用法¶
启用插件后,搜索和抓取功能默认已接管。您可以通过设置面板调整搜索参数(如搜索深度、结果上限)。
- 切换提供者:如果您希望回退到官方搜索或抓取提供者,可以在设置面板中分别关闭对应的开关。
- 密钥管理:在密钥列表中,您可以随时添加新密钥、调整排序顺序(余额优先或手动顺序)或移除不再使用的密钥。
适用场景与注意¶
- 适用场景:需要高可用性网页搜索、拥有多个 Tavily API 密钥、需要通过抓取获取页面纯文本内容的开发者。
- 注意:由于 DeepSeek Harness 处于预览阶段,插件通过适配层隔离宿主特定知识。安装前建议查看源码并确认许可证(MIT)符合项目要求。插件仅通过 DSH 设置面板接受密钥输入,不依赖环境变量。
结语¶
该插件通过集中管理密钥池和智能调度策略,解决了单密钥搜索的稳定性问题。其零依赖和独立的配置面板也降低了集成难度。更多技术细节可参考其 GitHub 仓库。