前言¶
DeepSeek Harness (DSH) 通过插件机制扩展能力。内置的 web_search 工具适合快速查找,但面对需要详细来源、标题、链接及摘要的检索需求时,往往显得单薄。dsh-exa-search 插件通过接入 Exa 搜索 API,提供了更详细的网页搜索能力,适合技术调研和学术资料发现。
插件介绍¶
这是一个由 Kev-ZJY 维护的联网工具插件。它注册了 exa_search 工具,利用 Exa 的搜索能力,为模型提供更详细的网页检索结果。该插件不绑定特定模型或 GPU 运行时。
核心功能¶
- 使用 Exa
/searchAPI,支持auto、fast、instant、deep-lite、deep和deep-reasoning搜索类型。 - 支持模型传入
query、numResults和type参数。 - 对查询内容、结果数量、响应体大小以及模型可见输出设置上限。
- 支持请求取消和超时设置。
- API 密钥不会写入请求日志,配置项会被标记为敏感信息。
- 返回稳定的错误代码,便于日志分析和上层处理。
安装与启用¶
通过以下命令安装:
# 从 npm 安装
dsh plugin --profile web add dsh-exa-search
# 从 GitHub 安装
dsh plugin --profile web add github:Kev-ZJY/dsh-exa-search
# 从本地构建的包安装
dsh plugin --profile web add ./dsh-exa-search-0.1.0.tgz
配置¶
推荐使用环境变量配置 API 密钥:
export EXA_API_KEY="你的 Exa API 密钥"
也可以在 DSH 插件配置中填写 apiKey。插件配置优先级高于环境变量;密钥为空时才会回退到 EXA_API_KEY。
插件提供以下配置项(可通过 DSH 设置界面或 bundle patch 覆盖,修改后需重启对应 profile):
| 配置项 | 默认值 | 说明 |
|---|---|---|
apiKey |
空 | Exa API 密钥;为空时读取 EXA_API_KEY |
apiBaseUrl |
https://api.exa.ai |
Exa API 地址,仅支持 HTTP/HTTPS |
timeoutMs |
30000 |
单次请求超时,范围为 1–120000 毫秒 |
defaultType |
auto |
默认搜索类型 |
defaultNumResults |
5 |
未指定时的结果数量 |
maxNumResults |
25 |
单次最多请求的结果数量 |
maxOutputChars |
40000 |
返回给模型的文本上限 |
maxResponseChars |
1000000 |
Exa 响应体大小上限 |
典型用法¶
模型调用工具时传入以下参数:
{
"query": "DeepSeek Harness plugin development requirements",
"numResults": 8,
"type": "deep"
}
参数限制:
* query 不能为空
* numResults 必须是整数,且不能超过 maxNumResults
适用场景与注意¶
- 适用场景:需要深入研究、技术调研或学术资料发现;需要一次检索更多来源并保留标题、链接、作者、日期和摘要。
- 注意事项:
- 请勿把真实密钥提交到仓库、配置补丁或日志中。
- 修改配置后需要重启对应的 DSH profile,确保工具描述中的默认值和限制同步更新。
- 许可证:MIT
总结¶
dsh-exa-search 补强了 DSH 的联网能力,适合对搜索深度和结果质量有要求的场景。更多详情可参考 DSH 插件目录 或 GitHub 仓库。